您好,登錄后才能下訂單哦!
Docker Compose yml文件是什么,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
如果我們有一個App,他由多個container組成,那么這個App的維護會非常繁瑣。
包括:
要從Dockerfile build image 或者 Docker hub拉取image
要創建多個container
要管理這些container(啟動,停止,刪除)
docker Compose的作用就是“批處理”。我們只需要一條命令,就可以管理多個容器的創建,停止刪除。
Docker Compose是一個工具
這個工具可以通過一個yml文件定義多容器的docker應用
通過一條命令就可以根據yml文件的定義去創建或者管理這多個容器
一個service代表一個container,這個container可以從docker hub的image來創建,或者從本地的Dockerfile build出來的image來創建。
service的啟動類似docker run,我們可以給其指定network和volume, 所以可以給service指定etwork和volume的引用。
services: db: image: postgres:9.4 volumes: - "db-data:/var/lib/postgresql/data" networks: - back-tier
這句話類似于
docker run -d --name db --network back-tier -v db-data:/var/lib/postgresql/data postgres:9.4
services: worker: build: ./worker networks: back-tier
這個是通過本地build的。
version: '3' services: wordpress: image: wordpress ports: - 8080:80 environment: WORDPRESS_DB_HOST: mysql WORDPRESS_DB_PASSWORD: root networks: - my-bridge mysql: image: mysql environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: wordpress volumes: - mysql-data:/var/lib/mysql networks: - my-bridge volumes: mysql-data: networks: my-bridge: driver: bridge
version: "3" 表示使用的docker Compose 版本是3
這個docker-compose.yml文件包含三部分:services,volumes,networks
services,定義了兩個service分別是wordpress和mysql。wordpress 端口是80映射到8080,environment相當于-e選項,network表示鏈接的網絡是my-bridge,這個網絡在下面會有定義。mysql中的volume映射到mysql-data,這個volume在下面有定義。
關于Docker Compose yml文件是什么問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。