Docker installieren
Wenn Sie von Docker gehört haben, kennen Sie vielleicht seine Fähigkeit, Ihnen beim Erstellen von Anwendungen in einer versiegelten Umgebung zu helfen. Dies ist hilfreich, da alle Änderungen, die zwischen Ihrem Entwicklercomputer und Ihrem Produktionscomputer auftreten können, wie z. B. einem VPS-Server von Hostwinds, eliminiert werden.
So installieren Sie Docker
Installieren Sie Docker mit diesem Befehl:
apt-get install docker
Die Container-Technologie ist beim Abdichten einer Umgebung von Vorteil, aber wenn Sie Dinge wie SSL oder andere Anwendungen konfigurieren müssen, kann dies zu zusätzlicher Komplexität führen.
Installieren von Nginx
Nginx (ausgesprochen „Engine-ex“) ist ein hochgradig konfigurierbarer Webserver. Das macht es großartig für Dinge, die einen sogenannten „Reverse-Proxy“ einrichten, was einfach bedeutet, dass dieser Webserver Anfragen entgegennimmt und sie an unsere Docker-Container weiterleitet. Fügen Sie dies Ihrem Hostwinds VPS hinzu mit:
apt-get install nginx
Einen einfachen Apache-Container einrichten
Dazu verwenden wir das offizielle Apache-Image auf dem Docker-Hub. Die Dokumentation finden Sie hier.
Wie in der Dokumentation erwähnt, müssen wir ein DockerFile erstellen.
Schreiben Sie mit einem Texteditor wie nano (nano apache. docker) eine Datei mit folgendem Inhalt:
FROM httpd:2.4
COPY ./index.html /usr/local/apache2/htdocs/
Erstellen Sie nun eine Datei namens index.html und fügen Sie diese in ihren Inhalt ein:
<h1> Hello World! </h1>
Es ist möglich, anstelle der Indexdatei eine beliebige statische Seite oder sogar ein Verzeichnis zu verwenden. Der Einfachheit halber ist eine einzelne HTML-Datei in Ordnung. Sobald die Datei geschrieben ist, führen Sie diese Befehle aus, um die Docker-Datei zu erstellen.
docker build -t apache-demo
docker run -dit --name demo-web -p 8080:80 apache-demo

Der Besuch Ihres Servers unter [IhreDomain:8080] oder [Ihre IP]:8080 sollte dazu führen, dass diese Seite in Ihrem Webbrowser angezeigt wird
Nginx als Reverse-Proxy konfigurieren
Wenn der Docker-Container für die Bereitstellung Ihrer Dateien eingerichtet ist, können wir Nginx einrichten. Auf diese Weise können wir die Konfiguration des Containers größtenteils in Ruhe lassen und ihn hinter Nginx ablegen. Bearbeiten Sie /etc/nginx/nginx.conf und fügen Sie diesen Code hinzu:
server {
server_name [YOUR.DOMAIN.NAME];
listen 80;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080;
}
}
Von hier aus nimmt NGINX alle öffentlichen Anfragen entgegen und der Apache-Container stellt Ihre Dateien bereit.