Bildposting mit [Docker + WordPress + MySQL] zulassen

Ja, es ist Haru Usagi. Dieses Mal habe ich ein WordPress-Projekt bei der Arbeit und bin festgefahren, also werde ich ein Memo schreiben. Ich denke, dass Leute, die normalerweise WordPress berühren, dies wissen.

Annahme

Wo ich diesmal feststeckte

Ich werde sie der Reihe nach anschauen. Erste Verzeichnisstruktur

wp-template
├── docker-compose.yml
├── wp-config.php
└── wp-content
    ├── index.php
    ├── languages
    ├── plugins
    ├── themes
    ├── upgrade
    └── uploads

Im schlimmsten Fall funktioniert es, wenn Sie die Ordner "docker-compose.yml" und "wp-content" haben. Der Inhalt von "wp-content" wird von "docker-compose up" automatisch als der ursprüngliche konfiguriert. wp-config.php ist eine erforderliche Datei für WordPress. Wird es während der Installation automatisch generiert? Es sieht so aus, aber in meinem Fall hat es nicht geklappt, also offiziell wp-config.php Ich habe es als Referenz geändert.

docker-compose.yml


version: "3"

services:
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: somewordpress #Irgendein
      MYSQL_DATABASE: wordpress #Irgendein
      MYSQL_USER: wordpress #Irgendein
      MYSQL_PASSWORD: wordpress #Irgendein

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - "8000:80"
    restart: always
    environment:
      WORDPRESS_DB_HOST: db:3306 
      WORDPRESS_DB_USER: wordpress #Irgendein
      WORDPRESS_DB_PASSWORD: wordpress #Irgendein
    volumes:
      - ./wp-content:/var/www/html/wp-content
      - ./wp-config.php:/var/www/html/wp-config.php
volumes:
  db_data:

Ich dachte, es wäre einfacher, DB-bezogene Elemente in .env zu verwalten. Wenn Sie jetzt auf [http: // localhost: 8000 /](http: // localhost: 8000 /) zugreifen, sehen Sie den bekannten WordPress-Bildschirm.

Was Sie normalerweise tun können.

Nach dem Erstellen einer WordPress-Umgebung mit Docker kann ich keine Bilder mit WordPress hochladen

Ich kann kein Bild hochladen, um es in WordPress zu posten! Als ich es nachgeschlagen habe, musste ich anscheinend einen Satz in wp-config.php einfügen.

wp-config.php


define('DB_NAME', 'wordpress'); #docker-compose.Was wurde mit yml eingestellt
define('DB_USER', 'wordpress'); #docker-compose.Was wurde mit yml eingestellt
define('DB_PASSWORD', 'wordpress'); #docker-compose.Was wurde mit yml eingestellt

define('DB_HOST', 'db'); #docker-compose.MySQL-Containername in yml definiert
define('WP_DEBUG', true);
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');

define('AUTH_KEY',         'put your unique phrase here');
define('SECURE_AUTH_KEY',  'put your unique phrase here');
define('LOGGED_IN_KEY',    'put your unique phrase here');
define('NONCE_KEY',        'put your unique phrase here');
define('AUTH_SALT',        'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT',   'put your unique phrase here');
define('NONCE_SALT',       'put your unique phrase here');
define('UPLOADS', 'wp-content/uploads' ); #Füge das hinzu

$table_prefix = 'wp_';

if ( !defined('ABSPATH') )
	define('ABSPATH', dirname(__FILE__) . '/');

require_once(ABSPATH . 'wp-settings.php');

Dies ist die endgültige Form des Codes. Der Code, der unten hinzugefügt werden musste.

define('UPLOADS', 'wp-content/uploads' );

Der Container startet überhaupt nicht

sed: kann nicht umbenennen ./xxxxx Gerät oder Ressource belegt wird angezeigt und der Container startet nicht. Als ich es nachgeschlagen habe, kam der folgende Artikel heraus. Das ist die Lösung. Die Weisheit unserer Vorfahren ist wunderbar. https://qiita.com/suzukihi724/items/e56fa9516639c6c90a33

abschließend

Ich benutze WordPress seit meiner Studienzeit, aber es war nicht schwierig, weil es eine MAMP-Umgebung war. Dieses Mal habe ich die Umgebung mit Docker erstellt, sodass ich dachte, ich könnte den tiefen Teil von WordPress verstehen. Ich denke, dass es normaler Inhalt für diejenigen war, die ihn normalerweise berühren. .. ..

Recommended Posts

Bildposting mit [Docker + WordPress + MySQL] zulassen
Lesen Sie die Dump-Datei mit MySQL von Docker
WordPress mit Docker Compose unter CentOS 8
[Umgebungskonstruktion mit Docker] Rails 6 & MySQL 8
Starten Sie Apache mit dem PHP-Apache-Image des Dockers neu
Aktualisieren Sie MySQL mit Docker von 5.7 auf 8.0
Mit Docker auf Heroku bereitstellen (Rails 6, MySQL)
Bearbeiten Sie MySQL mit Befehlen in der Docker-Umgebung
Proxyserver durch Tintenfisch mit Docker-Image
Erstellen einer Umgebung für Laravel + MySQL + phpMyadmin mit Docker
Erstellen Sie mit Docker eine Wordpress-Entwicklungsumgebung
Das Bild flog beim Aktualisieren von Docker mit WSL2
Implementieren Sie eine einfache CRUD mit Go + MySQL + Docker
Ich habe versucht, AdoptOpenJDK 11 (11.0.2) mit dem Docker-Image zu überprüfen
Erstellen Sie mit Docker schnell eine WordPress-Entwicklungsumgebung
So geben Sie jemandem Ihr Image mit Docker
Aktualisieren Sie das Container-Image mit KUSANAGI Runs on Docker
Starten Sie das Docker-Image mit den Anfangsdaten, die mit Docker-Compose eingefügt wurden
Konstruktions- und Entwicklungsverfahren für lokale WordPress-Umgebungen mit Docker
Bis ich versuche, Apache Kafka mit Docker-Image auszuführen
Build Rails (API) x MySQL x Nuxt.js Umgebung mit Docker
Erstellen Sie mit Docker ein Android-Image für Orange Pi 4
Starten Sie MariaDB mit Docker
Explodiere Docker mit WSL2
Verwenden Sie Puphpeteer mit Docker
Bedienen Sie Emby mit Docker
Nicht verwendetes Docker-Image löschen
Führen Sie Payara mit Docker aus
[Rails] Entwicklung mit MySQL
Einweg-PHP mit Docker
Vielleicht funktioniert es! Erstellen Sie ein Bild mit Docker und teilen Sie es!
Erstellen Sie ein Docker-Image mit installiertem Oracle JDK (yum
Registrieren Sie Ihr eigenes Docker-Image in ECR mithilfe der AWS CLI
So erstellen Sie mit Docker ~ Express ~ eine [TypeScript + Vue + Express + MySQL] -Umgebung
Erstellen Sie eine Entwicklungsumgebung für Rails-Anwendungen mit Docker [Docker, Rails, Puma, Nginx, MySQL]
docker-compose.yml, wenn Sie MySQL auf Docker laufen lassen möchten
Maßnahmen für Berechtigungen beim Erstellen von MySQL mit Docker auf WSL2