【发布时间】:2019-02-15 07:34:11
【问题描述】:
我有一个在 Google Compute Engine 上运行的 docker 映像。该镜像包含一个在端口 9000 上运行的 Spring Boot 应用程序。
它在http://<ip>:9000 上公开,我可以访问没有任何问题。我正在尝试将公开端口配置为80,以便将 DNS 记录配置为仅指向 IP 地址。
我的问题是如何实现这一点,因为文档让我感到困惑。我正在使用在线 GCP 控制台(Web 界面)进行部署,并且没有指定 docker run -p 9000:80 命令的字段来解决我的问题(如果有,请纠正我)。
那么我需要在 Spring Boot 设置中重新映射端口吗?还是在 Docker 容器内?还是我想在 GCP 中配置一些转发规则?感谢您的澄清!
我的DOCKER 文件如下所示:
FROM gcr.io/distroless/java
VOLUME /tmp
ADD build/libs/*.jar app.jar
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-jar","app.jar"]
我正在使用 GCP 的容器优化操作系统。
【问题讨论】:
-
您是否尝试过在启动脚本中指定
docker run -p 9000:80? cloud.google.com/compute/docs/startupscript 另外,尝试仅通过 SSH 进入实例并运行curl localhost。 -
没有启动脚本。我正在通过 Compute Engine 网络控制台运行容器。如果我有能力添加这个参数,它肯定会解决我的问题。但我不确定如何......
-
我链接到的文档页面有一个 Compute Engine Web 控制台的屏幕截图,您可以在其中添加启动脚本。你看到了吗?
标签: docker spring-boot google-cloud-platform google-compute-engine