WordPress, Git и Docker - PullRequest
       8

WordPress, Git и Docker

1 голос
/ 24 октября 2019

Я только начал играть с WordPress, и у меня есть несколько вопросов:

  1. Я бы хотел отслеживать свои изменения с помощью Git. Насколько я исследовал, я должен отслеживать только каталоги «wp-config.php» и «wp-content». Есть ли другой способ отслеживания изменений в проекте WP?
  2. Каждый раз, когда я клонирую проект, он встречает меня на этапе установки. Я заметил, что изменения на самом деле не сохраняются, т.е. удаляются плагины или создаются страницы. После просмотра базы данных я заметил, что WP хранит страницы и дополнительную информацию в базе данных. Как я мог отследить такого рода изменения?

Примечания. Я создал среду разработки с использованием Docker и Docker-Composer следующим образом. Я хотел бы добавить страницы и выполнить настройку, а затем загрузить изменения в репозиторий git. Единственная проблема заключается в том, что WP сохраняет изменения в базе данных. Как мне справиться с этим?

version: '3'

services:
  mysql:
    image: mysql:8
    container_name: "MySQL-Database"
    restart: always
    command: "--default-authentication-plugin=mysql_native_password"
    environment:
      MYSQL_ROOT_PASSWORD: wordpress
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    volumes:
      - ./mysql_data:/var/lib/mysql

  excelsior:
    build: ./excelsior-app/
    container_name: "Wordpress-Server"
    depends_on: 
      - mysql
    restart: always
    volumes:
      - ./excelsior-app/wp-content:/var/www/html/wp-content
    environment:
      WORDPRESS_DB_HOST: mysql
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
    ports:
      - 8080:80
      - 443:443

  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    container_name: "PHP-MyAdmin"
    depends_on: 
      - mysql
    restart: always
    ports:
      - 3333:80
    environment:
      PMA_HOST: mysql
      MYSQL_ROOT_PASSWORT: wordpress 

'excelsior' следующим образом:

FROM wordpress

COPY wp-config.php /var/www/html/

1 Ответ

1 голос
/ 27 октября 2019

Причина, по которой WordPress хранит свои данные в БД, заключается в том, что большая часть этих данных находится в двоичном формате, медиа, изображениях, таблицах, индексах.

Git хорошо работает, отслеживая изменения в файлах исходного текста, Git - этоне предназначен для хранения каких-либо двоичных файлов / файлов мультимедиа / данных, поскольку отсутствует концепция отслеживания изменений в файлах мультимедиа / двоичных файлов.

Так что Git будет хорошим местом для хранения сценариев PHP и файлов конфигурациии отслеживать изменения, которые вы вносите в эти файлы.

В целях резервного копирования и восстановления или даже копирования самого последнего содержимого разработки с одного сервера WordPress на другой вы можете использовать инструмент экспорта и экспортировать весь контент в одинXML-файл, а затем сохраните его в качестве резервной копии, которая будет использоваться для восстановления всего содержимого WordPress в определенное время.

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