diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8516a44 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +db_data/ +wp-content/uploads/ +wp-content/themes/twentyseventeen/ +.buildconfig \ No newline at end of file diff --git a/README.md b/README.md index c2b7ae5..2d23746 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,49 @@ # Wordpress +## Benutzerrechte auf Host +Zum Ermöglichen serverseitiger/lokaler Arbeiten an Themes, Plugins und anderen Änderungen bei gleichzeitiger Dashboard-Kompatibilität über das Wordpress Backend. +``` +sudo chown -R www-data:www-data wp-content/themes/ +mkdir wp-content/uploads/ +sudo chown -R www-data:www-data wp-content/uploads/ +sudo chmod g+w wp-content/uploads/ wp-content/themes/ +sudo chown www-data:www-data wp-cli.phar +sudo chmod g+x wp-cli.phar +``` + +> ggf. lokalen Computer-Benutzer der www-data Gruppe hinzufügen: +``` +sudo usermod -a -G www-data +``` +>→ Computer-Benutzer neu einloggen! + +## Datenbank +### Datenbank importieren +``` +docker exec -i mysql -uwordpress -pwordpress wordpress < /path/to/sql/file.sql +``` +### URL auf localhost:8000 in der Datenbank umstellen +``` +docker exec -i -u www-data wp search-replace '' 'http://localhost:8000' --skip-columns=guid +``` +### MYSQL Random Root Passwort auslesen +``` +docker logs 2>&1 | grep GENERATED +``` + + +## Wordpress-Benutzer verwalten +### Benutzer erstellen +``` +docker exec -i -u www-data wp user create --role=administrator +``` +### Benutzerpasswort ändern +Das kann aber nur im Container selbst erfolgen. +``` +wp user update --prompt=user_pass +``` + +## Notes +- download theme +- "emma" als Datenbank Client +- db.env auf Prod-Server anlegen (Variablen-Datei) \ No newline at end of file diff --git a/docker-compose-prod.yml b/docker-compose-prod.yml new file mode 100644 index 0000000..a193443 --- /dev/null +++ b/docker-compose-prod.yml @@ -0,0 +1,41 @@ +version: '3.3' + +services: + db: + image: mariadb:10.5 + container_name: wordpress-openwill-db + volumes: + - /opt/docker/wordpress-openwill/db_data:/var/lib/mysql + restart: always + environment: + - MYSQL_RANDOM_ROOT_PASSWORD='1' + - MYSQL_DATABASE=${MYSQL_DATABASE} + - MYSQL_USER=${MYSQL_USER} + - MYSQL_PASSWORD=${MYSQL_PASSWORD} + env_file: + - db.env + networks: + - backend-wordpress-openwill + + wordpress: + image: wordpress:5.4.2-apache + container_name: wordpress-openwill + ports: + - "8081:80" + restart: always + environment: + - WORDPRESS_DB_HOST=db:3306 + - WORDPRESS_DB_USER=${MYSQL_USER} + - WORDPRESS_DB_PASSWORD=${MYSQL_PASSWORD} + - WORDPRESS_DB_NAME=${MYSQL_DATABASE} + env_file: + - db.env + volumes: + - ./wp-content/themes:/var/www/html/wp-content/themes:ro + - /opt/docker/wordpress-openwill/uploads:/var/www/html/wp-content/uploads + - ./wp-cli.phar:/usr/local/bin/wp + networks: + - backend-wordpress-openwill + - nginx-proxy + depends_on: + - db \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 6f34c6d..2a82eb8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,29 +1,35 @@ -version: '3.1' +version: '3.3' services: - - app: - image: wordpress:5.4.1-php7.2-fpm + db: + image: mariadb:10.5 + container_name: wordpress-openwill-db + volumes: + - ./db_data:/var/lib/mysql restart: always ports: - - 8080:80 + - "3306:3306" environment: - WORDPRESS_DB_HOST: db - WORDPRESS_DB_USER: exampleuser - WORDPRESS_DB_PASSWORD: examplepass - WORDPRESS_DB_NAME: exampledb - volumes: - - ./wordpress:/var/www/html - depends_on: - - db + MYSQL_RANDOM_ROOT_PASSWORD: '1' + MYSQL_DATABASE: wordpress + MYSQL_USER: wordpress + MYSQL_PASSWORD: wordpress - db: - image: mariadb:10.5.3 + + wordpress: + image: wordpress:5.4.2-apache + container_name: wordpress-openwill + ports: + - "8000:80" restart: always environment: - MYSQL_DATABASE: exampledb - MYSQL_USER: exampleuser - MYSQL_PASSWORD: examplepass - MYSQL_RANDOM_ROOT_PASSWORD: '1' + WORDPRESS_DB_HOST: db:3306 + WORDPRESS_DB_USER: wordpress + WORDPRESS_DB_PASSWORD: wordpress + WORDPRESS_DB_NAME: wordpress volumes: - - ./db:/var/lib/mysql + - ./wp-content/themes:/var/www/html/wp-content/themes + - ./wp-content/uploads:/var/www/html/wp-content/uploads + - ./wp-cli.phar:/usr/local/bin/wp + depends_on: + - db \ No newline at end of file diff --git a/install-plugins.sh b/install-plugins.sh new file mode 100644 index 0000000..a7444d9 --- /dev/null +++ b/install-plugins.sh @@ -0,0 +1,9 @@ +docker exec -i -u www-data wordpress-openwill wp plugin install \\ +polylang \\ +contact-form-7 \\ +posts-in-category-widget \\ +shapepress-dsgvo \\ +wordpress-importer \\ +widget-importer-exporter +recent-posts-widget-with-thumbnails \\ +--activate \ No newline at end of file diff --git a/wp-cli.phar b/wp-cli.phar new file mode 100755 index 0000000..137e383 Binary files /dev/null and b/wp-cli.phar differ diff --git a/wp-content/themes/index.php b/wp-content/themes/index.php new file mode 100644 index 0000000..6220032 --- /dev/null +++ b/wp-content/themes/index.php @@ -0,0 +1,2 @@ + + + + +
+
+ + + +
+
+ + + + + + diff --git a/wp-content/themes/twentyseventeen-child/screenshot.png b/wp-content/themes/twentyseventeen-child/screenshot.png new file mode 100644 index 0000000..088b741 Binary files /dev/null and b/wp-content/themes/twentyseventeen-child/screenshot.png differ diff --git a/wp-content/themes/twentyseventeen-child/style.css b/wp-content/themes/twentyseventeen-child/style.css new file mode 100644 index 0000000..0369707 --- /dev/null +++ b/wp-content/themes/twentyseventeen-child/style.css @@ -0,0 +1,13 @@ +/* + Theme Name: Twenty Seventeen Child + Theme URI: https://gitea.openwill.de/Applications/Wordpress + Description: Twenty Seventeen Child Theme + Author: Timm Wille + Author URI: https://openwill.de + Template: twentyseventeen + Version: 0.1 + License: CC-BY 4.0 + License URI: https://gitea.openwill.de/Applications/Wordpress/src/branch/master/LICENSE + Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready + Text Domain: twentyseventeenchild +*/ \ No newline at end of file