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

How do I make Synology Diskstation port visible to computer for Docker app

我在 Synology DS218+

上有一个 Docker 应用 运行

但该应用程序在我的 PC 上不可见的端口 4567 上运行(我可以从我的 PC 上的端口 5000 访问 Synology DSM)。

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

Docker文件是

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

原来很容易做到

  • 启动图片
  • Select 高级设置
  • 转到网络选项卡
  • 启用使用与Docker主机相同的网络
  • 应用设置并继续启动容器

在我看来,这应该默认启用,因为 运行 对 Synology 以外的任何计算机不可见的 Synology 容器似乎不是很有用

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