首页 > 其他 > 详细

3、docker常用命令

时间:2019-11-16 09:10:41      阅读:103      评论:0      收藏:0      [点我收藏+]

1、帮助命令

1、docker version

技术分享图片

2、docker info

技术分享图片

3、重点掌握:docker --help 

技术分享图片

2、镜像命令

1、docker,镜像,容器关系

 技术分享图片

2、docker images

(1)列出本地主机上的镜像

技术分享图片

# 各个选项说明:
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小

 同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像

(2)OPTIONS说明

-a :列出本地所有的镜像(含中间映像层)
-q :只显示镜像ID。
--digests :显示镜像的摘要信息
--no-trunc :显示完整的镜像信息

 千层饼

技术分享图片

 

 

 唯一主键

技术分享图片

 

 

 技术分享图片

 

 

 技术分享图片

 

 

 3、docker search  某个XXX镜像名字

(1)dockerhub

网站
https://hub.docker.com

 

 

 技术分享图片

一一对应

技术分享图片

(2)docker search [OPTIONS] 镜像名字

# OPTIONS说明:
--no-trunc : 显示完整的镜像描述
-s : 列出收藏数不小于指定值的镜像。
--automated : 只列出 automated build类型的镜像;
docker pull 某个XXX镜像名字

 

 

 

 点赞数超过30的

技术分享图片

显示详细信息

技术分享图片

 

 

 4、docker pull 某个镜像名字

docker pull 镜像名字[:TAG]

 

技术分享图片

 docker pull tomcat

千层饼

 技术分享图片

技术分享图片

5、docker rmi 某个XXX镜像名字ID

(1)删除镜像

docker rmi hello-world

正在使用

技术分享图片

(2)删除单个:docker rmi  -f 镜像ID

强制删除  docker rmi -f hello-world

删除了2层

技术分享图片

 

tomcat 400M ???

技术分享图片

 

 

 

(3)删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG 

docker pull hello-world
docker pull nginx

docker images
docker rmi -f hello-world nginx
docker images

(4)删除全部
docker rmi -f $(docker images -qa)

等价于

 

 

技术分享图片

 

 

 

 docker images -qa  # 过往的和全部的

技术分享图片

docker rmi  -f  $(docker images -qa)

6、思考

结合我们Git的学习心得,大家猜猜是否会有 docker commit /docker push??

 

 

 

 

3、容器命令

有镜像才能创建容器,这是根本前提(下载一个CentOS镜像演示)

docker pull centos

docker images

才200M

技术分享图片

 

 

 技术分享图片

 

 

 技术分享图片

 

 

 

新建并启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
OPTIONS说明
启动交互式容器

.................

 

docker images

docker run -it xxxx

-i 交互

-t 伪终端

以镜像xxx,生成容器,并进入容器centos

ls

pwd

ps -ef

 

列出当前所有正在运行的容器

鲸鱼背上有几个集装箱

docker ps [OPTIONS]
OPTIONS说明

。。。。。。。。。。。。

docker ps -l   # 上一次

docker ps -a  # 过往的

docker ps -n 3 # 上3个

docker ps -ql  # 只显示容器编号,批量删除容器

 

 

docker ps 

互相对比下

Names 随机分配的

 

 

退出容器
两种退出方式
exit
容器停止退出

从容器里面退出

docker ps

无docker运行

 

 

docker images centos

docker run -it --name mycentos0111 centos

 

查看运行的容器 docker ps

name 就是我指定的

 

 


ctrl+P+Q
容器不停止退出

离开不关闭,后台运行

在容器内   ctrl + p + q

桌面上  docker ps

    状态 up

 

docker ps -n 2

 

----------------

启动容器
docker start 容器ID或者容器名

docker start xxxx

桌面查看 docker ps

 

重启容器
docker restart 容器ID或者容器名

 

 

停止容器
docker stop 容器ID或者容器名

docker  stop xxx   慢慢的熄火,正常的关机

docker ps

 

强制停止容器
docker kill 容器ID或者容器名

docker kill xxx    拔掉电源,


--------------------------------------

删除已停止的容器
docker rm 容器ID

docker ps -n 2

docker rm xxxx

docker ps -n 2

 

强制删除

docker rm -f xxx

 

一次性删除多个容器
docker rm -f $(docker ps -a -q)

docker ps -q -a  # 过往的容器,全部的

 

docker ps -a -q | xargs docker rm

上1 个的值传给下一个命令

技术分享图片

 

 

 

-------------------------------------

重要
启动守护式容器
docker run -d 容器名
查看容器日志
docker logs -f -t --tail 容器ID
* -t 是加入时间戳
* -f 跟随最新的日志打印
* --tail 数字 显示最后多少条
查看容器内运行的进程
docker top 容器ID
查看容器内部细节
docker inspect 容器ID
进入正在运行的容器并以命令行交互
docker exec -it 容器ID bashShell
重新进入docker attach 容器ID
上述两个区别
attach 直接进入容器启动命令的终端,不会启动新的进程
exec 是在容器中打开新的终端,并且可以启动新的进程
从容器内拷贝文件到主机上
docker cp 容器ID:容器内路径 目的主机路径

 

 

 

4、小总结

 

3、docker常用命令

原文:https://www.cnblogs.com/venicid/p/11870332.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!