Ошибка docker-compose при запуске приложения netcore-реагировать - PullRequest
0 голосов
/ 04 октября 2018

Когда я создаю свое приложение без использования docker-compose:

docker build -t aspnetapp .
docker run -d -p 8080:80 --name myapp aspnetapp

, контейнер с докером работает нормально.Но когда я пытаюсь запустить его, используя docker-compose up, образ создается успешно, но веб-сайт выдает ошибки при загрузке.

dockerfile:

FROM microsoft/dotnet:sdk AS build-env
WORKDIR /app

RUN curl -sL https://deb.nodesource.com/setup_10.x |  bash -
RUN apt-get install -y nodejs

# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore

# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out

# Build runtime image
FROM microsoft/dotnet:aspnetcore-runtime
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "app.dll"]

docker-compose:

version: '3.4'

  services:
    app:
      image: aspnetapp     
      build: ./app
      ports:
        - "8080:80"
AggregateException: One or more errors occurred. (One or more errors occurred. (Failed to start 'npm'. To resolve this:.

[1] Ensure that 'npm' is installed and can be found in one of the PATH directories.
Current PATH enviroment variable is: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Make sure the executable is in one of those directories, or update your PATH.

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

удаление

environment: - ASPNETCORE_ENVIRONMENT=Development 

из файла compose.override исправило все это.Я не уверен, почему это проблема.

0 голосов
/ 04 октября 2018

Ваш Dockerfile находится в ./ или ./app?Если он находится в ./, измените docker-compose.yml на build: ./

РЕДАКТИРОВАТЬ

Я только что понял, что вы указываете image и build в вашем докере-compose.yml;избавиться от image.

...