docker-compose命令對比

下面由composer教程欄目給大家介紹關于docker-compose命令的對比,希望對需要的朋友有所幫助!

docker-compose命令對比

對比

image vs build

image:如果鏡像在本地不存在,Compose 將會嘗試拉去這個鏡像。

build:指定 Dockerfile 所在文件夾的路徑。 Compose 將會利用它自動構建這個鏡像,然后使用這個鏡像。

● links vs external_links

links:鏈接到其它服務中的容器。使用服務名稱(同時作為別名)或服務名稱:服務別名 (SERVICE:ALIAS) 格式都可以。使用的別名將會自動在服務容器中的 /etc/hosts 里創建。

external_links:鏈接到 docker-compose.yml 外部的容器,甚至 并非 Compose 管理的容器。

ports vs expose

●?ports

暴露端口信息。使用:宿主:容器 (HOST:CONTAINER)格式或者僅僅指定容器的端口(宿主將會隨機選擇端口)都可以。

當使用 HOST:CONTAINER 格式來映射端口時,如果你使用的容器端口小于 60 你可能會得到錯誤得結果,因為 YAML 將會解析 xx:yy 這種數字格式為 60 進制。所以建議采用字符串格式。

●?expose

暴露端口,但不映射到宿主機,只被連接的服務訪問。

僅可以指定內部端口為參數

volumes vs volumes_from

●?volumes

卷掛載路徑設置。可以設置宿主機路徑 (HOST:CONTAINER) 或加上訪問模式 (HOST:CONTAINER:ro)。

ro就是readonly的意思,只讀模式。

●?volumes_from

從另一個服務或容器掛載它的所有卷。

注:

Compose環境變量說明環境變量已經不再是用來連接服務的推薦方法了,相反,應該使用鏈接名稱(默認情況下是鏈接服務的名稱)作為主機名稱來連接,這可以查看docker-compose.yml的更多細。Compose使用Docker links來暴露服務的容器給其他的。每一個鏈接的容器都使用了一組環境變量,這每一組環境變量都是以容器名稱的大寫字母開頭的。要查看服務可用的環境變量,運行docker-compose run SERVICE env

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享