一、Docker 常用命令大全

1、镜像管理命令

命令说明
docker images查看本地所有镜像
docker pull 镜像名:标签从仓库拉取镜像
docker build -t 镜像名:标签 .根据 Dockerfile 构建镜像
docker rmi 镜像ID/名称删除本地镜像
docker tag 原镜像 新镜像给镜像打标签
docker push 镜像名:标签推送镜像到仓库
docker save -o 文件.tar 镜像名导出镜像为 tar 文件
docker load -i 文件.tar从 tar 文件导入镜像
docker image prune清理悬空镜像

2、容器管理命令

命令说明
docker ps查看运行中的容器
docker ps -a查看所有容器(包括已停止)
docker run 镜像名创建并启动新容器
docker start 容器ID/名称启动已停止的容器
docker stop 容器ID/名称停止运行中的容器
docker restart 容器ID/名称重启容器
docker rm 容器ID/名称删除容器
docker rm -f 容器ID强制删除运行中的容器
docker container prune清理已停止的容器

3、容器操作命令

命令说明
docker exec -it 容器ID /bin/bash进入容器交互式终端
docker logs 容器ID/名称查看容器日志
docker logs -f 容器ID实时跟踪容器日志
docker top 容器ID查看容器内进程
docker inspect 容器ID查看容器详细信息
docker cp 文件 容器ID:路径复制文件到容器
docker cp 容器ID:路径 文件从容器复制文件到主机
docker stats查看容器资源使用情况
docker port 容器ID查看容器端口映射

4、网络与卷管理

网络命令

命令说明
docker network ls查看网络列表
docker network create 网络名创建自定义网络
docker network inspect 网络名查看网络详情
docker network rm 网络名删除网络

数据卷命令

命令说明
docker volume ls查看数据卷列表
docker volume create 卷名创建数据卷
docker volume inspect 卷名查看数据卷详情
docker volume rm 卷名删除数据卷
docker volume prune清理未使用的数据卷

5、系统信息命令

命令说明
docker version查看 Docker 版本信息
docker info查看 Docker 系统信息
docker system df查看 Docker 磁盘使用情况
docker system prune清理所有未使用的资源

6、常用运行示例

# 后台运行容器
docker run -d -p 80:80 nginx
​
# 指定容器名称
docker run -d --name my-nginx nginx
​
# 挂载数据卷
docker run -d -v /host/path:/container/path nginx
​
# 设置环境变量
docker run -d -e MYSQL_ROOT_PASSWORD=123456 mysql
​
# 限制资源
docker run -d --memory=512m --cpus=1.0 nginx
​
# 交互式运行
docker run -it ubuntu /bin/bash

7、清理命令(释放空间)

# 清理所有未使用的资源
docker system prune -a
​
# 清理停止的容器
docker container prune
​
# 清理悬空镜像
docker image prune
​
# 清理未使用的卷
docker volume prune
​
# 清理未使用的网络
docker network prune

实用小贴士

技巧说明
Ctrl+P, Ctrl+Q退出容器但不停止
docker exec -it进入运行中容器
--rm容器退出后自动删除
-d后台运行容器
-p 主机端口:容器端口端口映射
-v 主机路径:容器路径挂载卷
--name指定容器名称
--network指定网络

快速参考卡片

# 最常用组合
docker ps -a                    # 查看所有容器
docker images                   # 查看所有镜像
docker run -d -p 80:80 nginx    # 运行 nginx
docker exec -it 容器ID bash     # 进入容器
docker logs -f 容器ID           # 查看日志
docker stop/start 容器ID        # 停止/启动容器
docker rm/rmi ID                # 删除容器/镜像
如需了解某个命令的详细参数,可使用:

docker 命令 --help
# 例如:docker run --help

二、Docker 镜像构建

[root@docker-node1 ~]# docker pull centos:7
[root@docker-node1 ~]# cd docker/
​
[root@docker-node1 docker]# vim Dockerfile
FROM centos:7
LABEL Creater=lee
RUN ["/bin/bash", "-c",  "rm -fr /etc/yum.repos.d/*"]
COPY centos7.repo /etc/yum.repos.d/
​
[root@docker-node1 docker]# vim centos7.repo
[centos7]
name=centos
baseurl=https://mirrors.aliyun.com/centos-vault/7.9.2009/os/x86_64/
gpgcheck=0
​
​
[root@docker-node1 docker]# docker build -t centos-7:repo .
[root@docker-node1 docker]# docker run -it --name centos centos-7:repo /bin/bash

三、Docker Hub 使用

# 查看本地镜像
docker images

# 假设看到镜像名为 myapp,标签为 v1.0

# 打标签
docker tag myapp:v1.0 dhbjwys/myapp:v1.0

# 推送
docker push dhbjwys/myapp:v1.0

更多推荐