Šajā rakstā mēs apskatīsim, kā uzstādīt Nginx, izmantojot Docker Compose uz hosta servera un konfigurēt to tā, lai varētu skatīt index.html failu pārlūkā uz porta 9999.
Docker un Docker Compose uzstādīšana
Pirms sākt, pārliecinieties, ka jums ir uzstādīti Docker un Docker Compose uz jūsu hosta servera. Ja tie vēl nav uzstādīti, jūs varat tos uzstādīt, sekojot instrukcijām Docker priekš Centos 7 un priekš Ubuntu 20.04 un Docker Compose.
Index.html faila izveide uz hosta servera
Pirmais solis ir izveidot index.html failu uz hosta servera. Mēs to izmantosim, lai demonstrētu Nginx, kad to palaidīsim Docker konteinerā. Jūs varat izveidot šo failu jebkurā vietā uz hosta servera, kur jums ir rakstīšanas tiesības. Šajā piemērā mēs to izveidosim direktorijā /var/www/html.
Izpildiet sekojošo komandu, lai izveidotu direktoriju un pārietu uz to:
mkdir -p /var/www/html && cd /var/www/html
Izveidosim index.html failu
vim index.html
Ievietosim tajā zemāk norādīto kodu:
<!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>
Saglabājiet failu jebkurā jums ērtā vietā uz hosta servera. Šajā piemērā mēs saglabāsim failu direktorijā /var/www/html.
Docker-compose.yaml faila izveide
Mums ir jāizveido docker-compose.yaml fails, kurā tiek definēts Nginx konteiners un tā konfigurācija. Šo failu var izveidot jebkurā vietā uz hosta servera, kur jums ir rakstīšanas tiesības. Šajā piemērā mēs to izveidosim direktorijā /opt/nginx.
Izpildiet sekojošo komandu, lai izveidotu direktoriju un failu:
mkdir -p /opt/nginx && cd /opt/nginx
vim /opt/nginx/docker-compose.yaml
Pievienojiet sekojošo saturu docker-compose.yaml failam:
version: '3'
services:
nginx:
image: nginx:latest
ports:
- "9999:80"
volumes:
- /var/www/html:/usr/share/nginx/html
restart: always
Kur:
services - definē servisu sarakstu, kurus mēs vēlamies palaist, izmantojot Docker Compose.
nginx - ir servisa nosaukums, kuru mēs vēlamies palaist.
image - definē Docker attēlu, kuru mēs vēlamies izmantot. Šajā gadījumā mēs izmantojam oficiālo Nginx attēlu, kurš ir marķēts ar latest.
ports - definē portu kartēšanu starp hosta mašīnu un konteineru. Šajā gadījumā mēs kartējam portu 9999 uz hosta mašīnas uz portu 80 konteinerā.
volumes - definē apjomu, kuru mēs vēlamies izmantot datu glabāšanai konteinerā. Šajā gadījumā mēs montējam direktoriju /var/www/html uz hosta mašīnas direktorijā /usr/share/nginx/html konteinerā.
restart - definē, vai Docker automātiski jārestartē konteiners, ja tas apstājas. Šajā gadījumā mēs norādām, ka konteiners vienmēr jārestartē.
Docker Compose palaišana
Tagad mēs esam gatavi palaist Nginx konteineru, izmantojot Docker Compose. Lai to izdarītu, izpildiet sekojošo komandu no direktorijas, kur atrodas docker-compose.yaml fails:
docker-compose up -d
Šī komanda palaidīs Nginx konteineru fonā un izvadīs tā ID.
Pārbaudīt, vai konteiners ir palaists, var ar komandu:
docker-compose ps
Nginx darbības pārbaude
Tagad mēs varam pārbaudīt Nginx darbību, atverot tīmekļa pārlūkprogrammu un pārejot uz adresi http://<hosta servera adrese>:9999. Mūsu piemērā tas būs http://IP:9999.
Ja viss ir pareizi konfigurēts, jums vajadzētu redzēt lapu "Hello, Nginx!".
Tas ir viss! Tagad jūs varat izmantot Docker Compose, lai pārvaldītu Nginx un citu lietotņu konteinerus uz jūsu hosta servera.
Mēs iesakām arī citus noderīgus rakstus:
- List of important commands for working with Docker-compose
- How to install Nginx in Docker-Compose
- How to Deploy Any Version of PHP in Docker-Compose