08.10.2026
docker compose proxy
Установка и настройка прокси-сервера в Docker Compose
Если вы хотите обеспечить безопасность и конфиденциальность своих Docker-приложений, установка прокси-сервера — один из лучших вариантов. В этом материале мы расскажем, как настроить прокси-сервер в Docker Compose, используя Docker Compose и NGINX.
Почему нужен прокси-сервер?
Прокси-сервер — это сервер, который принимает запросы от клиентов и направляет их на конкретный сервер. Это позволяет контролировать доступ к вашим приложениям и обеспечить безопасность. Кроме того, прокси-сервер можно использовать для балансирования нагрузки и повышения производительности.
Установка Docker Compose и NGINX
Для начала нам нужно установить Docker Compose и NGINX на нашем сервере. Если вы еще не установили Docker Compose, вы можете сделать это, выполнив команду:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
Для установки NGINX можно использовать официальный репозиторий:
sudo apt-get update
sudo apt-get install -y nginx
Создание файла конфигурации Docker Compose
Далее нам нужно создать файл конфигурации Docker Compose, в котором мы укажем настройки нашего проекта. Скачайте файл example.yml и добавьте в него следующую конфигурацию:
version: '3'
services:
web:
build: .
ports:
- "8080:80"
environment:
- VIRTUAL_HOST=example.com
- LETSENCRYPT_HOST=example.com
- LETSENCRYPT_EMAIL=user@example.com
depends_on:
- db
links:
- db:db
ports:
- "8080:80"
db:
image: postgres
environment:
- POSTGRES_USER=myuser
- POSTGRES_PASSWORD=mypassword
- POSTGRES_DB=mydatabase
volumes:
- db-data:/var/lib/postgresql/data
volumes:
db-data:
Настройка NGINX
Далее нам нужно настроить NGINX, чтобы он использовал прокси-сервер. Скачайте файл nginx.conf и добавьте в него следующую конфигурацию:
http {
upstream backend {
server web:8080;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
Запуск Docker Compose
Далее мы запускаем Docker Compose, используя команду:
docker-compose up -d
Результат
После запуска Docker Compose и NGINX вы сможете получить доступ к вашему приложению через прокси-сервер. Чтобы проверить, что все работает исправно, вы можете использовать команду:
curl -I http://example.com
Если все сделано правильно, вы должны увидеть ответ от NGINX, а не от основного сервера.
В этом материале мы рассказали, как настроить прокси-сервер в Docker Compose, используя Docker Compose и NGINX. Мы также рассмотрели, почему нужен прокси-сервер и как его использовать для балансирования нагрузки и повышения производительности.