如果您使用的是java spring boot,则可以将应用程序运行的服务器端口设置为任何端口,但也可以设置为随机端口:
server: port: 0
但是,当我现在使用 Dockerfile 对于我的应用程序,我不知道该使用哪个端口 EXPOSE . 有办法找到这个港口吗?
Dockerfile
EXPOSE
kuhbmx9i1#
当你启动一个应用程序,你可以看到在控制台我想。据我所知,docker使用8080或8081。编辑1:选中此->链接您可以通过dockerfile公开端口,也可以使用--expose,然后使用-p标志发布端口。这会将公开的端口绑定到随机端口上的docker主机(通过运行docker容器ls进行验证)。您可以通过dockerfile公开端口,或者使用--expose,然后使用-p80:80标志发布端口。这会将暴露的端口绑定到端口80上的docker主机,并且它期望暴露的端口也是80(根据需要使用host:container).您可以忽略公开任何内容,而只使用-p80:80,在这种情况下,这将同时公开和发布端口。
zfciruhq2#
不要为spring应用程序使用随机端口。使用默认端口,并让docker将其公开为您喜欢的任何端口。不要为spring应用程序使用随机端口。通过环境变量指定它,并让docker提供。
2条答案
按热度按时间kuhbmx9i1#
当你启动一个应用程序,你可以看到在控制台我想。据我所知,docker使用8080或8081。
编辑1:选中此->链接
您可以通过dockerfile公开端口,也可以使用--expose,然后使用-p标志发布端口。这会将公开的端口绑定到随机端口上的docker主机(通过运行docker容器ls进行验证)。
您可以通过dockerfile公开端口,或者使用--expose,然后使用-p80:80标志发布端口。这会将暴露的端口绑定到端口80上的docker主机,并且它期望暴露的端口也是80(根据需要使用host:container).
您可以忽略公开任何内容,而只使用-p80:80,在这种情况下,这将同时公开和发布端口。
zfciruhq2#
不要为spring应用程序使用随机端口。使用默认端口,并让docker将其公开为您喜欢的任何端口。
不要为spring应用程序使用随机端口。通过环境变量指定它,并让docker提供。