Docker

Docker 常见名词

第一次学习 docker 会有几个概念使人迷惑,今天总结一下他们之间的关系。

他们之间的关系是:

image.png

先理清楚几个概念

仓库:通常只 docker hub,是 docker 的中央仓库,当然我们也可以自建仓库。

Dockerfile:构建容器镜像的配置文件,可以把它理解为生成镜像的 “菜单”。

镜像 image:镜像用来生成 docker 容器,容器通过 commit 命令可以将容器持久化为 image。

TAR:是 docker 镜像(image)归档存储文件,该文件未压缩。

Container:docker 运行的实体,所有程序在容器内运行,容器具有隔离性,容器之间除非通过网络(network)连接,否则相互隔离。

Docker 常用命令总结

docker run 命令

docker run :用 image 创建一个新的容器并运行一个命令

docker run [option] image [command] [arg…]

注意: 如果不使用-d, 创建一个容器退出后容器关闭

常用选项:

  • -d: 后台运行容器, 并返回容器 id
  • -i: 已交互模式运行容器, 通常与-t 同时使用
  • -P: 主机端口映射为容器随机端口.
  • -p: 指定主机端口与容器映射的端口, 格式为: 主机端口: 容器端口
  • –name: 为容器命名
  • –dns 8.8.8.8 指定容器使用的 DNS 服务器, 默认和宿主及一样
  • -h: 指定容器主机
  • -m: 分配最大内存
  • –net=“bridge”: 指定容器的连接类型, 支持 bridge/host/none/container 四种
  • –expose=[]: 开放一组端口