opened image

Jak zainstalować Nginx w Docker-Compose

W tym artykule omówimy, jak zainstalować Nginx za pomocą Docker Compose na serwerze hosta i skonfigurować go w taki sposób, aby można było przeglądać plik index.html w przeglądarce na porcie 9999.
 


Instalacja Docker i Docker Compose


Przed rozpoczęciem upewnij się, że masz zainstalowane Docker i Docker Compose na swoim serwerze hosta. Jeśli nie są jeszcze zainstalowane, możesz je zainstalować, postępując zgodnie z instrukcjami Docker dla Centos 7 i dla Ubuntu 20.04 oraz Docker Compose.
 


Tworzenie pliku index.html na serwerze hosta



Pierwszym krokiem jest utworzenie pliku index.html na serwerze hosta. Użyjemy go do demonstracji Nginx, gdy uruchomimy go w kontenerze Docker. Możesz utworzyć ten plik w dowolnym miejscu na serwerze hosta, gdzie masz prawa zapisu. W tym przykładzie utworzymy go w katalogu /var/www/html.

Wykonaj następujące polecenie, aby utworzyć katalog i przejść do niego:
 

mkdir -p /var/www/html && cd /var/www/html


Utwórzmy plik index.html

 

vim index.html

 


Wstawmy do niego poniższy kod:

 

 

<!DOCTYPE html>
<html>
<head>
    <title>Hello, Nginx!</title>
</head>
<body>
    <h1>Hello, Nginx!</h1>
    <p>This is a test page served by Nginx in a Docker container.</p>
</body>
</html>

 


 

Zapisz plik w dowolnym dogodnym dla ciebie miejscu na serwerze hosta. W tym przykładzie zapiszemy plik w katalogu /var/www/html.
 


Tworzenie pliku docker-compose.yaml



Musimy utworzyć plik docker-compose.yaml, w którym zdefiniowany jest kontener Nginx i jego konfiguracja. Ten plik można utworzyć w dowolnym miejscu na serwerze hosta, gdzie masz prawa zapisu. W tym przykładzie utworzymy go w katalogu /opt/nginx.

Wykonaj następujące polecenie, aby utworzyć katalog i plik:

 

 

mkdir -p /opt/nginx && cd /opt/nginx
vim /opt/nginx/docker-compose.yaml


Dodaj następującą zawartość do pliku docker-compose.yaml:

 

version: '3'

services:
  nginx:
    image: nginx:latest
    ports:
      - "9999:80"
    volumes:
      - /var/www/html:/usr/share/nginx/html
    restart: always

 


 

dzie:

services - określa listę usług, które chcemy uruchomić za pomocą Docker Compose.
nginx  - jest nazwą usługi, którą chcemy uruchomić.
image - określa obraz Docker, którego chcemy użyć. W tym przypadku używamy oficjalnego obrazu Nginx, oznaczonego tagiem latest.
ports - określa mapowanie portów między maszyną hosta a kontenerem. W tym przypadku mapujemy port 9999 na maszynie hosta na port 80 w kontenerze.
volumes - określa wolumin, którego chcemy użyć do przechowywania danych wewnątrz kontenera. W tym przypadku montujemy katalog /var/www/html na maszynie hosta do katalogu /usr/share/nginx/html w kontenerze.
restart - określa, czy Docker powinien automatycznie ponownie uruchomić kontener, jeśli się zatrzyma. W tym przypadku wskazujemy, że kontener zawsze powinien się ponownie uruchamiać.

 

Uruchomienie Docker Compose



Teraz jesteśmy gotowi uruchomić kontener Nginx za pomocą Docker Compose. Aby to zrobić, wykonaj następujące polecenie z katalogu, w którym znajduje się plik docker-compose.yaml:

 

 

docker-compose up -d

 


 

To polecenie uruchomi kontener Nginx w tle i wyświetli jego ID.

Sprawdzić, czy kontener jest uruchomiony, można za pomocą polecenia:

 

 

docker-compose ps

 



 

 

Sprawdzanie działania Nginx



Teraz możemy sprawdzić działanie Nginx, otwierając przeglądarkę internetową i przechodząc pod adres http://<adres serwera hosta>:9999. W naszym przykładzie będzie to http://IP:9999.
Jeśli wszystko jest poprawnie skonfigurowane, powinieneś zobaczyć stronę "Hello, Nginx!".

 

To wszystko! Teraz możesz używać Docker Compose do zarządzania kontenerami Nginx i innych aplikacji na swoim serwerze hosta. 

Sugerujemy również inne przydatne artykuły: