Ubuntu 24.04 完整Docker安装指南:从零配置到实战命令大全_ubuntu24.04安装docker
文章目录
1. 安装 Docker
官方安装文档
以下以 Ubuntu24.04 为例:
# 添加 Docker 仓库的 GPG 密钥sudo apt-get updatesudo apt-get install ca-certificates curlsudo install -m 0755 -d /etc/apt/keyringssudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.ascsudo chmod a+r /etc/apt/keyrings/docker.asc# 添加 Docker 仓库到 apt 源echo \\ \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo \"${UBUNTU_CODENAME:-$VERSION_CODENAME}\") stable\" | \\ sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullsudo apt-get update# 安装 Docker 以及 Docker Composesudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 验证安装# 可能出现以下提示,需要先配置 Docker 镜像加速器# Unable to find image \'hello-world:latest\' locally# docker: Error response from daemon: Get \"https://registry-1.docker.io/v2/\": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)sudo docker run hello-world
2. 配置 Docker 镜像加速器
2.1 配置 Docker 镜像源
sudo tee /etc/docker/daemon.json <<-\'EOF\'{ \"registry-mirrors\": [ \"https://docker.m.daocloud.io\", \"https://mirror.baidubce.com\", \"http://hub-mirror.c.163.com\", \"https://docker.mirrors.ustc.edu.cn\", \"https://registry.docker-cn.com\" ], \"log-driver\": \"json-file\", \"log-opts\": { \"max-size\": \"10m\", \"max-file\": \"3\" }}EOF
注:
log-driver:指定Docker容器使用Json文件作为日志存储格式log-opts:指定日志文件大小和数量,超过限制时自动清理max-size:单个日志文件最大大小(支持 k(千字节)、m(兆字节)、g(千兆字节))max-file:保留的日志文件数量
2.2 重启 Docker 服务
sudo systemctl daemon-reloadsudo systemctl restart docker
3. Docker 常用命令
3.1 Docker 常用命令速查表
3.1.1 容器管理
docker run -it --name my_container image:tagdocker run -d --name my_container image:tagdocker start/stop/restart my_containerdocker exec -it my_container /bin/bashdocker rm my_containerdocker rm -f my_containerdocker psdocker ps -adocker logs my_containerdocker logs -f my_containertail -f)3.1.2 镜像管理
docker pull image:tagdocker imagesdocker rmi image:tagdocker build -t my_image:tag .Dockerfile)docker save -o my_image.tar image:tag.tar 文件docker load -i my_image.tar.tar 文件导入镜像3.1.3 网络管理
docker network lsdocker network create my_networkdocker network inspect my_networkdocker run --network=my_network ...3.1.4 数据卷管理
docker volume lsdocker volume create my_volumedocker run -v my_volume:/path/in/container ...docker run -v /host/path:/container/path ...3.1.5 容器资源管理
docker statsdocker top my_containerdocker update --memory 512M my_container3.1.6 Docker Compose(容器编排)
docker-compose up -ddocker-compose.yml 定义的服务docker-compose downdocker-compose logs -fdocker-compose ps3.1.7 清理与维护
docker system dfdocker system prunedocker system prune -a3.2 常用组合命令
# 删除所有停止的容器docker container prune# 删除所有未使用的镜像docker image prune -a# 查看容器 IP 地址docker inspect -f \'{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}\' my_container# 批量停止所有容器docker stop $(docker ps -aq)# 批量删除所有容器docker rm $(docker ps -aq)
3.3 常见问题
3.3.1 如何修改容器配置?
# 修改容器配置(如端口映射)docker update --restart=always my_containerdocker update --publish-add 8080:80 my_container
3.3.2 如何查看容器占用的端口?
docker port my_container
3.3.3 如何查看 Docker 版本?
docker --versiondocker info


