前言
Docker Compose 是 Docker 官方編排(Orchestration)項目之一伐蒂,負(fù)責(zé)快速在集群中部署分布式應(yīng)用,項目源碼可以在 Github 上查看:https://github.com/docker/compose拆吆,主要基于 Python 編寫聋迎。
Compose 定位是 「定義和運(yùn)行多個 Docker 容器的應(yīng)用(Defining and running multicontainer Docker applications)」,其前身是開源項目 Fig枣耀。
關(guān)于 Docker Compose 技術(shù)可以查看官方文檔 Docker Compose
以下的內(nèi)容是確立在已經(jīng)下載好 Docker 以及 Docker Compose霉晕,可參看 Docker Compose 的官方安裝教程 Install Docker Compose
添加配置文件 docker-compose.yml
上篇文章 中我們安裝和啟動了 PHP-FPM+Apache,運(yùn)行出了我們第一個網(wǎng)站運(yùn)行環(huán)境捞奕,為了讓我們?nèi)萜鞯膯雍蛣h除操作方便牺堰,所以我們要使用docker compose ,一款編排工具颅围。
隨便找個文件夾(我的是在 /home/liang/it/web/compose 這個目錄下), 寫個名字叫做 docker-compose.yml 的文件伟葫,對照著 上篇文章 啟動命令改改即可。
docker run -d --rm --name fpm -v /home/liang/it/web/php:/php php:7.4.11-fpm-alpine3.12
docker run -d -p 80:80 --name myweb -v /home/liang/it/web/php:/usr/local/apache2/htdocs/ -v /home/liang/it/web/conf/httpd.conf:/usr/local/apache2/conf/httpd.conf httpd:2.4-alpine
向 docker-compose.yml 中添加以下配置:
version: "3.8"
services:
fpm:
image: php:7.4.11-fpm-alpine3.12
container_name: fpm
volumes:
- /home/liang/it/web/php:/php
networks:
mywebnet:
ipv4_address: 192.158.0.2
myweb:
image: httpd:2.4-alpine
container_name: myweb
ports:
- 80:80
volumes:
- /home/liang/it/web/php:/usr/local/apache2/htdocs/
- /home/liang/it/web/conf/httpd.conf:/usr/local/apache2/conf/httpd.conf
networks:
mywebnet:
ipv4_address: 192.158.0.3
networks:
mywebnet:
driver: bridge
ipam:
config:
- subnet: 192.158.0.0/16
我們在配置文件里添加了網(wǎng)絡(luò)的配置院促,因為我們在 httpd.conf 配置文件里指定了 PHP-FPM 的 IP 地址
啟動容器
在 docker-compose.yml 目錄下筏养,執(zhí)行啟動命令 docker-compose up -d
即可。
用瀏覽器打開:http://localhost/index.php
成功的出現(xiàn)了 php 界面常拓!
加入這里(https://t.zsxq.com/zBAQNbu)渐溶,每天都有 Golang 進(jìn)階視頻更新