docker-compose.yml引數詳解
阿新 • • 發佈:2020-10-25
1:引數詳解
service: 定義服務 web: 二級標籤,服務名稱,使用者自己定義 image: 指定服務映象的名稱或ID,如果本地映象不存在,Compose將會嘗試拉取這個映象 格式: image: redis image: ubuntu:14.04 image: tutum/influxdb image: example-registry.com:4000/postgresql image: a4bc65fd build: 服務除了可以基於指定的映象,還可以基於一份 Dockerfile, 在使用 up 啟動之時執行構建任務,這個構建標籤就是 build, 它可以指定 Dockerfile 所在資料夾的路徑。Compose 將會利用它自動構建這個映象, 然後使用這個映象啟動服務容器。 格式: build: /path/to/build/dir build: ./dir 相對路徑 build: 設定上下文根目錄,然後以該目錄為準指定 Dockerfile context: ../ dockerfile: path/of/Dockerfile ###ARG:是在build的時候存在的,可以在Dockerfile中當做變數來使用,ARG是允許空值的,構建成功之後會消失 ###ENV:是容器構建好之後的變數,不能再Dockerfile中當引數使用,不允許空值 build: context: . context:上下文 args: buildno: 1 password: secret build: context: . args: - buildno=1 - demo 空值 - password=secret ports: 對映埠的標籤 格式: ports: - "3000" - "8000:8000" ###YAML 的布林值(true, false, yes, no, on, off) ###必須要使用引號引起來(單引號、雙引號均可),否則會當成字串解析。 command: 使用 command 可以覆蓋容器啟動後預設執行的命令。 格式: command: bundle exec thin -p 3000 command: [bundle, exec, thin, -p, 3000] 這是dockerfile中的檔案格式 container_name: 雖然可以自定義專案名稱、服務名稱,但是如果你想完全控制容器的命名, 可以使用這個標籤指定 格式: container_name: app depends_on: 解決容器啟動先後順序問題,避免了容器依賴因啟動順序不同而造成退出錯誤 格式: depends_on: - db 先啟動資料庫在啟動redis - redis https://blog.csdn.net/liguangxianbin/article/details/79492866