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 # 跟着日志(一直更新)
测试
说明:
启动运行一个 centos 容器
查看正在运行的容器信息
查看日志的帮助文档
通过正在运行日志的 ID 查看它最新的10条日志
问题:没有日志,咋办???
模拟日志,编写一段简单的 shell 程序,如下:
while true;do echo 6666;sleep 1;done
再次测试
说明:
后台启动运行一个 centos 容器,-c 参数后边为shell命令,此时有程序运行(循环输出“6666”),容器不会自动停止
查看正在运行的容器信息
通过正在运行日志的 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 文件,再次查看该目录下的所有文件,发现拷贝成功!
注:查看当前运行的容器,发现没有容器正在运行可知:不管容器是否在运行,只有容器存在,就可以从中拷贝文件到主机。
如果对您有帮助,赏口饭吃❤谢谢老板❤
| |