ZALOGUJ
    opened image

    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: