Нет доступа к запущенному docker контейнеру

Проделанные шаги:

  1. Передал через scp папку с проектом на сервер по ssh (все файлы docker уже были созданы);
  2. Перешел в папку с проектом на сервере и запустил команду docker compose -d --build;
  3. Создались 2 образа и два контейнера запущенные с портами которые указаны в docker.yml. Результат команды docker ps:
d4d32fe214e3   edmanagementsystemapp   "dotnet EdManagement…"   18 seconds ago   Up 15 seconds   8002/tcp, 0.0.0.0:8002->8080/tcp   edmanagementsystem_edmanagementsystem.app_1
8a58ab955ead   edmanagementsystemapi   "dotnet EdManagement…"   18 seconds ago   Up 15 seconds   8001/tcp, 0.0.0.0:8001->8080/tcp   edmanagementsystem_edmanagementsystem.api_1

Однако при попытке получить доступ по ip + порт получаю ошибку:

This site can’t be reached185.196.118.81 refused to connect.
Try:
Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_REFUSED

Направьте пожалуйста в правильную сторону. Что я делаю не так и что нужно сделать чтобы всё заработало? Локально всё прекрасно работает. Т.е. скорее всего проблема во взаимодействии Kernel и Nginx (я так предполагаю). Файлы docker ниже:

#Docker.yml
version: '3.4'

services:
  edmanagementsystem.app:
    image: ${DOCKER_REGISTRY-}edmanagementsystemapp
    build:
      context: .
      dockerfile: EdManagementSystem.App/Dockerfile
    ports:
      - 8002:8080

  edmanagementsystem.api:
    image: ${DOCKER_REGISTRY-}edmanagementsystemapi
    build:
      context: .
      dockerfile: EdManagementSystem.API/Dockerfile
    ports:
      - 8001:8080
  proxy:
    build: path
#App.Dockerfile
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER app
WORKDIR /app
EXPOSE 8002

FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["EdManagementSystem.App/EdManagementSystem.App.csproj", "EdManagementSystem.App/"]
COPY ["EdManagementSystem.DataAccess/EdManagementSystem.DataAccess.csproj", "EdManagementSystem.DataAccess/"]
RUN dotnet restore "./EdManagementSystem.App/EdManagementSystem.App.csproj"
COPY . .
WORKDIR "/src/EdManagementSystem.App"
RUN dotnet build "./EdManagementSystem.App.csproj" -c $BUILD_CONFIGURATION -o /app/build

FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "./EdManagementSystem.App.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "EdManagementSystem.App.dll"]
#API.Dockerfile
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER app
WORKDIR /app
EXPOSE 8001

FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["EdManagementSystem.API/EdManagementSystem.API.csproj", "EdManagementSystem.API/"]
COPY ["EdManagementSystem.DataAccess/EdManagementSystem.DataAccess.csproj", "EdManagementSystem.DataAccess/"]
RUN dotnet restore "./EdManagementSystem.API/EdManagementSystem.API.csproj"
COPY . .
WORKDIR "/src/EdManagementSystem.API"
RUN dotnet build "./EdManagementSystem.API.csproj" -c $BUILD_CONFIGURATION -o /app/build

FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "./EdManagementSystem.API.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "EdManagementSystem.API.dll"]
#Docker-compose.override.yml
version: '3.4'

services:
  edmanagementsystem.app:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
      - ASPNETCORE_HTTP_PORTS=8002
    ports:
      - "8002:8080"
  edmanagementsystem.api:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
      - ASPNETCORE_HTTP_PORTS=8001
    ports:
      - "8001:8080"

Ответы (1 шт):

Автор решения: N0mercy -

Для начала стоит проверить порты в ufw:

sudo ufw allow 8001
sudo ufw allow 8002
sudo ufw status

Далее сами логи docker:

docker logs <container_id>

и посмотреть конфигурацию nginx

Я бы посоветовал временно отключлючить ufw, но делать осторожно

→ Ссылка