1. Experimentelle UmgebungSystem: centos7 IP: 192.168.238.133 #Firewall ausschalten [root@localhost ~]# systemctl stop firewalld [root@localhost ~]# systemctl Firewall deaktivieren [root@localhost ~]# setenforce 0 #DNS hinzufügen [root@localhost ~]# cat /etc/resolv.conf Nameserver 114.114.114.114 #Ändern Sie den Hostnamen [root@localhost ~]# hostnamectl set-hostname docker-lnmp [root@localhost ~]# su 2. Docker-Quelle installieren#Abhängige Umgebung installieren [root@docker-lnmp ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 #Installieren Sie die Ali-Docker-Quelle [root@docker-lnmp ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 3. Docker installieren[root@docker-lnmp ~]# yum install -y docker-ce #Community-Version installieren[root@docker-lnmp ~]# systemctl enable docker #Automatischen Start einrichtenSymlink von /etc/systemd/system/multi-user.target.wants/docker.service nach /usr/lib/systemd/system/docker.service erstellt. [root@docker-lnmp ~]# systemctl start docke #Dienst starten#Dockerfile-Verzeichnis erstellen[root@docker-lnmp ~]# mkdir docker && cd docker #MySQL- und Nginx-Dockerfile-Verzeichnisse erstellen [root@docker-lnmp docker]# mkdir nginx mysql 4. Nginx und PHP bereitstellen1. Softwarepaket und Konfigurationsdatei hochladen/dekomprimieren#Entpacken Sie das Softwarepaket [root@docker-lnmp nginx]# tar zxvf wordpress-4.9.4-zh_CN.tar.gz [root@docker-lnmp nginx]# tar zxvf nginx-1.12.2.tar.gz [root@docker-lnmp nginx]# tar zxvf libmcrypt-2.5.7.tar.gz [root@docker-lnmp nginx]# tar zxvf php-5.5.38.tar.gz 2. Erstellen Sie ein Dockerfile[root@docker-lnmp nginx]# vim Dockerfile VON docker.io/centos:7 Führen Sie den Befehl yum -y update aus. RUN yum -y installiere gcc gcc-c++ openssl-devel openssl autoconf cmake autoconf zlib zlib-devel libtool pcre pcre-devel wget net-tools make FÜHREN SIE DEN Anweisungsvorgang aus: groupadd -g 900 nginx && useradd nginx -g nginx -s /sbin/nologin VON docker.io/centos:7 Führen Sie den Befehl yum -y update aus. RUN yum -y installiere gcc gcc-c++ openssl-devel openssl autoconf cmake autoconf zlib zlib-devel libtool pcre pcre-devel wget net-tools make FÜHREN SIE DEN Anweisungsvorgang aus: groupadd -g 900 nginx && useradd nginx -g nginx -s /sbin/nologin HINZUFÜGEN nginx-1.12.2 nginx-1.12.2 AUSFÜHREN cd /nginx-1.12.2/ && ./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-http_ssl_module --with-http_gzip_static_module --user=nginx --group=nginx RUN cd /nginx-1.12.2/ && make && make install RUN ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ RUN sed -i '1afastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' /usr/local/nginx/conf/fastcgi_params Füge nginx.conf /usr/local/nginx/conf/ hinzu Füge wordpress /usr/local/nginx/html/wordpress hinzu Füge wp-config.php /usr/local/nginx/html/wordpress hinzu RUN yum -y installiere gcc gcc-c++ libxml2-devel libcurl-devel openssl-devel bzip2-devel openssl automake make autoconf libtool zlib-devel make pcre-devel wget net-tools HINZUFÜGEN libmcrypt-2.5.7 libmcrypt-2.5.7 AUSFÜHREN cd libmcrypt-2.5.7/&& ./configure --prefix=/usr/local/libmcrypt && make && make install HINZUFÜGEN php-5.5.38 php-5.5.38 RUN cd php-5.5.38/ && ./configure --prefix=/usr/local/php5.5 --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-fpm --enable-sockets --enable-sysvshm --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --with-mhash --with-mcrypt=/usr/local/libmcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts && make && make install RUN cd php-5.5.38 && cp php.ini-Produktion /etc/php.ini RUN cd /php-5.5.38 && cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm RUN chmod +x /etc/init.d/php-fpm && chkconfig --add php-fpm && chkconfig php-fpm auf RUN cp /usr/local/php5.5/etc/php-fpm.conf.default /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's*;pid = run/php-fpm.pid*pid = run/php-fpm.pid*g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/Benutzer = niemand/Benutzer = nginx/g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/group = nobody/group = nginx/g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/pm.max_children = 5/pm.max_children = 50/g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/pm.start_servers = 2/pm.start_servers = 5/g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/pm.min_spare_servers = 1/pm.min_spare_servers = 5/g' /usr/local/php5.5/etc/php-fpm.conf RUN sed -i 's/pm.max_spare_servers = 3/pm.max_spare_servers = 30/g' /usr/local/php5.5/etc/php-fpm.conf EXPOSE 9000 AUSSETZEN 80 3. Erstellen Sie ein Image[root@docker-lnmp nginx]# docker build -t "centos:nginx-php" . Spiegelliste anzeigen 4. Erstellen Sie einen Container und führen Sie ihn aus[root@docker-lnmp nginx]# docker run -dit -p 80:80 -m 500m --memory-swap 1G 3efb4e2c79b5 /bin/bash 49c5b69ce7012579f4b024ef6be88ff5de8057ccc7f81583fcf04f1c3ec6a79c Containerliste anzeigen 5. Starten Sie den Dienst[root@docker-lnmp nginx]# docker exec -it 49c5b69ce701 /bin/bash [root@49c5b69ce701 /]# /etc/init.d/php-fpm start && nginx [root@49c5b69ce701 /]# netstat -antp | grep php tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 32/php-fpm:master [root@49c5b69ce701 /]# netstat -antp | grep nginx tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 39/nginx: Master-pr Überprüfen Sie es: 5. MySQL bereitstellen1. Erstellen Sie ein MySQL-Dockerfile[root@docker-lnmp mysql]# vim Dockerfile VON docker.io/centos:7 RUN yum -y installiere gcc gcc-c++ make autoconf make cmake wget RUN groupadd mysql; useradd -r -M -u 3306 -s /sbin/nologin -g mysql mysql RUN mkdir /usr/local/mysql; mkdir /data/mysql -pv RUN yum install gcc gcc-c++ ncurses-devel bison bison-devel -y Führen Sie wget -c aus: http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.29.tar.gz Führen Sie den Befehl tar xf mysql-5.6.29.tar.gz -C /usr/local/src/ aus. ARBEITSVERZEICHNIS /usr/local/src/mysql-5.6.29 FÜHRE cmake aus. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DWITH-MYSQLD-LDFLAGS=-all-static -DWITH-CLIENT-LD-FLAGS=-all-static -DWITH_DEBUG=0 && gmake && gmake installieren RUN chown -R root:mysql /usr/local/mysql/ && chown -R mysql:mysql /data/mysql RUN chmod 755 /usr/local/src/mysql-5.6.29/scripts/mysql_install_db.sh RUN /usr/local/src/mysql-5.6.29/scripts/mysql_install_db.sh --basedir=/usr/local/mysql --datadir=/data/mysql --no-defaults --user=mysql AUSFÜHREN cp /usr/local/src/mysql-5.6.29/support-files/my-default.cnf /etc/my.cnf RUN cp /usr/local/src/mysql-5.6.29/support-files/mysql.server /etc/init.d/mysqld RUN chmod 775 /etc/init.d/mysqld && /etc/init.d/mysqld start RUN echo -e '#!/bin/bash\nexport PATH=$PATH:/usr/local/mysql/bin' >/etc/profile.d/mysql.sh RUN-Quelle /etc/profile EXPOSE 3306 2. Erstellen Sie ein Image[root@docker-lnmp mysql]# docker build -t "centos:mysql-5.6" . Spiegelliste anzeigen 3. Erstellen Sie einen Container und führen Sie ihn aus[root@docker-lnmp mysql]# docker run -dit -p 3306:3306 --device-write-bps /dev/sda:10M 704e5b978518 /bin/bash 960645a296e3e8795c344a8037b0641f8b5baf8e2214453214359071480c379d Containerliste anzeigen 4. Starten Sie den Dienst[root@docker-lnmp mysql]# docker exec -it 960645a296e3 /bin/bash [root@960645a296e3 mysql-5.6.29]# /etc/init.d/mysqld start MySQL wird gestartet............ ERFOLGREICH! 5. Datenbankautorisierung#Passwort ändern [root@960645a296e3 mysql-5.6.29]# mysql -uroot -p123456 Warnung: Die Verwendung eines Kennworts in der Befehlszeilenschnittstelle kann unsicher sein. FEHLER 1045 (28000): Zugriff für Benutzer „root“@„localhost“ verweigert (mit Passwort: JA) [root@960645a296e3 mysql-5.6.29]# mysqladmin -u root -p password Passwort eingeben: Neues Passwort: Neues Passwort bestätigen: #Autorisieren [root@960645a296e3 mysql-5.6.29]# mysql -uroot -p123456 mysql> Datenbank erstellen WordPress Standard-Zeichensatz UTF8 COLLATE utf8_general_ci; #WordPress-Tabelle erstellen Abfrage OK, 1 Zeile betroffen (0,00 Sek.) mysql> gewähre 'wordpress'@'%', identifiziert durch '123456', alle Privilegien für wordpress.* mit der Option 'Grant'; #Autorisierungsabfrage OK, 0 Zeilen betroffen (0,00 Sek.) mysql> Flush-Berechtigungen; #Berechtigungen aktualisieren Abfrage OK, 0 Zeilen betroffen (0,01 Sek.) Besuchen Sie: http://192.168.238.133/wordpress/index.php Dies ist das Ende dieses Artikels über die Implementierungsschritte der Docker-Bereitstellung lnmp-wordpress. Weitere relevante Inhalte zur Docker-Bereitstellung lnmp-wordpress finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Beispiel für die Einrichtung und Verwendung des HTML-Floating-Frames (Iframe lädt HTML)
>>: So stellen Sie mit Node-Red eine Verbindung zur MySQL-Datenbank her
Teil 1: Grundlagen 1. Im Gegensatz zu Pseudoklass...
Im vorherigen Artikel haben wir darüber geschrieb...
Inhaltsverzeichnis Implementierung der Statusfrei...
Führen Sie zuerst den Docker-Container aus Führen...
Inhaltsverzeichnis 1. Konzept 2. Umgebungsbeschre...
Inhaltsverzeichnis 1. Was ist ein Prototyp? 2. Pr...
Die Geschichte wiederholt sich immer überraschend...
Cursor Ein Cursor ist eine Methode zum Anzeigen o...
Die Ergebnisse sind in Windows- und Linux-Umgebun...
Vorwort Also habe ich diesen Blog geschrieben. Di...
Installations-Tutorial zur kostenlosen Installati...
Vorwort Nginx (ausgesprochen „Engine X“) ist ein ...
Kurzbeschreibung Passend für Leser: Mobile Entwic...
Es ist sehr einfach, Daten und Tabellen in MySQL ...
1. Der erste Parameter props der setUp-Funktion s...