首先安裝compose
#下載並移動到/usr/local/bin目錄下 curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" \ -o /usr/local/bin/docker-compose #賦予可執行權限 chmod +x /usr/local/bin/docker-compose
然后執行docker-compose --version 如果能看顯示對應的版本號說明安裝成功
再一個空目錄下創建nginx 和php兩個目錄,首先進入nginx目錄並創建一個Dockerfile文件
cd nginx
vi Dockerfile
在Dockerfile文件中寫入如下指令
FROM nginx:latest COPY default.conf /etc/nginx/conf.d/default.conf
保存Dockerfile文件后再創建一個default.conf內容為
#以下內容僅供參考,請按實際環境定制 server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.html index.htm index.php; location ~ \.php$ { fastcgi_pass php-fpm:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name; include fastcgi_params; } }
保存文件后再執行 cd ../php 進入php目錄 編輯Dockerfile文件(主要增加了一些常用擴展,請按實際情況定制) 內容如下
FROM php:7.3-fpm RUN docker-php-ext-install pdo pdo_mysql mysqli \ && pecl install redis-4.2.0 && docker-php-ext-enable redis
然后保存,cd .. 回到外層目錄創建docker-compose.yml文件
vi docker-compose.yml 並鍵入如下內容
version: '3' networks: dev-net: driver: bridge services: mysql: image: mysql:latest command: --default-authentication-plugin=mysql_native_password restart: always environment: MYSQL_ROOT_PASSWORD: root networks: - dev-net nginx: build: nginx restart: always ports: - 80:80 volumes: - /home/wwwroot/default/:/usr/share/nginx/html depends_on: - mysql - redis - php-fpm networks: - dev-net php-fpm: build: php volumes: - /home/wwwroot/default/:/usr/share/nginx/html networks: - dev-net redis: image: redis:latest networks: - dev-net
保存后執行
docker-compose up -d
等待完成自動構建即可