Docker 的常用命令 - 2

1 后台启动容器

 docker run -d 镜像名    # 后台启动容器

测试 

说明:

使用后台启动容器命令,查看当前正在运行的容器发现为空,再查看所有运行过的容器,发现刚刚后台启动的容器已经停止退出了。

问题:为什么后台启动的容器停止了?

常见的坑,docker容器使用后台运行,就必须要有要一个前台进程(比如:-it,使用交互式),否则docker发现没有应用(没有提供服务),就会自动停止

2 查看日志

docker logs --help

参书说明:

-t  # 显示日志信息

-f  # 一直更新

--tail number  # 需要显示日志条数

docker logs -t --tail n 容器id  # 查看n行日志

docker logs -tf 容器id  # 跟着日志(一直更新)

测试 

说明:

  1. 启动运行一个 centos 容器

  2. 查看正在运行的容器信息

  3. 查看日志的帮助文档

  4. 通过正在运行日志的 ID 查看它最新的10条日志

问题:没有日志,咋办???

模拟日志,编写一段简单的 shell 程序,如下:

while true;do echo 6666;sleep 1;done

再次测试

说明:

  1. 后台启动运行一个 centos 容器,-c 参数后边为shell命令,此时有程序运行(循环输出“6666”),容器不会自动停止

  2. 查看正在运行的容器信息

  3. 通过正在运行日志的 ID 查看它最新的10条日志

3 查看容器中进程信息

docker top 容器id

4 查看镜像的元数据

docker inspect 容器id

5 进入当前正在运行的容器

通常容器都是使用后台方式运行的,需要进入容器,修改一些配置,两种命令方式:

命令一:docker exec -it 容器id /bin/bash

命令二:docker attach 容器id

首先查看正在运行的 docker ID ,然后通过命令一的方式进入正在运行的容器,通过 ls 命令查看当前容器下目录

 

首先查看正在运行的 docker ID ,然后通过命令二的方式进入正在运行的容器,发现程序正在运行(一直输出“6666”)

区别

docker exec  # 进入当前容器后开启一个新的终端,可以在里面操作。(常用)

docker attach  # 进入容器正在执行的终端

6 从容器内拷贝到主机上 

docker cp 容器id:容器内路径 主机目的路径

首先查看服务器中存在的镜像,然后选择 centos 镜像进行启动,在 /home/ 路径下创建 apollo.py 文件,退出容器

查看服务器当前目录下的所有文件,然后从刚才的容器中拷贝新创建的 apollo.py 文件,再次查看该目录下的所有文件,发现拷贝成功!

注:查看当前运行的容器,发现没有容器正在运行可知:不管容器是否在运行,只有容器存在,就可以从中拷贝文件到主机。


如果对您有帮助,赏口饭吃❤谢谢老板❤ 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值