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:tag
docker run -d --name my_container image:tag
docker start/stop/restart my_container
docker exec -it my_container /bin/bash
docker rm my_container
docker rm -f my_container
docker ps
docker ps -a
docker logs my_container
docker logs -f my_container
tail -f
)3.1.2 镜像管理
docker pull image:tag
docker images
docker rmi image:tag
docker 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 ls
docker network create my_network
docker network inspect my_network
docker run --network=my_network ...
3.1.4 数据卷管理
docker volume ls
docker volume create my_volume
docker run -v my_volume:/path/in/container ...
docker run -v /host/path:/container/path ...
3.1.5 容器资源管理
docker stats
docker top my_container
docker update --memory 512M my_container
3.1.6 Docker Compose(容器编排)
docker-compose up -d
docker-compose.yml
定义的服务docker-compose down
docker-compose logs -f
docker-compose ps
3.1.7 清理与维护
docker system df
docker system prune
docker system prune -a
3.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