docker команда запуска заканчивается в: nginx: [emerg] неизвестная директива «events» в /etc/nginx/nginx.conf:1 - PullRequest
0 голосов
/ 30 апреля 2020

Я установил nginx -extras из оболочки Ubuntu bash на мой рабочий стол * ОС 1018 * 10 Требуется развернуть контейнер docker для ASP. NET Core 3.1 Blazor веб-сборки приложение для обслуживания веб-страниц stati c. Мой nginx .conf:

 events { }
   http {
      include mime.types;
      types {
         application/wasm wasm;
       }
     server {
        listen 80;
        index index.html;
        location / {
           root /var/www/web;
           try_files $uri $uri/ /index.html =404;
        }
     }
}

Dockerfile:

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app
COPY . ./
RUN dotnet publish -c Release -o output

FROM nginx:alpine
WORKDIR /var/www/web
COPY --from=build-env /app/output/wwwroot .
COPY nginx.conf /etc/nginx/nginx.conf
EXPOSE 80

Моя команда сборки была успешной.

Однако, когда я хотел создать контейнер с помощью команды : docker run -p 8080: 80 docker -wasm-blazor Это выдало мне ошибку:

[emerg] 1 # 1: неизвестная директива "events" в / etc / nginx / nginx .conf: 1 nginx: [emerg] неизвестная директива "events" в /etc/nginx/nginx.conf:1

Я очень плохо знаком с nginx и контейнерностью , поэтому любая помощь будет высоко оценена. Спасибо.

1 Ответ

0 голосов
/ 04 мая 2020

Я решил проблему, исключив пользовательский файл nginx .conf для копирования поверх файла nginx .conf по умолчанию, удалив последнюю строку из файла Docker. Теперь мой dockerfile выглядит следующим образом: ОТ mcr.microsoft.com/dotnet/core/sdk:3.1 КАК build-env WORKDIR / app COPY. ./ RUN do tnet publi sh - c Выпуск -o вывод

ОТ nginx WORKDIR / usr / share / nginx / html COPY --from = build-env / app / output / wwwroot/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...