Bereid je voor om het forum te migreren naar een Docker-omgevingsapplicatie; om de volgende migratie te vergemakkelijken, voer je simpelweg een paar commando's in om de vorige forumgegevens naar de nieuwe server te migreren. Dit artikel gebruikt Docker om een nieuw Discuz-forum op te bouwen om de situatie te testen.
Voor de handleiding over het installeren van Docker in een Linux-omgeving, zie het volgende:
Installeer de MySQL-app
Installeer MySQL Database versie 5.7.34 met het volgende commando:
Nadat de uitvoering is voltooid, kun je toegang krijgen tot de IP:3306-poort van de hostmachine, en het account en wachtwoord zijn beide :root
Installeer de phpMyAdmin-app
phpMyAdmin is een gratis softwaretool geschreven in PHP die is ontworpen om het beheer van MySQL via het web te verzorgen. phpMyAdmin ondersteunt een breed scala aan bewerkingen met MySQL en MariaDB. Veelgebruikte bewerkingen (het beheren van databases, tabellen, kolommen, relaties, indexen, gebruikers, permissies, enz.) kunnen via de gebruikersinterface worden uitgevoerd, terwijl je nog steeds elke SQL-instructie direct kunt uitvoeren.
Het commando is als volgt:
Nadat de uitvoering is voltooid, kunt u via een browser toegang krijgen tot het IP:8081 van de host en het MySQL-account en wachtwoord invoeren, zoals weergegeven in de onderstaande figuur:
Installeer de Redis-app
Omdat Discuz sommige content kan instellen om te cachen naar redis, waardoor de toegangssnelheid en prestaties verbeteren, is het erg handig voor webmasters die het nodig hebben om de redis-app te installeren met het volgende commando:
Installeer de FTP-service
Discuz kan bijlagen uploaden naar externe servers via het FTP-protocol, forumbijlagen (afbeeldingen) kunnen worden benaderd via domeinnamen op tweede niveau, en domeinnamen op tweede niveau kunnen worden versneld door CDN om de laadsnelheid van websites te verbeteren.
Maak een nieuwe /data/wwwroot/ftp_data-map aan om de bijlage op te slaan en gebruik het volgende commando:
Het commando om de FTP-service te installeren met Docker is als volgt:
Het FTP-account en wachtwoord zijn: dz_itsvse/a123456
Let op: Zorg ervoor dat je de LOCAL_UMASK parameter instelt, andersNGINX zal een 403-fout zonder toestemming rapporteren bij het openen!
Upload het Discuz-programma naar de hostmachine
Maak een nieuwe /data/wwwroot/discuz-map aan en sla deze op in het siteprogramma met het volgende commando:
Na het uploaden, zoals hieronder getoond:
Installeer de php-fpm-app
Maak een nieuwe php-configuratiemap aan op de hostmachine, en het commando is als volgt:
Voor het eerst(Je kunt gewoon de bijlage van mijn bericht gebruiken, je hoeft dit niet te doen!Je moet een php-fpm-container starten en het docker cp-commando gebruiken om de configuratie te kopiëren naar de mappingmap van de host met het volgende commando:
Start een php-fpm-app met docker
Na het starten van de container moet je in de container enkele php-extensies installeren, zoals: GD, MySQL, Redis, enzovoort, anders kun je niet meer verbinding maken met de database, de Redis-cache gebruiken, images verwerken, enzovoort.
Gebruik het volgende commando om de container te betreden:
Voer de container in en voer het volgende commando uit:
Voor informatie over het installeren van GD- en Redis-extensies, raadpleeg de volgende artikelen:
Na het installeren van de extensie moet je de php5-fpm-container opnieuw opstarten voordat het effect heeft!
Ga opnieuw in de php5-fpm-container,Wijzig de toeschrijbare gebruikers en groepen in de /data/wwwroot/discuz-directory, anders wordt het niet gelezen en uitgevoerd met php-fpm! De pagina wordt leeg! Het commando is als volgt:
Maak in de map /data/wwwroot/discuz een nieuw phpinfo.php-bestand aan met het volgende commando:
php.ini De belangrijkste optimalisatie-instellingen zijn als volgt:
Standaard php-FPM-containerAfstellen van php-fpmparameters, evenals de configuratie om de php.ini in te stellen (tijdzone, maximale uploadlimiet van bestanden, enz.), kunnen worden aangeduid met:
Nginx reverse proxy php-fpm
Ik heb de nginx-service direct op de hostmachine geïnstalleerd, en ik heb hem niet via docker geïnstalleerd, je kunt de installatie als volgt bekijken:
De hoofdconfiguratie van nginx.conf is als volgt:
Browsertoegangstest:http://dev.itsvse.com:8099/phpinfo.php, zoals getoond in de onderstaande figuur:
Begin met het installeren van Discuz
Bovenstaande zijn allemaal voorbereidingen: bereid mysql, ftp, redis, nginx, php-fpm, enzovoort voor en start dan de echte installatie, access:http://dev.itsvse.com:8099/, zoals getoond in de onderstaande figuur:
Stel een MySQL-databaseverbinding op zoals weergegeven in de volgende figuur:
De installatie is voltooid, zoals hieronder getoond:
Stel de afstandsbediening voor testen in, zoals hieronder getoond:
Test of het watermerk op de afbeelding normaal is, zoals hieronder getoond:
Pas de instelling /data/wwwroot/discuz/config/config_global.php aan om de Redis-cache te gebruiken en configureer deze als volgt:
Log in op de Redis-container en kijk of de data is gecachet, zoals weergegeven in de volgende afbeelding:
Plaats een bericht om te testen of de afstandsbedieningsfunctie correct werkt, zoals weergegeven in de onderstaande figuur:
phpconfig.zip Het dossier is als volgt:
Toeristen, als jullie de verborgen inhoud van dit bericht willen zien, alsjeblieft Antwoord
(Einde)
|