Docker 的常用命令
四、常用其他命令
1、后台启动容器
# 命令 docker run -d 镜像名 [root@cloud /]# docker run -d centos # 问题:使用 docker ps 命令时,发现 centos 停止了 # 常见的坑:docker 容器使用后台运行时,就必须要有一个前台进程,docker 发现没有应用时,就会自动停止 # 比如要安装 nginx,使用 docker 安装后,容器启动,发现自己没有提供服务,就会立刻停止,就是没有程序了
2、查看日志
# 命令 docker logs -f -t --tail 容器 # 查看日志 # 自定义 shell 脚本 [root@cloud /]# docker run -d centos /bin/bash -c "for((i=1;i<=10;i++));do echo $i;done" # 显示日志 -tf # 显示所有日志 --tail number # 显示日志条数 [root@cloud /]# docker logs -tf --tail 10 1e1b41363f4c 或 [root@cloud /]# docker logs -f -t --tail 10 1e1b41363f4c [root@cloud /]# docker logs -tf 1e1b41363f4c
3、查看容器中进程信息
# 命令 docker top 容器 id [root@cloud /]# docker top 0560c182ce9a UID PID PPID C STIME TTY TIME CMD root 23903 23883 0 16:07 pts/0 00:00:00 /bin/bash
4、查看镜像的元数据
# 命令 docker inspect 容器 id [root@cloud /]# docker inspect 0560c182ce9a
5、进入当前正在运行的容器
# 我们通常容器都是使用后台方式运行的,需要进入容器,修改一些配置 # 方式一 # 命令 docker exec -it 容器 id bashShell [root@cloud /]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0560c182ce9a centos "/bin/bash" 25 minutes ago Up 25 minutes elated_dijkstra [root@cloud /]# docker exec -it 0560c182ce9a /bin/bash [root@0560c182ce9a /]# ls bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var [root@0560c182ce9a /]# ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 08:07 pts/0 00:00:00 /bin/bash root 18 0 0 08:33 pts/1 00:00:00 /bin/bash root 33 18 0 08:33 pts/1 00:00:00 ps -ef # 方式二 # 命令 docker attach 容器 id [root@cloud /]# docker attach 0560c182ce9a # docker exec # 进入容器后开启一个新的终端,可以在里面操作(常用) # docker attach # 进入容器正在执行的终端,不会启动新的进程!
6、从容器内拷贝文件到主机上
# 命令 docker cp 容器 id:容器内路径 目的的主机路径 # 查看当前主机目录下 [root@cloud home]# ls www wwwlogs wwwroot [root@cloud /]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f7c524a3f26f centos "/bin/bash" 20 seconds ago Up 18 seconds bold_lichterman # 进入 docker 容器内部 [root@cloud /]# docker attach f7c524a3f26f [root@f7c524a3f26f /]# cd /home [root@f7c524a3f26f home]# ls # 在容器内新建文件 [root@f7c524a3f26f home]# touch test.php [root@f7c524a3f26f home]# ls test.php [root@f7c524a3f26f home]# exit exit [root@cloud /]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES [root@cloud /]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f7c524a3f26f centos "/bin/bash" 2 minutes ago Exited (0) 4 seconds ago bold_lichterman # 将容器内新建的文件拷贝到主机上 [root@cloud /]# docker cp f7c524a3f26f:/home/test.php /home [root@cloud /]# cd /home/ [root@cloud home]# ls home test.php www wwwlogs wwwroot
分享:Docker学习视频地址:【狂神说 Java】Docker 最新超详细版教程通俗易懂