下面看另一种启动容器的方法:
[root@docker ~]# docker run CentOS /usr/bin/bash -c ls / Unable to find image 'centos:latest' locally latest: Pulling from library/centos 8a29a15cefae: Pull complete Digest: sha256:fe8d824220415eed5477b63addf40fb06c3b049404242b31982106ac204f6700 Status: Downloaded newer image for centos:latest bin dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var [root@docker ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4835176a7d8e centos "/usr/bin/bash -c ls…" About a minute ago Exited (0) About a minute ago affectionate_keldysh a1a2e8468189 nginx:latest "/bin/bash" 28 minutes ago Up 17 minutes 80/tcp gallant_feynman-c参数暗示的是需要执行的呼吁,这种方法合用于一次执行,Exited (0) 暗示正常正确退出,及终止运行。
docker run的呼吁执行流程为:先从当地查找镜像(当地没有image不暗示容器不依赖image),假如没有会从民众客栈中下载;再通过镜像建设而且启动一个容器;分派一个文件系统给容器,在只读的镜像层外面挂载一层可读写层;从宿主机设置的网桥接口中桥接一个虚拟接口到容器中;分派一个地点池中的IP地点给容器;执行用户指定的应用措施;执行之后容器被终止(靠山运行除外)。
靠山运行:run 后头加参数-d即可。
2、容器运行与终止想要在运行中的容器停下来,利用docker stop 呼吁
呼吁名目:docker stop [OPTIONS] CONTAINER [CONTAINER...]
实例演示:
[root@docker ~]# docker stop a1a2e8468189 a1a2e8468189 [root@docker ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4835176a7d8e centos "/usr/bin/bash -c ls…" 9 minutes ago Exited (0) 9 minutes ago affectionate_keldysh a1a2e8468189 nginx:latest "/bin/bash" 36 minutes ago Exited (0) 3 seconds ago gallant_feynman 3、容器的进入想要进入容器举办相应操纵时可以利用docker exec呼吁进入运行着的容器。
呼吁名目:docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
[root@docker ~]# docker ps -a #查抄容器是否是运行状态(up) CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4835176a7d8e centos "/usr/bin/bash -c ls…" 12 minutes ago Exited (0) 12 minutes ago affectionate_keldysh a1a2e8468189 nginx:latest "/bin/bash" 38 minutes ago Up 4 seconds 80/tcp gallant_feynman [root@docker ~]# docker exec -it a1a2e8468189 /bin/bash #进入伪终端 root@a1a2e8468189:/# ls bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root@a1a2e8468189:/# exit #利用exit退出伪终端 exit [root@docker ~]# 4、容器的导出和导入雷同镜像,用户也可以将容器从一台呆板迁移到另一台呆板。在迁移进程中,首先需要将已经建设好的容器导出为文件,利用docker export实现,无论这个容器是处于运行状态照旧遏制状态均可以导出。导出之后可将导出文件传输到其他呆板,通过对应的导入呼吁实现迁移进程。
容器导出呼吁:docker export
呼吁名目:docker export [OPTIONS] CONTAINER
实例演示:一个运行状态一个遏制状态,都演示
[root@docker ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4835176a7d8e centos "/usr/bin/bash -c ls…" 21 minutes ago Exited (0) 21 minutes ago affectionate_keldysh a1a2e8468189 nginx:latest "/bin/bash" 48 minutes ago Up 9 minutes 80/tcp gallant_feynman运行中的容器导出:
[root@docker ~]# docker export a1a2e8468189 > nginx_contain [root@docker ~]# ls anaconda-ks.cfg initial-setup-ks.cfg nginx nginx_contain 民众 模板 视频 图片 文档 下载 音乐 桌面 [root@docker ~]# ll 总用量 253448 -rw-------. 1 root root 1954 4月 6 08:49 anaconda-ks.cfg -rw-r--r--. 1 root root 2002 4月 6 08:50 initial-setup-ks.cfg -rw-------. 1 root root 130618880 4月 6 14:04 nginx #镜像存出的文件 -rw-r--r--. 1 root root 128899072 4月 6 16:04 nginx_contain #容器导出文件 二者权限差异终止的容器导出:
[root@docker ~]# docker export 4835176a7d8e > centos_contain [root@docker ~]# ls anaconda-ks.cfg initial-setup-ks.cfg nginx_contain 模板 图片 下载 桌面 centos_contain nginx 民众 视频 文档 音乐导出的文件从当地拷贝到长途处事器,之后利用docker import呼吁导入,成为镜像
容器导入呼吁:docker import
呼吁名目:docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]