docker 如何使用停靠码头更改默认码头端口

fykwrbwg  于 2023-03-07  发布在  Docker
关注(0)|答案(2)|浏览(121)

我正在从docker-composer.yml文件运行jetty。我已经更改了端口Map如下:

services:
  web:
    image: jetty
    ports:
     - "8000:8000"

这不会更改码头启动的端口。如何从码头化码头开始执行此操作?

rvpgvaaj

rvpgvaaj1#

默认情况下,jetty在端口8080上运行。因此,合成文件应为

services:
  web:
    image: jetty
    ports:
     - "8000:8080"

这会将container中的端口8080Map到主机上的端口8000。尽管您不需要在container中的端口80上运行jetty。但如果出于某种原因仍需要运行jetty,则需要使用jetty配置选项JAVA_OPTIONS

services:
  web:
    image: jetty
    environment:
      JAVA_OPTIONS: "-Djetty.port=80"
    ports:
     - "8000:80"

因此,容器内的端口80和主机上的端口8000

slhcrj9b

slhcrj9b2#

也许无关,但有帮助:我在Dockerfile中遇到过类似的问题,我选择重写jetty-http.xml(位于/usr/local/jetty/etc中)中的默认jetty端口:

FROM jetty:10-....
COPY jetty-http.xml /usr/local/jetty/etc
COPY target/some-war.war /var/lib/jetty/webapps/ROOT.war
...

相关问题