Umfeld
Installieren Installieren Sie Docker-Abhängigkeiten $ sudo yum install -y yum-utils Gerätemapper-Persistent-Data lvm2 Installieren Sie docker-ce $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum installiere docker-ce $ sudo systemctl Docker starten $ docker --version $ sudo docker run hallo-welt Installieren Sie Docker-Compose $ sudo curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose $ sudo chmod +x /usr/bin/docker-compose $ docker-compose --version Schreiben Sie docker-compose.yml $ mkdir ./blog $ CD-Blog $ sudo vim docker-compose.yml Version: '3' Leistungen: db: Bild:mysql:5.7 volumes: #Datenvolume, Zuordnung lokaler Ordner - db_data:/var/lib/mysql Ports: # Wenn Sie keine Portzuordnung schreiben, kann die Außenwelt keine Verbindung zu MySQL herstellen (die WordPress-Verbindung unten ist in Ordnung) - „3306:3306“ Neustart: immer Umfeld: MYSQL_ROOT_PASSWORD: xxx MYSQL_DATABASE: WordPress MYSQL_USER: WordPress MYSQL_PASSWORD: wordpress Wordpress: depends_on: #Hängt vom oben genannten Datenbankdienst ab -db Bild: wordpress:latest Bände: - wp_site:/var/www/html Häfen: - "8000:80" Neustart: immer privilegiert: wahr Umfeld: # Sie können den obigen Dienstnamen + Port direkt verwenden, um den Link WORDPRESS_DB_HOST zu erhalten: db:3306 WORDPRESS_DB_USER: WordPress WORDPRESS_DB_PASSWORD: WordPress # Domänennamen definieren WORDPRESS_CONFIG_EXTRA: "define('WP_HOME','https://blog.amoyiki.com'); define('WP_SITEURL','https://blog.amoyiki.com');" Bände: Datenbankdaten: wp_site: Ausführen des Containers # Starten Sie $ sudo docker-compose up -d # Herunterfahren$ sudo docker-compose down Jetzt können Sie über http://ip:port darauf zugreifen. Wenn Sie feststellen, dass Sie nicht darauf zugreifen können, können Sie das Containerprotokoll auf Fehler überprüfen. $ sudo docker-compose ps Name Befehl Status Ports blog_db_1 docker-entrypoint.sh mysqld Hoch 0.0.0.0:3306->3306/tcp, 33060/tcp blog_wordpress_1 docker-entrypoint.sh apach ... Nach oben 0.0.0.0:8000->80/tcp # Das „WordPress“ am Ende ist der Name des Dienstes. Dies unterscheidet sich vom Containernamen, der zum Anzeigen von Protokollen in Docker verwendet wird. $ sudo docker-compose logs -f --tail=10 wordpress $ sudo docker-compose logs -f --tail=10 db Verwenden Sie den Host Nginx, um Docker WordPress umzukehren Die Konfigurationsdatei von nginx lautet wie folgt (irrelevanter Inhalt weggelassen) Benutzer root; # Dies liegt daran, dass der WordPress-Dateibenutzer im Docker-Container www-data ist. Server { hören Sie 80; Servername *.amoyiki.com; gibt 301 https://$host$request_uri zurück; } Upstream WordPress-Arbeitspferd { Server 127.0.0.1:8000 Fehlerzeitüberschreitung = 10 s; } Server { Servername blog.amoyiki.com; hören Sie 443 SSL; SSL aktiviert; ssl_zertifikat /ssl/pfad/fullchain.pem; ssl_zertifikatsschlüssel /ssl/pfad/privkey.pem; Zugriffsprotokoll /var/log/nginx/access.log Haupt; # Speicherort des WordPress-Datenträgers im Host-Stammverzeichnis /var/lib/docker/volumes/blog_wp_site/_data; Standort / { Proxy-Passwort http://wordpress-workhorse; Proxy_Set_Header Host $host; Proxy_Set_Header X-Real-IP $Remote_Addr; proxy_set_header X-Weitergeleitet-Für $proxy_add_x_forwarded_for; Proxy_set_header X-Forwarded-Proto https; } Standort ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { läuft am 7. Tag ab; Zugriff_Abmeldung; } Fehlerseite 500 502 503 504 /50x.html; Standort = /50x.html { Stamm-HTML; } } Fehlersammlung nginx-Fehler: Berechtigung verweigert
Zuvor verwendete mein nginx.conf-Benutzer den Standard-Nobody, der die Benutzergruppendaten von www-data in wp im Docker nicht lesen konnte. Daher habe ich den nginx-Benutzer direkt zum Root befördert, was später optimiert werden kann. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: So verwenden Sie die Typerweiterung ohne Typingscript
>>: mysql 5.7.11 winx64 anfängliche Passwortänderung
Die Protokolle in MySQL umfassen: Fehlerprotokoll...
Was ist ein Generator? Ein Generator ist ein Code...
Ich habe mir vor einiger Zeit Tik Tok angesehen u...
Vorwort Ich glaube, dass jeder beim Erlernen von ...
Manchmal ist es schön, ein paar nette Scrollbar-E...
Da die Anwendung von CentOS auf der Serverseite i...
1. Wie wird die aktuelle Uhrzeit in MySQL dargest...
vue+el-upload Dynamischer Upload mehrerer Dateien...
Dieser Artikel beschreibt die Benutzer- und Rolle...
Ursprung: Vor einigen Tagen hat ein Tester eine A...
Inhaltsverzeichnis Was ist Front-End-Routing? Wie...
Vor dem Verstecken: Nach dem Verstecken: CSS: Code...
In diesem Artikel wird der spezifische JavaScript...
Gestern Abend habe ich mir eine Interviewfrage ang...
Früher bestand das Unterstreichen in HTML darin, ...