docker-compose實現https訪問wordpress


說明:

通過dockr-compose實現https訪問wordpress,為方便配置證書,借助nginx反向代理的功能
設置文件目錄結構

docker-compose內容

version: "2"
services:
 db:
   image: mysql:5.7
   volumes:
       - "./data/db:/var/lib/mysql"
   ports:
       - "3306:3306"
   restart: always
   environment:
       MYSQL_ROOT_PASSWORD: wordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

 nginx:
   image: nginx:alpine
   restart: always
   volumes:
       - ./cert:/etc/nginx/cert
       - ./conf/nginx.conf:/etc/nginx/nginx.conf
       - ./home/wordpress:/var/www/html
       - ./conf.d:/etc/nginx/conf.d
   ports:
     - "443:443"
   links:
       - wordpress

 wordpress:
   image: wordpress:4.9.4-php7.0-fpm
   ports:
     - 9000:9000
   volumes:
     - ./home/wordpress:/var/www/html
   restart: always
   environment:
       - WORDPRESS_DB_NAME=wordpress
       - WORDPRESS_TABLE_PREFIX=wp_
       - WORDPRESS_DB_HOST=db:3306
       - WORDPRESS_DB_PASSWORD=wordpress
       - WORDPRESS_DB_USER=wordpress
   depends_on:
   - db

default.conf內容

server {
        listen 443;
        server_name *******.com;  #修改為自己的域名

        ssl on;
        root /var/www/html;
        index index.php index.html;
        ssl_certificate   cert/*******.cer;   #修改為自己的證書地址
        ssl_certificate_key  cert/*******.key;  #修改為自己的密鑰地址
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
            try_files $uri =404;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass *.*.*.*:9000;   #wordpress地址
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_param PATH_INFO $fastcgi_path_info;
        }
    }

注意:更換自己的域名、證書文件名稱以及php運行環境的ip地址

啟動容器

cd到docker-compose所在的目錄
docker-compose up –d
然后執行
docker ps 則啟動成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM