以下是我添加到application.properties文件以启用HTTPS的条目:
server.port: 80
server.ssl.key-store: classpath:keystore.p12
server.ssl.key-store-password: password
server.ssl.keyStoreType: PKCS12
server.ssl.keyAlias: tomcat
当我启动docker容器时,无法使用HTTPS访问url . 但是,如果我纪念上述行,http是可访问的 . 这是应用程序作为docker镜像运行的时候 .
如果我在本地计算机上运行spring boot app,https正在运行 . 不确定有什么问题或缺失 .
有关信息,我正在使用以下Docker撰写文件:
ms1:
image: aa/ms1:localubuntu
mem_limit: 512
environment:
SPRING_PROFILES_ACTIVE: docker-development-cloud
JAVA_OPTS: -Xms256m -Xmx512m
build:
context: ../../
dockerfile: ms1/src/main/dockerBuildRelease/Dockerfile
ports:
- "443:443"
restart: always
networks:
- cloud
1 回答
为了使其能够在Docker上运行,您需要:
使用有效端口启动服务器(有效,我的意思是443或其他非保留端口,例如8443) . 如您所知,这是通过在
application.yml
文件中设置server.port
属性来完成的公开
docker-compose.yml
文件中的服务器端口 . 请记住,语法是host:container
,因此假设您在端口443
上配置了Spring Boot应用程序,并希望将其暴露给主机上的端口8443
,您的端口配置将如下所示:8443:443
另外,我在你的
docker-compose.yml
文件中同时使用image
和build
似乎很奇怪 .