docker-compose 詳解及範例程式碼_docker

來源:互聯網
上載者:User

docker-compose使用樣本

利用docker搭建一個mysql + java service + nginx,總共4個docker容器,如果採用docker run的方式一個一個容器去建立十分麻煩。為了能更高效的大量建立容器,docker推出了docker-compose工具,只需要定義一個docker-compose.yml檔案即可快速搞定一組容器的建立,

mysql: image: daocloud.io/yjmyzz/mysql-osx:latest volumes:   - ./mysql/db:/var/lib/mysql ports:   - 3306:3306 environment:   - MYSQL_ROOT_PASSWORD=123456 service1: image: java:latest volumes:   - ./java:/opt/app expose:   - 8080 #ports: #  - 9081:8080 links:   - mysql:default command: java -jar /opt/app/spring-boot-rest-framework-1.0.0.jar service2: image: java:latest volumes:   - ./java:/opt/app expose:   - 8080 #ports: #  - 9082:8080 links:   - mysql:default command: java -jar /opt/app/spring-boot-rest-framework-1.0.0.jar nginx1:  image: nginx:latest  volumes:   - ./nginx/html:/usr/share/nginx/html:ro   - ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro   - ./nginx/conf.d:/etc/nginx/conf.d:ro  #expose:  #  - 80  ports:   - "80:80"  links:   - service1:service1   - service2:service2

內容不複雜,具體的關鍵字說明見本文最後的參考文章連結。

問題:這個檔案放在哪裡?

參見下面的目錄結構:

mysql-java-nginx├── docker-compose.yml├── java│  └── spring-boot-rest-framework-1.0.0.jar├── mysql│  └── db└── nginx  ├── conf  ├── conf.d  │  └── default.conf  ├── html  │  └── index.html  └── nginx.conf 

建立容器:

cd mysql-java-nginxdocker-compose up

就是這麼簡單,一個up就搞定了所有容器的建立,up通常用於首次建立,可以觀察終端即時輸出的日誌內容判斷容器是否啟動正常,如果沒什麼問題,直接Ctrl+C退出,然後

docker-compose start

以後台方式啟動容器。  

其它命令還有:

Commands: build       Build or rebuild services help        Get help on a command kill        Kill containers logs        View output from containers pause       Pause services port        Print the public port for a port binding ps         List containers pull        Pulls service images restart      Restart services rm         Remove stopped containers run        Run a one-off command scale       Set number of containers for a service start       Start services stop        Stop services unpause      Unpause services up         Create and start containers migrate-to-labels Recreate containers to add labels version      Show the Docker-Compose version information

基本上看名字就知道意思了。  

參考文章:

https://docs.docker.com/compose/compose-file/

感謝閱讀,希望能協助到大家,謝謝大家對本站的支援!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.