Разворачиваем NGINX в Docker

Containers 22-06-2021, 16:56 sobir 3 650 0


Устанавливаем движок Docker'a в CentOS:
yum-config-manager     --add-repo     https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce docker-ce-cli containerd.io -y

Запускаем движок Docker'a:
systemctl start docker

Проверяем статус:
systemctl status docker

Содержимое Dockerfile:
vi Dockerfile-Ubuntu-Nginx
############################################################
# Dockerfile to build Nginx Installed Containers
# Based on Ubuntu with LTS
############################################################

# Set the base image to Ubuntu 
FROM ubuntu:20.04

# File Author / Maintainer
MAINTAINER Sobir Akbarov <[email protected]>

# Update the repository
RUN apt-get update

# Install necessary tools
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get install apt-utils dialog iproute2 dnsutils inetutils-ping ncat nano less wget -y

# Download and install NGINX
RUN apt-get install nginx -y  

# Remove the default NGINX configuration file
RUN rm -v /etc/nginx/nginx.conf

# Copy a configuration file from the current directory
ADD nginx.conf /etc/nginx/

# Append "daemon off;" to the ending of the configuration
RUN echo "daemon off;" >> /etc/nginx/nginx.conf

# Expose ports
EXPOSE 80
EXPOSE 443

# Set the default command to execute
# when creating a new container
CMD service nginx start

Содержимое nginx.conf:
vi nginx.conf
user  www-data;
pid   /run/nginx.pid;
worker_processes  auto;
worker_rlimit_nofile 65535;
error_log  /var/log/nginx/error.log warn;
include /etc/nginx/modules-enabled/*.conf;

events {
    worker_connections 65535;
    use epoll;
    multi_accept on;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    server_names_hash_bucket_size 64;
    server_tokens off;
    gzip  on;

    server {
        listen       0.0.0.0:80 default_server;
        server_name  localhost;
        root	     /var/www/html;

        location / {
            deny all;
        }

        error_page 404 /404.html;
    	    location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
    	    location = /50x.html {
        }
    }    

    include /etc/nginx/conf.d/*.conf;
}

Выполняем сборку образа командой:
docker build -f Dockerfile-Ubuntu-Nginx -t nginx:custom .

Просмотр доступных образов:
docker images

Запускаем образ nginx:
docker run --rm -d --name web -v /data/app:/var/www/html -p 0.0.0.0:80:80 nginx:custom

Проверяем запущенный процесс контейнера:
docker ps
Похожие новости
How to install Docker and Compose on AlmaLinux

Quick setup docker and docker-compose with a simple bash script....

Подробнее
Разворачиваем LEMP-стэк на контейнерах Docker

Контейнеризируем сервисы LEMP с помощью docker-compose....

Подробнее
Запуск systemd в контейнере в CentOS 8 / RHEL 8

Запускаем systemd в контейнере Podman’а....

Подробнее
How to deploy Zimbra Mail server with Docker and Compose

Quick setup Zimbra Mail server with Docker and Compose....

Подробнее
Настройка частного реестра Docker Private Registry

Создаем свой репозиторий образов контейнеров Docker....

Подробнее
Поднимаем ocserv с аутентификацией LDAP

Поднимаем VPN сервер OpenConnect (ocserv) в контейнере Docker с аутентификацией пользователей из Microsoft...

Подробнее
Комментарии (0)
Новые комментарии
sobir8 ноября 2024 12:42

Цитата: FidoNet Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные

img
К комментарию
FidoNet7 ноября 2024 03:26

Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные статьи что находил

img
К комментарию
sobir27 октября 2024 19:02

Цитата: FidoNet Цитата: sobir Цитата: FidoNet Можт быть дело в

img
К комментарию
FidoNet25 октября 2024 22:04

Цитата: sobir Цитата: FidoNet Можт быть дело в dnsmasq.service? Ошибка Failed

img
К комментарию
sobir25 октября 2024 16:48

Цитата: FidoNet Цитата: sobir Цитата: FidoNet Спасибо за статью. Остальные

img
К комментарию
FidoNet20 октября 2024 12:12

Можт быть дело в dnsmasq.service? Ошибка Failed to set DNS configuration: Unit

img
К комментарию
Все комментарии
Какой дистрибутив Linux вы часто используете?
Календарь
«    Ноябрь 2024    »
ПнВтСрЧтПтСбВс
 123
45678910
11121314151617
18192021222324
252627282930 
Подпишись на канал