Skip to content

Docker 常用命令备忘

🎋 Docker 安装

sh
# 官方安装升级脚本
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

docker --version # 查看版本
docker --help    # 查看帮助

🎋 Linux 设置自启动

sh

systemctl list-units --type=service     # 查看服务
systemctl start docker                  # 启动 Docker
systemctl restart docker                # 重启 Docker
systemctl list-unit-files | grep docker # 查看是否开机启动
systemctl enable docker.service         # 设置开机自启动
systemctl disable docker.service        # 取消开机自启动
service docker status                   # 查看 docker 运行状态

🎋 Docker 镜像操作

sh
docker pull [镜像名]                      # 从仓库拉取镜像
docker build -t [镜像名:tag] [路径]        # 根据 Dockerfile 构建镜像
docker images                            # 查看本地镜像列表
docker rmi [镜像ID或镜像名]                # 删除镜像
docker tag [镜像ID或镜像名] [新镜像名:tag]  # 给镜像打标签
docker push [镜像名:tag]                  # 推送镜像到远程仓库
docker image prune                       # 删除未使用的镜像(可加 -a 删除所有未使用的镜像)
docker history [镜像名]                   # 查看镜像历史层信息
docker inspect [镜像名]                   # 查看镜像详细信息

🎋 docker 容器操作

sh
docker run -it --name [容器名] [镜像名]  # 启动一个容器并进入交互模式
docker run -d --name [容器名] [镜像名]   # 后台启动容器
docker ps                              # 查看运行中的容器
docker ps -a                           # 查看所有容器,包括已停止的
docker stop [容器ID或名]                # 停止容器
docker start [容器ID或名]               # 启动已停止的容器
docker restart [容器ID或名]             # 重启容器
docker rm [容器ID或名]                  # 删除容器(容器必须停止)
docker exec -it [容器ID或名] bash       # 进入正在运行的容器
docker logs [容器ID或名]                # 查看容器日志
docker stats                           # 查看容器实时资源使用情况
docker inspect [容器ID或名]             # 查看容器详细信息
docker commit [容器ID] [新镜像名:tag]    # 将容器当前状态保存为新镜像
docker cp [容器ID]:/路径 /本地路径        # 从容器拷贝文件到本地(反之亦可)
docker rm -f $(docker ps -aq)          # 一键删除所有容器
docker rmi -f $(docker images -aq)     # 一键删除所有镜像

🎋 dokcer 一键清理命令

sh
docker rm -f $(docker ps -aq)         # 一键删除所有容器
docker rmi -f $(docker images -aq)    # 一键删除所有镜像
docker system prune -a                # 删除所有未使用的容器、网络、镜像(慎用)

🎋 Docker Compose

sh
docker compose up                # 启动 docker-compose.yml 中的服务
docker compose up -d             # 后台启动服务
docker compose down              # 停止并删除容器、网络、卷(保留镜像)
docker compose down --rmi all    # 停止并删除容器、网络、卷、镜像
docker compose build             # 构建或重建服务镜像
docker compose stop [服务名]      # 停止指定服务
docker compose start [服务名]     # 启动已停止的服务
docker compose restart [服务名]   # 重启指定服务
docker compose ps                # 查看服务运行状态
docker compose logs              # 查看所有服务日志
docker compose logs -f           # 实时跟踪日志
docker compose logs [服务名]      # 查看指定服务日志
docker compose exec [服务名] bash # 进入指定服务容器交互终端
docker compose config            # 查看组合服务的最终配置

🎋 Compose 小技巧

sh
docker compose up --build                    # 启动服务前先构建镜像
docker compose up -d --remove-orphans        # 启动服务并删除孤立容器
docker compose down -v                       # 停止服务并删除关联卷
docker compose run --rm [服务名] bash         # 临时运行一个服务容器并进入 bash,运行完自动删除
docker compose pull                          # 拉取远程镜像
docker compose images                        # 查看 Compose 管理的服务镜像
docker compose stop && docker compose rm -v  # 停止并删除所有服务容器及卷

🎋 compose 创建 mysql

sh
cd /home/
mkdir mysql
cd mysql
vi docker-compose.yml

# Use root/example as user/password credentials
version: '3.1'

services:

  db:
    image: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example
# (this is just an example, not intended to be a production configuration)

docker compose up -d # 运行
docker ps | grep mysql

docker compose down # 删除移除

最后更新于: