Docker基础六(20200317自学docker尚硅谷2018年b站)--docker的命令
1、帮助命令
(1)docker version
(2)docker info
(3)docker --help,查看帮助,类似于linux的man命令
2、镜像命令
(1)docker images 列出本地主机镜像
(2)docker search
(3)docker pull
(4)docker rmi
删除和强制删除
3、容器命令
再docker里面运行centos
(1)docker run
https://blog.****.net/J080624/article/details/104276720
(2)docker ps
docker ps -l
docker ps -a
docker ps -n 3
docker ps -lq
(3)退出容器
a、exit是关闭容器并退出
输入exit后()
再
docker ps就看不见了,因为是看正在正在运行的容器
b、容器不停止退出
(4)启动容器
docker start 容器d或容器名字
(5)重启容器
docker restart 容器d或容器名字
(6)停止容器,正常关机
docker stop 容器id或容器名字
(7)拔插头,强制关闭
(8)删除已停止的容器
docker rm 容器id
注意rmi就是删除镜像image,-f是强制,可删除运行中
一次删除多个容器
xargs是linux可变参数
|是linux的管道符,前面的结果集传到xargs里面做实参
接下来以下命令非常重要
(9)启动守护式容器
docker run -d
但是发现docker ps没有进程???????WTF????
docker机制问题
(9)查看容器日志
docker logs -f -t --tail 容器id
/bin/sh -c “while true;do echo hello zzyy;sleep 2;done”
是linux指令高级部分shell脚本编程,标识运行了以后你bin 的shell循环打印while true;do echo hello zzyy;sleep 2;done,每隔两秒钟循环打印,要把输出打印到控制台上面,表示前台有一个响应,就算你docker -d 后台启动,也不会自我关闭这个容器
持续看docker日志
(10)查看容器内进程
docker top 容器id
(11)查看容器内细节
docker inspect 容器id
docker镜像是一层套一层的同心圆
(12)进入正在运行的容器并以命令行交互
当前正在运行一个
(a)docker attach 容器id
到容器里面默认的根路径
https://blog.51cto.com/4794397/2387212
如果容器是从镜像run的时候以守护进程-d运行的,就不能用attach再次进入该镜像
可以用docker exec -it containerID /bin/bash方式进入容器
(b)不需要进入容器就执行后续命令
docker exec -t 容器id 命令
下例子是ls -l /temp
查看文件
好处是隔山打牛,进去了容器里面做了某件事然后在返回出来拿给宿主机
(13)从容器内拷贝文件到宿主机上
持久化数据,比如docker上面有个redis容器,我想把里面数据持久化并且关了改redis容器
要将集装箱从鲸鱼背上卸载忍了,但是要保留集装箱里面的数据
拷贝容器这个yum.log
4、总结