版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
ps:容器是独立运行的一个或一组应用,及其运行态环境
启动容器
- 两种方式启动,一:基于镜像新建一个容器并启动;二:将在终止状态的容器重新启动
- 新建并启动
-
- 主要命令
docker run
- 主要命令
-
- 启动一个bash终端
ps: -t选项让docker分配一个伪终端并绑定到容器的标准输入上,-i让容器的标准输入保持打开
- 启动一个bash终端
- 当利用docker run创建容器时,docker在后台运行的标准操作包括:
- 检查本地是否存在指定的镜像,不存在就在公有仓库下载
- 利用镜像创建并启动一个容器
- 分配一个文件系统,并在只读的镜像层外面挂载一层可读写层
- 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去
- 从地址池配置一个ip地址给容器
- 执行用户指定的应用程序
- 执行完毕后容器被终止
启动已终止容器
- 可利用 docker container start 命令,直接将一个已经终止的容器启动运行
- 容器的核心是所执行的应用程序,所需的资源都是应用程序运行所必须的
后台运行
-
通过 -d 参数 让docker在后台运行,不把执行结果输出在宿主机上。输出结果可用 docker logs查看,使用-d参数启动会返回一个唯一ID
-
docker container ls 可查看容器信息
终止容器
-
docker container stop
终止运行中的容器
-
docker container ls -a
查看终止状态的容器
进入容器
-
可使用docker attach 或 docker exec(推荐) 命令进入容器
-
attach命令
后台守护进程启动
列出所有容器
进入容器
PS:若从当前这个容器内 exit,则会导致 容器的停止 -
exec 命令
docker exec -it {container id} bash
ps: 当从该容器exit,不会导致容器停止
导出和导入容器
- 导出容器,可将容器快照到本地
docker export {container ID} > export_name.tar
- 导入容器快照,可从本地的容器快照中导入到镜像
cat {快照文件} docker import - test/{镜像名}:{tag}
也可通过URL 导入,docker import {URL}
- 可以使用docker load 导入镜像存储文件到本地镜像库,也可以使用 docker import 导入一个容器快照到本地镜像库。区别在于,容器快照文件将丢弃所有的历史记录和元数据信息,镜像存储文件保存完整记录,体积更大。从容器快照文件导入可重新指定标签等元数据信息
删除容器
- 使用
docker container rm {容器}
删除一个处于终止状态的容器 - 若需删除运行中的容器,可添加 -f 参数
- 清理所有处于终止状态的容器:
docker container prune