3、docker常用命令

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、小总结

猜你喜欢

转载自www.cnblogs.com/venicid/p/11870332.html