我正在从docker-composer.yml文件运行jetty。我已经更改了端口Map如下:
services: web: image: jetty ports: - "8000:8000"
这不会更改码头启动的端口。如何从码头化码头开始执行此操作?
rvpgvaaj1#
默认情况下,jetty在端口8080上运行。因此,合成文件应为
8080
services: web: image: jetty ports: - "8000:8080"
这会将container中的端口8080Map到主机上的端口8000。尽管您不需要在container中的端口80上运行jetty。但如果出于某种原因仍需要运行jetty,则需要使用jetty配置选项JAVA_OPTIONS
8000
JAVA_OPTIONS
services: web: image: jetty environment: JAVA_OPTIONS: "-Djetty.port=80" ports: - "8000:80"
因此,容器内的端口80和主机上的端口8000。
80
slhcrj9b2#
也许无关,但有帮助:我在Dockerfile中遇到过类似的问题,我选择重写jetty-http.xml(位于/usr/local/jetty/etc中)中的默认jetty端口:
Dockerfile
/usr/local/jetty/etc
FROM jetty:10-.... COPY jetty-http.xml /usr/local/jetty/etc COPY target/some-war.war /var/lib/jetty/webapps/ROOT.war ...
2条答案
按热度按时间rvpgvaaj1#
默认情况下,jetty在端口
8080
上运行。因此,合成文件应为这会将container中的端口
8080
Map到主机上的端口8000
。尽管您不需要在container中的端口80上运行jetty。但如果出于某种原因仍需要运行jetty,则需要使用jetty配置选项JAVA_OPTIONS
因此,容器内的端口
80
和主机上的端口8000
。slhcrj9b2#
也许无关,但有帮助:我在
Dockerfile
中遇到过类似的问题,我选择重写jetty-http.xml(位于/usr/local/jetty/etc
中)中的默认jetty端口: