一、前言
1、容器是 Docker 又一核心概念。
2、简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用。
3、本章将具体介绍如何来管理一个容器,包括创建、启动和停止等。
二、docker run
命令
1、新建容器并启动
1、命令&参数说明
1、
docker run [可选参数] image
2、参数:
--name="Name" # 容器名字
-d # 后台运行
-it # 使用交互方式运行,进入容器查看内容
-p # 指定容器的端口 -p 8080:8080 主机端口:容器端口
-P # 随机指定端口
2、测试
1、
docker run -it centos
2、当利用 docker run 来创建容器时,Docker 在后台运行的标准操作包括:
1、检查本地是否存在指定的镜像,不存在就从公有仓库下载
2、利用镜像创建并启动一个容器
3、分配一个文件系统,并在只读的镜像层外面挂载一层可读写层
4、从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去
5、从地址池配置一个 ip 地址给容器
6、执行用户指定的应用程序
7、执行完毕后容器被终止
3、从容器中退回主机
exit
2、后台启动容器
docker run -d centos
1、问题docker ps,发现centos停止了
2、常见的坑:docker容器使用后台运行,就必须要有一个前台进程,docker发现没有应用,就会自动停止
3、容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了
三、docker ps
命令
1、列出所有的容器
docker ps -a
2、列出正在运行的容器
docker ps
四、docker start
命令
1、启动已经停止的容器 命令:
docker start e76c9dae9562(镜像ID)
五、docker stop
命令
1、停止正在运行的容器 命令:
docker stop 38322366a070
六、docker restart
命令
1、重启容器命令
docker restart 7f653086b7ed
七、docker kill
1、强制停止容器
docker kill 7f653086b7ed
八、docker exec
命令
1、进入当前正在运行的容器 命令
docker exec -it 38322366a070 /bin/bash
同样的我们发现如果通过 docker exec
命令进入到容器后,退出容器,容器仍然在运行,所以我们可以通过 docker exec
来开启和进入容器
九、docker attach
命令
1、进入当前正在运行的容器 命令
docker attach 383
从中我们可以知道 docker attach
和 docker exec
区别便是 退出容器,容器便停止,所以推荐大家用 docker exec
进入容器。
十、docker export
命令
1、导出容器
docker export 38322366a070 > centos7.tar
十一、docker import
命令
1、导入容器快照
cat centos7.tar | docker import - test/centos:v1.0
十二、docker rm
命令
1、删除一个终止的容器
docker rm 41b20f255c24
2、删除一个正在运行的容器
docker rm -f 38322366a070
3、清理所有处于终止状态的容器
docker container prune
总结
以上都是个人总结的一些基础命令,有疑问和错误,欢迎指出。