docker-compose 詳解及示例代碼
docker-compose使用示例
利用docker搭建一個(gè)mysql + java service + nginx,總共4個(gè)docker容器,如果采用docker run的方式一個(gè)一個(gè)容器去創(chuàng)建十分麻煩。為了能更高效的批量創(chuàng)建容器,docker推出了docker-compose工具,只需要定義一個(gè)docker-compose.yml文件即可快速搞定一組容器的創(chuàng)建,
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
內(nèi)容不復(fù)雜,具體的關(guān)鍵字說明見本文最后的參考文章鏈接。
問題:這個(gè)文件放在哪里?
參見下面的目錄結(jié)構(gòu):
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
創(chuàng)建容器:
cd mysql-java-nginx docker-compose up
就是這么簡(jiǎn)單,一個(gè)up就搞定了所有容器的創(chuàng)建,up通常用于首次創(chuàng)建,可以觀察終端實(shí)時(shí)輸出的日志內(nèi)容判斷容器是否啟動(dòng)正常,如果沒什么問題,直接Ctrl+C退出,然后
docker-compose start
以后臺(tái)方式啟動(dòng)容器。
其它命令還有:
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
基本上看名字就知道意思了?! ?/p>
參考文章:
https://docs.docker.com/compose/compose-file/
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
docker鏡像導(dǎo)入的實(shí)現(xiàn)方法
如果服務(wù)器網(wǎng)絡(luò)不好或者pull不下來(lái)鏡像,只能進(jìn)行導(dǎo)入,本文主要介紹了docker鏡像導(dǎo)入的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的可以了解一下2023-09-09Docker端口映射實(shí)現(xiàn)網(wǎng)絡(luò)訪問的方法
本篇文章主要介紹了Docker端口映射實(shí)現(xiàn)網(wǎng)絡(luò)訪問的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-07-07docker運(yùn)行nginx綁定配置文件失敗原因以及問題解決
最近工作中在使用docker運(yùn)行nginx的時(shí)候遇到了些問題,下面分享給大家,這篇文章主要給大家介紹了關(guān)于docker運(yùn)行nginx綁定配置文件失敗原因以及問題解決的相關(guān)資料,需要的朋友可以參考下2023-02-02Jenkins簡(jiǎn)介與Docker部署Jenkins的方法
今天小編就為大家分享一篇關(guān)于Jenkins簡(jiǎn)介與Docker部署Jenkins的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10