Docker常用命令

写在前面

以下内容来自
Docker快速手上视频教程(无废话版) https://www.bilibili.com/video/BV1oE411k7rS?p=14
这里主要是对视频中讲到的命令做一个总结。

docker常用命令
(如果提示权限不足,需要通过增加 sudo 来增加管理员权限)

一、Docker基本命令

命令功能
systemctl start docker启动 Docker
systemctl stop docker停止 Docker
systemctl restart docker重启 Docker
systemctl enable docker开机启动 Docker
docker info查看 Docker 信息
docker --help查看 Docker 帮助文档
docker version查看 Docker 版本信息

二、Docker镜像操作命令

命令功能可选参数举例说明
docker images列出本机所有的镜像-a -q -qa --digests --no-trunc
docker search 镜像名称搜索某个 Docker 镜像docker search tomcat
docker pull 镜像名称[:TAG]下载某个 Docker 镜像,TAG选填,默认是latestdocker pull tomcat
docker rmi 镜像名称[:TAG]删除某个 Docker 镜像,TAG选填,默认是latest-f 强制删除docker rmi -f tomcat
docker rmi -f $(docker images -qa)删除全部 Docker 镜像docker rmi -f $(docker images -qa)

三、Docker容器操作命令

命令功能可选参数举例说明
docker run -it --name 别名 镜像ID创建容器别名并启动容器-i : 以交互式模式运行容器,通常与 -t 同时使用;
-t : 为容器重新分配一个伪输入的终端,通常与 -i 同时使用
docker run -it --name mycentos centos:7
docker ps [选项]列出容器-a 查看所有容器
-n * 查看最近创建的*个容器
-f status=exited 查看停止的容器
docker ps 查看正在运行的容器
docker ps -a 查看所有的容器
docker ps -n 2 查看最近创建的2个容器
docker ps -f status=exited 查看已经停止的容器
exit 或者 Ctrl+p+qexit 容器停止并退出容器虚拟终端
Ctrl+p+q 容器不停止但会退出容器虚拟终端
exit
Ctrl+p+q
docker attach 容器ID或者容器名进入容器docker attach b61c81a79c77
docker start 容器ID或者容器名启动容器docker start b61c81a79c77
docker restart 容器ID或者容器名重启容器docker restart b61c81a79c77
docker stop 容器ID或者容器名停止容器(速度较慢)docker stop b61c81a79c77
docker kill 容器ID或者容器名暴力删除,直接杀掉进程(速度很快,但不推荐)docker kill b61c81a79c77
docker rm 容器ID或者容器名删除容器-f 强制删除(加上 -f 可以删除正在运行的容器)docker rm -f b61c81a79c77

docker rm -f 容器ID1 容器ID2 (中间空格隔开) 删除多个容器

docker rm -f $(docker ps -qa) 删除所有容器

四、Docker容器操作进阶命令

命令功能可选参数举例说明
docker run -di --name 别名 镜像ID守护式方式创建容器别名并启动容器,不会进入到容器内-i : 以交互式模式运行容器,通常与 -t 同时使用;
-t : 为容器重新分配一个伪输入的终端,通常与 -i 同时使用
-d : 后台运行容器,并返回容器ID
docker run -di --name mycentos 8652b9f0cb4c
docker run -it --name 别名 镜像ID /bin/bash (这个命令用得不多)创建容器别名并启动容器,并执行 /bin/bash 命令-i : 以交互式模式运行容器,通常与 -t 同时使用;
-t : 为容器重新分配一个伪输入的终端,通常与 -i 同时使用
docker run -it --name mycentos 8652b9f0cb4c /bin/bash
docker exec -it 容器名称/容器ID 执行的命令直接在容器内执行命令,执行完返回宿主主机终端docker exec -it a43b4d79c445 ls -l /sys 在容器内执行 ls -l /sys
docker exec -it a43b4d79c445 /bin/bash 在容器内执行 /bin/bash ,也就是进入到了容器内部终端
docker logs 容器名称/容器ID查看容器日志docker logs a43b4d79c445
docker top 容器名称/容器ID查看容器进程docker top a43b4d79c445
docker cp 需要拷贝的文件或者目录 容器名称/容器ID:容器目录宿主主机文件拷贝到容器内docker cp /home/wong/test_docker/ a43b4d79c445:/tmp
docker cp 容器名称/容器ID:容器目录 宿主机目录容器内拷贝到宿主主机文件sudo docker cp mycentos01:/tmp/test_docker /home/wong/Desktop/

五、Docker容器宿主机端口映射命令

命令功能可选参数举例说明
docker run -it -p 主机(宿主)端口:容器端口 镜像名称/镜像ID宿主机端口映射-p: 指定端口映射,格式:主机端口:容器端口
-P: 随机端口映射,容器内部端口映射到主机端口
docker run -it -p 8888:8080 tomcat 通过本机访问 http:://localhost:8888 就可以访问内部的应用
docker exec -it 容器名称/容器ID /bin/bash进入容器执行命令docker exec -it a43b4d79c445 /bin/bash 在容器内执行 /bin/bash ,也就是进入到了容器内部终端
docker commit -a=‘作者’ -m=‘备注’ 正在运行的容器ID 新镜像名称[:TAG]提交运行时容器成为镜像docker commit -a=‘wong’ -m=‘tomcat without logo’ 3b80ae63ec54 mynewtomcat
docker push 镜像名称:版本名称推送镜像到dockerpub服务器docker push mynewtomcat:1.1 把自己的镜像推送到服务器
docker run -it -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名/镜像IDdocker 容器目录挂载:
我们可以在创建容器的时候,将宿主机的目录与容器的目录进行映射,这样我们就可以实现宿主机和容器目录数据的自动同步。我们通过容器目录挂载,能够实现代码上传,配置修改,日志同步等需求。
挂载单个目录: docker run -it -v /home/wong/hData:/cData 8652b9f0cb4c
挂载多个目录: docker run -it -v /home/wong/aData:/aData -v /home/wong/bData:/bData 8652b9f0cb4c
docker run -it -v /宿主机目录:/容器目录:ro 镜像名/镜像IDdocker 容器目录挂载,只读,不能修改
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值