使用docker-compose配置两个wordpress网站时遇到的问题

考试前两天想给女票也搞个博客,单独测试好好的,一起部署怎么都上不去,关键是理论上完全没问题。。最后调了半天(真·半天)发现是天杀的docker-compose必须mount与nginx一样的路径来传递变量,我真的是心态爆炸。。
这还是我做二分测试做了大概十几次才发现的问题,好像国内和国外都没怎么见有人提到过,故写个博客发在网上,方便后来者取用。

Stackoverflow链接:https://stackoverflow.com/questions/17808787/file-not-found-when-running-php-with-nginx/55959904#55959904

这是一个截至文章发布时只有14个赞的答案,实在是难为这位老哥了。

贴个docker-compose双wordpress的配置吧

version: '3'

services:

  nginx:
    depends_on:
      - example1
      - example2
    image: nginx:alpine
    container_name: nginx
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - /home/ubuntu/sites/example1.blog/wordpress/html:/var/www/html/example1
      - /home/ubuntu/sites/example2.blog/wordpress/html:/var/www/html/example2
      - /home/ubuntu/sites/nginx-conf:/etc/nginx/conf.d
      - /etc/letsencrypt/live/www.example1.blog/privkey.pem:/var/www/html/example1/ssl/privkey.pem
      - /etc/letsencrypt/live/www.example1.blog/fullchain.pem:/var/www/html/example1/ssl/fullchain.pem
      - /etc/letsencrypt/live/example2.blog/privkey.pem:/var/www/html/example2/ssl/privkey.pem
      - /etc/letsencrypt/live/example2.blog/fullchain.pem:/var/www/html/example2/ssl/fullchain.pem
    networks:
      - websites


  example1:
    image: wordpress:fpm-alpine
    depends_on:
      - db_example1
    restart: unless-stopped
    env_file: example1.blog/wordpress/.env
    container_name: example1
    volumes:
      - /home/ubuntu/sites/example1.blog/wordpress/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
      - /home/ubuntu/sites/example1.blog/wordpress/html:/var/www/html/example1
    # command: chown -R www-data:www-data /var/www
    networks:
      - websites
    
  example2:
    image: wordpress:fpm-alpine
    depends_on:
      - db_example2
    restart: unless-stopped
    env_file: example2.blog/wordpress/.env
    container_name: example2
    volumes:
      - /home/ubuntu/sites/example2.blog/wordpress/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
      - /home/ubuntu/sites/example2.blog/wordpress/html:/var/www/html/example2
    # command: chown -R www-data:www-data /var/www
    networks:
      - websites

  db_example1:
    image: mysql
    restart: unless-stopped
    container_name: db_example1
    env_file: example1.blog/wordpress/.env
    volumes:
      - /home/ubuntu/sites/example1.blog/wordpress/dbdata:/var/lib/mysql
    security_opt:
      - seccomp:unconfined
    networks:
      - websites

  db_example2:
    image: mysql
    restart: unless-stopped
    container_name: db_example2
    env_file: example2.blog/wordpress/.env
    volumes:
      - /home/ubuntu/sites/example2.blog/wordpress/dbdata:/var/lib/mysql
    security_opt:
      - seccomp:unconfined
    networks:
      - websites
networks:
  websites: {}
posted @ 2022-12-26 16:54  Shijie_Huang  阅读(99)  评论(0)    收藏  举报