docker-compose命令对比

对比

image vs build

  • image:若是镜像在本地不存在,Compose 将会尝试拉去这个镜像。html

  • build:指定 Dockerfile 所在文件夹的路径。 Compose 将会利用它自动构建这个镜像,而后使用这个镜像。git

links vs external_links

  • links:连接到其它服务中的容器。使用服务名称(同时做为别名)或服务名称:服务别名 (SERVICE:ALIAS) 格式均可以。使用的别名将会自动在服务容器中的 /etc/hosts 里建立。docker

  • external_links:连接到 docker-compose.yml 外部的容器,甚至 并不是 Compose 管理的容器。ui

ports vs expose

  • ports
    暴露端口信息。使用:宿主:容器 (HOST:CONTAINER)格式或者仅仅指定容器的端口(宿主将会随机选择端口)均可以。htm

当使用 HOST:CONTAINER 格式来映射端口时,若是你使用的容器端口小于 60 你可能会获得错误得结果,由于 YAML 将会解析 xx:yy 这种数字格式为 60 进制。因此建议采用字符串格式。字符串

  • expose
    暴露端口,但不映射到宿主机,只被链接的服务访问。get

仅能够指定内部端口为参数it

volumes vs volumes_from

  • volumes
    卷挂载路径设置。能够设置宿主机路径 (HOST:CONTAINER) 或加上访问模式 (HOST:CONTAINER:ro)。io

ro就是readonly的意思,只读模式。docker-compose

  • volumes_from
    从另外一个服务或容器挂载它的全部卷。

参考

Compose环境变量说明环境变量已经再也不是用来链接服务的推荐方法了,相反,应该使用连接名称(默认状况下是连接服务的名称)做为主机名称来链接,这能够查看docker-compose.yml的更多细。Compose使用Docker links来暴露服务的容器给其余的。每个连接的容器都使用了一组环境变量,这每一组环境变量都是以容器名称的大写字母开头的。要查看服务可用的环境变量,运行docker-compose run SERVICE env

相关文章
相关标签/搜索