容器(三) 创建后台守护式容器 (问题):使用docker run -d ubuntu命令启动后台模式的容器ubuntu,然后用docker ps 查询提示没有找到运行的容器
Docker容器后台运行就必须有一个前台进程,不然容器没事做,会自杀
解决方法:将运行的程序以前台进程的方式运行 常见方式:命令行模式
查看容器日志 docker logs 容器id
查看容器的进程 docker top 容器id
查看容器内部细节 docker inspect 容器id
重新进入 进入正在运行的容器并以命令行交互
docker exec -it 容器id bashShell
重新进入
docker attach 容器id
(区别) attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止 exec是在容器中打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器的停止
1 2 3 4 5 6 7 8 9 10 [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAME S562278524cda ubuntu "bash" 20 minutes ago Up 20 minutes loving_dewdn eycdee90a8c77d ubuntu "bash" 45 minutes ago Up 15 minutes ubuntu [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]# docker ps -a -q | xargs docker rm -f562278524cdacdee90a8c77d [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]#shell
从容器内拷贝文件到主机 docker cp 容器id:容器地址 主机地址
1 2 3 4 5 6 7 8 9 [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]# docker cp 26191ecfb227:/tmp/a.txt /opt/ab.txt [root@iZ8vbfaek3x3ogtpxnpnwfZ ~]# cd /opt/ [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# ll total 8 -rw-r--r-- 1 root root 0 Apr 27 15:13 ab.txt drwx--x--x 4 root root 4096 Dec 28 16:17 containerd drwxr-xr-x 4 root root 4096 Dec 8 16:49 downfile [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]#
导入和导出容器 1 2 3 4 5 6 7 8 9 10 11 12 [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 26191ecfb227 ubuntu "bash" 7 minutes ago Up 7 minutes quirky_jemison [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# docker export 26191ecfb227 > abcd.tar [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# ll total 73408 -rw-r--r-- 1 root root 75158016 Apr 27 15:21 abcd.tar -rw-r--r-- 1 root root 0 Apr 27 15:13 ab.txt drwx--x--x 4 root root 4096 Dec 28 16:17 containerd drwxr-xr-x 4 root root 4096 Dec 8 16:49 downfile [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# ll total 73408 -rw-r--r-- 1 root root 75158016 Apr 27 15:21 abcd.tar -rw-r--r-- 1 root root 0 Apr 27 15:13 ab.txt drwx--x--x 4 root root 4096 Dec 28 16:17 containerd drwxr-xr-x 4 root root 4096 Dec 8 16:49 downfile [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# cat abcd.tar | docker import - mytest/ubuntu:3.5 sha256:a92a27affdde8ad7f07bef2fdc0f04b8e3aeacb9d6919a77da2921d552ab940b [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mytest/ubuntu 3.5 a92a27affdde 11 seconds ago 72.8MB tomcat 9.0 b8e65a4d736d 4 months ago 680MB ubuntu latest ba6acccedd29 6 months ago 72.8MB redis 6.0.8 16ecd2772934 18 months ago 104MB [root@iZ8vbfaek3x3ogtpxnpnwfZ opt]# docker run -it mytest/ubuntu:3.5 bash root@356e32244966:/# root@356e32244966:/# cd /tmp/ root@356e32244966:/tmp# ll total 8 drwxrwxrwt 2 root root 4096 Apr 27 07:13 ./ drwxr-xr-x 1 root root 4096 Apr 27 07:32 ../ -rw-r--r-- 1 root root 0 Apr 27 07:13 a.txt root@356e32244966:/tmp#