Docker技术知识:Docker容器的常用操作
容器的常用操作
1.创建容器
Docker的容器十分轻量级,用户可以随时创建或删除容器。
新建容器:docker create
Example:docker create –it centos
说明:使用docker create命令创建的容器处于停止状态,可以使用docker start命令启动它。
$ sudo docker create -it centos
$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00e0a9ee7fe2 centos "/bin/bash" 8 seconds ago Created affectionate_mahavira
新建并启动容器:``docker run`
Example: docker run centos /bin/echo “Hello World”
说明: 等价于先执行docker create命令,再执行docker start命令。
docker run 背后的故事:
1 检查本地是否存在制定的镜像,不存在就从公有仓库下载。
2 利用本地镜像创建并启动一个容器。
3 分配一个文件系统,并在只读的镜像层外面挂载一层可读写层。
4 从宿主机配置的网桥接口桥接一个虚拟接口到容器中去。
5 从地址池配置一个IP地址给容器。
6 执行用户的指定的用户程序。
7 执行完毕后容器被终止。
一条简单的命令:
docker run -i –t centos /bin/bash
-t : 让docker分配一个伪终端并绑定到容器的标准输入上。
-i : 让容器的标准输入保持打开。
在交互模式下,用户可以通过所创建的终端来输入命令,exit命令退出容器。
退出后,容器自动处于终止状态。
守护台运行:
更多的时候,需要让Docker容器运行在后台以守护态(daemonized)形式运行。用户可以通过添加-d参数来实现。
Example:
docker run -d centos /bin/bash -c "while true;do echo hello world;sleep 1;done"
补充:
查看日志: docker logs
docker logs –f 动态的查看日志,类似查看tomcat的日志一样
2.终止容器
可以使用docker stop命令来终止一个运行中的容器。
docker stop
注意:当容器中的应用终结时,容器也会自动停止。
查看终止的容器:docker ps -a
查看运行的容器:docker ps
重新启动容器:docker start
3.进入容器
在使用-d参数时,容器启动后会进入后台,用户无法看到容器中的信息。
docker exec
Exec可以直接在容器内部运行命令。前提是容器正在运行。
进入容器:
docker exec -i –t bash
区别:
run 运行一个容器后,进入容器的话,exit退出后,容器也直接退出
exec 进入容器后,exit退出后,容器不退出仍在后台运行
4.删除容器
可以使用docker rm命令删除终止状态的容器。
docker rm image_name|image_id
如果删除正在运行的容器,需要停止容器然后进行删除。
不管容器是否运行,可以使用docker rm –f命令进行删除。
5.导入和导出容器
导出容器是指导出一个已经创建的容器到一个文件,不管容器是否处于运行状态。可以使用docker export命令。
docker export
Example:
docker export container_id > test.tar
sudo docker export 7adfb980d640 > test_contain_id.tar
导出的文件又可以使用docker import命令导入,成为镜像。
Example:
cat test_contain_id.tar | docker import - image_name:latest
注意:不知为啥,一般用户无法导入,需要使用root用户才可以导入成功

教程库站长:庄宇光 QQ:1881294
投诉及建议电话: 18559313275
网站ICP备案号: 闽ICP备19015982号-4 公安网备案号:闽公网安备35060202000406号
文章投稿及版权申诉联系邮箱 1: vip@jiaochengku.com 联系邮箱 2: vip@ufo.work