【发布时间】:2022-01-12 22:37:20
【问题描述】:
这是我第一次使用 Docker 并尝试运行映像,但我需要它在端口 4242 上工作,但是当我编写命令 sudo docker run -it --rm -p 4242:5001 docker-project:v1 以及访问 https://localhost:4242/weatherforecast 时我的启动器什么都没有,它一直在端口 5001 上工作,我希望它在端口 4242 上工作。
如果可以的话,有我的 docker 文件
FROM mcr.microsoft.com/dotnet/aspnet:3.1-focal AS base
WORKDIR /app
EXPOSE 5000
ENV ASPNETCORE_URLS=http://+:5001
RUN adduser -u 5678 --disabled-password --gecos "" appuser && chown -R appuser /app
USER appuser
FROM mcr.microsoft.com/dotnet/sdk:3.1-focal AS build
WORKDIR /src
COPY ["dockerProject.csproj", "./"]
RUN dotnet restore "dockerProject.csproj"
COPY . .
WORKDIR "/src/."
RUN dotnet build "dockerProject.csproj" -c Release -o /app/buil
FROM build AS publish
RUN dotnet publish "dockerProject.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "dockerProject.dll"]
【问题讨论】:
-
在您的 dockerfile 中,您使用的是
EXPOSE 5000。根据您的问题,我了解您想公开端口 5001
标签: docker dockerfile docker-run