参考菜鸟教程
定义:开源的应用容器引擎
三个基本概念:
- 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
- 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
- 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
-
容器与镜像的关系类似于面向对象编程中的对象与类。
Docker 面向对象 容器 对象 镜像 类
配置:阿里云申请免费账号,根据网上教程即可更改
常用命令:
快捷键:
通过运行 exit 命令或者使用 CTRL+D 来退出容器
Ctrl+C 终止一个程序的运行
容器的生命周期管理:
docker run :创建一个新的容器并运行一个命令
docker start :启动一个或多个已经被停止的容器
docker stop :停止一个运行中的容器
docker restart :重启容器
docker kill :杀掉一个运行中的容器。
docker rm :删除一个或多个容器。
docker pause :暂停容器中所有的进程。
docker unpause :恢复容器中所有的进程。
docker create :创建一个新的容器但不启动它
docker exec :在运行的容器中执行命令
容器操作:
docker ps : 列出容器
docker inspect : 获取容器/镜像的元数据。
docker top :查看容器中运行的进程信息,支持 ps 命令参数。
docker attach :连接到正在运行中的容器。
docker events : 从服务器获取实时事件
docker logs : 获取容器的日志
docker wait : 阻塞运行直到容器停止,然后打印出它的退出代码。
docker export :将文件系统作为一个tar归档文件导出到STDOUT。
docker port :列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。
容器rootfs命令:
docker commit :从容器创建一个新的镜像。
docker cp :用于容器与主机之间的数据拷贝。
docker diff : 检查容器里文件结构的更改。
镜像仓库:
docker login : 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub
docker pull : 从镜像仓库中拉取或者更新指定镜像
docker push : 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
docker search : 从Docker Hub查找镜像
本地镜像管理:
docker images : 列出本地镜像。
docker rmi : 删除本地一个或多少镜像。
docker tag : 标记本地镜像,将其归入某一仓库。
docker build 命令用于使用 Dockerfile 创建镜像。
docker history : 查看指定镜像的创建历史。
docker save : 将指定镜像保存成 tar 归档文件。
docker load : 导入使用 docker save 命令导出的镜像。
docker import : 从归档文件中创建镜像。
info|version
docker info : 显示 Docker 系统信息,包括镜像和容器数。
docker version :显示 Docker 版本信息。
Dockerfile可以理解为一种配置文件,用来告诉docker build命令应该执行哪些操作。
如果想让容器一直运行,而不是停止,可以使用快捷键 ctrl+p ctrl+q 退出,此时容器的状态为Up。
-d参数,使这个容器处于后台运行的状态