У меня есть файл конфигурации Dockerfile и пользовательские Nginx (в той же директории с Dockerfile) следующим образом:Как запустить контейнер nginx docker с настраиваемой конфигурацией?
Dockerfile:
FROM nginx
COPY nginx.conf /etc/nginx/nginx.conf
nginx.conf файла:
upstream myapp1 {
least_conn;
server http://domain.com:81;
server http://domain.com:82;
server http://domain.com:83;
}
server {
listen 80;
location/{
proxy_pass http://myapp1;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Я бегу эти две команды:
docker --tls build -t nginx-image .
docker --tls run -d -p 80:80 --name nginx nginx-image
Тогда я chec вытащил все запущенные контейнеры, но он не появился. Когда я искал журнал Nginx контейнера, я нашел это сообщение об ошибке:
[Экстрен] 1 # 1: неизвестная директива "вверх" в /etc/nginx/nginx.conf:1 Nginx: [Экстрен] неизвестное директива «вверх по течению» в /etc/nginx/nginx.conf:
Что мне не хватает?
Это не выглядит как настоящий главным Nginx. файл conf, файл, который вы опубликовали, должен находиться под директивой 'http', скорее всего, в каталоге'/etc/nginx/conf.d/'добавлена строка include в директиве http. –