我正在本地 linux 服务器中从 docker 映像运行我的家庭 wifi 控制器 (TP-Link Omada)。不幸的是,图像已更新,新的控制器版本似乎无法识别我退出的“站点”/设备。无线接入点和交换机仍然以其设置在独立模式下工作,但在我将它们重新采用到我使用“新”控制器生成的新站点之前,我无法触摸/更改任何内容。
我想防止图像在未来更新,或者至少有一种方法可以在它们再次中断时恢复。什么是防止这种情况发生的好方法?这是我的 docker-compose 的一个片段
# Omada Controller for TP-Link switches and APs
omada-controller:
container_name: omada-controller
image: mbentley/omada-controller
restart: unless-stopped
environment:
- TZ=$TZ
volumes:
- $DOCKERDIR/apps/omada/data:/opt/tplink/EAPController/data'
- $DOCKERDIR/apps/omada/work:/opt/tplink/EAPController/work'
- $DOCKERDIR/apps/omada/logs:/opt/tplink/EAPController/logs'
networks:
- t2_proxy
security_opt:
- no-new-privileges:true
ports:
- '8088:8088'
- '$OMADA_PORT:8043'
- '27001:27001/udp'
- '27002:27002'
- '27017:27017'
- '29810:29810/udp'
- '29811:29811'
- '29812:29812'
- '29813:29813'
答案 0 :(得分:1)
如果您不为图像使用标签,那么 docker 会使用 latest
标签。几乎总是这指的是最新版本。只需使用图像的定义标记版本。您可以找到 mbentley/omada-controller
here 的可用标签。
所以如果你想使用 4.1 版本,那么撰写文件中的那部分应该是:
image: mbentley/omada-controller:4.1
也就是说,通常它不应该神奇地更新图像本身。只有在您启动容器并且标记的图像在本地不可用时,它才会更新。或者您运行 docker-compose pull
以强制拉取撰写文件中指定的图像。