Heim >Betrieb und Instandhaltung >Docker >Was ist eine Lampe in Docker?
In Docker bezieht sich LAMP auf eine Kombination aus Linux (Betriebssystem), Apache HTTP-Server, MySQL (Datenbanksoftware wie MariaDB) und PHP (Perl oder Python), die im Allgemeinen zum Aufbau einer Webserverumgebung verwendet wird.
Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Docker-1.13.1-Version, Dell G3-Computer.
LAMP bezieht sich auf die Kombination aus Linux (Betriebssystem), Apache HTTP-Server, MySQL (bezieht sich manchmal auch auf MariaDB, Datenbanksoftware) und PHP (bezieht sich manchmal auch auf Perl oder Python), die sich im Allgemeinen sehr gut für den Aufbau eines Webs eignet Serverumgebung.
Im Folgenden wird beschrieben, wie Sie mit Docker einen Container mit LAMP-Komponenten erstellen.
Laden Sie das LAMP-Bild herunter
Suchen Sie nach LAMP-Bildern, die häufig auf Docker Hub gesammelt oder verwendet werden. Der Autor empfiehlt, das Tutum-/Lampenbild auszuwählen:
# sudo docker search -s 10 lamp tutum/lamp Out-of-the-box LAMP image (PHP+MySQL) 67 执行docker pull命令,下载镜像: # sudo docker pull tutum/lamp
Verwenden Sie die Standardmethode, um den LAMP-Container zu starten
Verwenden Sie das heruntergeladene Bild, um einen Container zu starten, und ordnen Sie den 8080-Port und den 3306-Port des Containers zu:
# sudo docker run -d -p 8080:80 -p 3306:3306 tutum/lamp # docker ps 使用curl命令测试,可以查看到默认的应用已经启动: # curl http://127.0.0.1:8080
Stellen Sie Ihre eigene PHP-Anwendung bereit
Der Standardcontainer startet eine Helloword-Anwendung. Leser können die Docker-Datei bearbeiten, um basierend auf diesem Image ein benutzerdefiniertes LAMP-Anwendungsimage zu erstellen.
Erstellen Sie ein neues Arbeitsverzeichnis lamp auf dem Host-Host:
# mkdir lamp # cd lamp # touch Dockerfile
Erstellen Sie eine Docker-Datei im PHP-Verzeichnis mit dem Inhalt:
FROM tutum/lamp:latest RUN rm -fr /app &&git clone https://github.com/username/customapp.git /app #这里将https://github.com/username/customapp.git 地址替换为你自己的项目地址 EXPOSE 80 3306CMD ["/run.sh"]
Erstellen Sie ein Bild und nennen Sie es dockerpool/my-lamp-app:
# docker build -t dockerpool/my-lamp-app . 利用新创建镜像启动容器,注意启动时候指定-d参数,让容器后台运行: # docker run -d -p 8080:80 -p 3306:3306 dockerpool/my-lamp-app 在本地主机上使用curl看一下自己的应用程序是不是已经正确启动: # curl http://127.0.0.1:8080/
In PHP Stellen Sie eine Verbindung zur Datenbank im Programm her
1. Greifen Sie auf die MySQL-Datenbank im heruntergeladenen Tutum-/Lampenbild zu. Für lokale Verbindungen ist kein Kennwort erforderlich Zugriff auf die Datenbank im Code Ganz einfach:
<?php $mysql = new mysqli("localhost", "root"); echo "MySQL Server info: ".$mysql->host_info; ?>
2. Greifen Sie auf die MySQL-Datenbank außerhalb des Containers zu
Die Standard-MySQL-Datenbank unterstützt keine Remote-Anmeldung durch den Root-Benutzer, sodass der Root-Benutzer außerhalb nicht direkt auf die MySQL-Datenbank zugreifen kann Der Behälter.
Wenn Sie einen Container zum ersten Mal mit dem Tutum/Lamp-Image starten, wird automatisch ein MySQL-Benutzer namens admin erstellt und ein zufälliges Passwort generiert. Dieses Passwort kann mit dem Docker-Logs-Befehl abgerufen werden:# sudo docker logs 9cb
Empfohlenes Lernen: „
Docker-Video-TutorialDas obige ist der detaillierte Inhalt vonWas ist eine Lampe in Docker?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!