容器在后台运行(坑!!)
docker run -d 镜像名[root@Box vulhub]# docker run -itd centos /bin/bashbec648f8472745ee97e95841640c978a3e290a766f6921f8f86e7f95bb2c2a2f# 问题docker ps ,发现 无容器运行# 坑:docker 容器使用后台运行,就需要一个前台进程,docker 未发现应用,就会停止
查看容器日志信息
# 命令:docker logs -ft --tail 10 容器ID# 让容器执行shell脚本[root@Box vulhub]# docker run -d centos /bin/bash -c "while true;do echo hello; sleep 2;done"# 查看容器ID[root@Box vulhub]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES2144f058ce21 centos "/bin/bash -c 'while…" 11 seconds ago Up 8 seconds awesome_bhabha# 查看日志信息[root@Box vulhub]# docker logs -ft --tail 10 2144f058ce212021-03-06T16:28:12.219624265Z hello2021-03-06T16:28:14.228283755Z hello2021-03-06T16:28:16.240041410Z hello2021-03-06T16:28:18.249025614Z hello2021-03-06T16:28:20.259567189Z hello2021-03-06T16:28:22.267834912Z hello2021-03-06T16:28:24.271062377Z hello2021-03-06T16:28:26.273974644Z hello2021-03-06T16:28:28.277808170Z hello....# 选项解释-f,--follow跟随日志输出--since string显示自时间戳记(例如2013-01-02T13:23:37)或相对时间戳记以来的日志(例如42m,持续42分钟)--tail字符串从日志末尾开始显示的行数(默认为“全部”)-t,--timestamps显示时间戳--until string在时间戳(例如2013-01-02T13:23:37)或相对(例如42m持续42分钟)之前显示日志
查看容器内部的进程信息
# 命令docker top 容器ID[root@Box vulhub]# docker top 8a984e8f009fUID PID PPID C STIME TTY TIME CMDroot 20082 20065 0 00:13 pts/0 00:00:00 /bin/bash
查看镜像的元数据
# 命令docker inspect 容器ID[root@Box vulhub]# docker inspect 8a984e8f009f
进入当前正在运行的容器
# 经常需要进入容器修改配置# 命令一docker exec -it 容器ID bashshell[root@Box vulhub]# docker exec -it 8a984e8f009f /bin/bash# 命令二docker attach 容器ID[root@Box vulhub]# docker attach 4a184cfcfc88# 比较# docker exec 会创建一个新的终端# docker attach #进入正在与运行的终端
从容器内拷贝文件到宿主机
# 命令docker cp 容器ID:dir dir[root@Box ~]# docker cp 4a184cfcfc88:/test.java .
commit 镜像
docker commint 提交容器生成一个新的副本# 与git命令类似docker commit -a="作者" -m="提交的信息" 容器ID 镜像名:[TAG]e.g.docker commit -a="Box" -m="add webapps app" 9e48b4ffe492 tomcat2:1.0
