如何使Synology Diskstation端口对Docker应用程序的计算机可见

如何使Synology Diskstation端口对Docker应用程序的计算机可见,docker,dockerfile,synology,Docker,Dockerfile,Synology,我有一个应用程序运行在Synology DS218上+ 但该应用程序在端口4567上运行,在我的电脑上看不到(我可以从电脑上访问端口5000上的Synology DSM) 如何解决这个问题,我不清楚是否必须在Docker容器中或Synology DSM控制面板本身中配置某些内容。Synology是全新的,只安装了默认值和Docker,我还没有启用Synology防火墙 DockerFile是 FROM openjdk:8-jre-alpine RUN apk add --no-cache ca

我有一个应用程序运行在Synology DS218上+

但该应用程序在端口4567上运行,在我的电脑上看不到(我可以从电脑上访问端口5000上的Synology DSM)

如何解决这个问题,我不清楚是否必须在Docker容器中或Synology DSM控制面板本身中配置某些内容。Synology是全新的,只安装了默认值和Docker,我还没有启用Synology防火墙

DockerFile是

FROM openjdk:8-jre-alpine

RUN apk add --no-cache ca-certificates curl tini \
 && mkdir -p /opt \
 && curl http://www.jthink.net/songkong/downloads/current/songkong-linux-headless-novm.tgz?val=77 | tar -C /opt -xzf - \
 && find /opt/songkong -perm /u+x -type f -print0 | xargs -0 chmod a+x

RUN addgroup -S songkong \
 && adduser -S -G songkong songkong

USER songkong:songkong

EXPOSE 4567

ENTRYPOINT ["/sbin/tini"]

# VOLUME /opt/songkong/songkong.properties

# preferences and match database are stored here
VOLUME /home/songkong/.songkong

WORKDIR /opt/songkong

CMD /opt/songkong/songkongremote8.sh

结果证明这很容易做到

  • 发射图像
  • 选择高级设置
  • 转到“网络”选项卡
  • 启用使用与Docker主机相同的网络
  • 应用设置并继续启动容器
在我看来,这应该在默认情况下启用,因为运行Synology对Synology之外的任何计算机都不可见的容器似乎不是很有用

还有一种更灵活但稍微复杂的解决方案,使用“端口转发”选项卡。

只是为了强调:“高级设置”位于“图像向导”创建容器的底部,启动容器之前需要完成所有步骤