Как смонтировать файлы WordPress в существующий каталог? - PullRequest
0 голосов
/ 05 июня 2018

каждый!

Проблема заключается в следующем:

У меня есть файл docker-compose.yml, который содержит настройки для nginx, nuxt, wordpress и mysql.Я не могу смонтировать файлы WordPress из образа в локальный каталог.

Что я делаю не так?

docker-compose.yml

version: '3'
services:
  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
    depends_on:
      - nuxt
      - wp
    volumes:
      - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
      - ./logs/nginx:/var/log/nginx
    networks:
      - flat-network
  nuxt:
    build: ./nuxt
    depends_on:
      - wp
      - db
    environment:
      HOST: "0.0.0.0"
    volumes:
      - ./nuxt:/myapp
    networks:
      - flat-network
  wp:
    build: ./wp
    depends_on:
      - db
    environment:
      WORDPRESS_DB_HOST: "db:3306"
    env_file: .env
    volumes:
      - ./wp:/var/www/html
    networks:
      - flat-network
  db:
    build: mysql
    env_file: .env
    ports:
      - '3306:3306'
    networks:
      - flat-network

  networks:
    flat-network:

Dockerfile для WordPress:

FROM wordpress:php7.2-fpm-alpine

COPY cmd.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/cmd.sh
ENTRYPOINT ["cmd.sh"]
CMD ["cmd.sh"]

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Создайте файл Docker для WordPress

Сначала очистите старые папки и создайте новую папку или удалите подключенные тома, такие как db, wp folder, затем снова запустите приложение

Для запускас нуля выполните следующие действия

docker-compose.yml

version: '2'

services:
  nginx:
    image: nginx:latest
    ports:
        - '80:80'
    volumes:
        - ./nginx:/etc/nginx/conf.d
        - ./html:/var/www/html
    links:
        - wordpress
    restart: always

  mysql:
    image: mariadb
    ports:
        - '3306:3306'
    volumes:
        - /var/db/mysql_backup_folder3/test/mysql:/var/lib/mysql
    environment:
        - MYSQL_USER=test
        - MYSQL_ROOT_PASSWORD=TestDb123
        - MYSQL_DATABASE=testdb
        - MYSQL_PASSWORD=TestDb123
    restart: always

  wordpress:
    image: wordpress:4.7.1-php7.0-fpm
    ports:
        - '9000:9000'
    volumes:
        - ./html:/var/www/html
    environment:
        - WORDPRESS_DB_NAME=testdb
        - WORDPRESS_DB_USER=test
        - WORDPRESS_DB_HOST=mysql
        - WORDPRESS_DB_PASSWORD=TestDb123
    links:
        - mysql
    restart: always

Создание папки nginx

Добавьте следующий файл в папку nginx

wordpress.conf

server {
     listen 80;
     server_name example.com;

     root /var/www/html;
     index index.php;

     access_log /var/log/nginx/access.log;
     error_log /var/log/nginx/error.log;

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

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

RUN

docker-compose up -d

Теперь вы будетепосмотрите содержимое в html-папке, где вы можете увидеть код, связанный с WordPress.

0 голосов
/ 05 июня 2018

Попробуйте указать абсолютный путь в томе [например, / home / user / wp] и проверьте, была ли создана папка "wp".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...