【问题标题】:Docker: Change port number during runtimeDocker:在运行时更改端口号
【发布时间】:2020-11-07 05:47:28
【问题描述】:
FROM    openjdk:8-jre-alpine

COPY    --from=builder tmp/target/Application*.jar  app.jar

RUN     mkdir -p /app
ARG     specified_port=8090
ENV     EXPOSED_PORT=$specified_port
EXPOSE  $EXPOSED_PORT

ENTRYPOINT ["java", "-jar", "-Dspring.profiles.active=prod", "app.jar"]

在运行时如何在 docker run 期间更改端口 server.port 到 8092

docker 运行示例

docker run --net="host" -p 8092:8092 -p 9992:9992 4794973497437

【问题讨论】:

  • 为什么要这样做?使用您当前的docker run 命令,您应该能够删除--net host 选项以便Docker 端口映射实际工作,然后使用应用程序的固定端口作为第二个端口号重新映射端口-p 8092:8090

标签: spring-boot docker dockerfile docker-image


【解决方案1】:

使用环境变量

在 dockerfile 中添加这个

ENV PORT 8090

然后运行

docker run -d image_name -e "PORT=8092"

或者另一种方式是

ARG PORT

并像使用它

CMD [ $PORT]

然后像这样运行你的 docker 容器

export PORT=8092; docker run -d image_name"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-10
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 2014-08-31
    • 2022-11-16
    • 2018-04-30
    • 1970-01-01
    相关资源
    最近更新 更多