Через docker-compose поднимаю 3 сервиса сразу: Web API (C#, Net 8), Blazor WASM (C#, Net 8), Postgre.
Встают 1 и 3 сервисы, а Blazor упорно не хочет подниматься именно при запуске через Visual Studio. То есть Blazor контейнер не поднимается в буквальном смысле, в нем нет ни единой строчки логов, хотя в списке Docker-desktop он горит как запущенный
Если запустить руками через powershell, то все 3 сервиса поднимаются и работают как должны.
Docker-compose:
services:
api-server:
depends_on:
- api-db
build:
context: .
dockerfile: src/ApiServer/Dockerfile
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=http://+:80
- DB_HOST=email-db
container_name: api-server
image: api-server:latest
restart: always
ports:
- 15000:80
api-client:
depends_on:
- api-server
build:
context: .
dockerfile: src/ApiServer.Client/Dockerfile
args:
BUILD_ENVIRONMENT: Development
container_name: api-client
image: api-client:latest
restart: always
ports:
- 15100:80
api-db:
image: postgres:17-alpine
container_name: api-db
environment:
POSTGRES_USER: test-user
POSTGRES_PASSWORD: test-password
POSTGRES_DB: Test
ports:
- 5432:5432
volumes:
- postgres_data:/var/lib/postgresql/data
restart: always
volumes:
postgres_data:
name: test_data
Dockerfile blazor приложения:
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY src/ApiServer.Client/ApiServer.Client.csproj ./ApiServer.Client/
WORKDIR /src/ApiServer.Client
RUN dotnet restore
COPY src/ApiServer.Client/. ./
COPY /modules /modules
RUN dotnet publish -c Release -o /app/publish
FROM nginx:alpine AS final
ARG BUILD_ENVIRONMENT
COPY src/ApiServer.Client/nginx.conf /etc/nginx/nginx.conf
COPY --from=build /app/publish/wwwroot /usr/share/nginx/html
RUN sed -i -e 's/TO_REPLACE_BLAZOR_ENVIRONMENT/'"$BUILD_ENVIRONMENT"'/g' /etc/nginx/nginx.conf
С чем может быть связано такое поведение и как его убрать, чтобы стартовали все 3 контейнера?