Portainer 替代? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kid1412621
V2EX    Docker

Portainer 替代?

  •  
  • &nbs; kid1412621 2023-09-08 13:51:23 +08:00 3450 次点击
    这是一个创建于 835 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在用的 portainer 管理 homelab 部署的一批服务,但 portainer 不支持 Mobile Web Page ,记得专门有个 issue 说暂时不支持。

    此外,*arr 推荐不要用 portainer 并罗列出其问题:
    https://wiki.servarr.com/sonarr/installation/docker

    - Incorrect order of source and target of mounts
    - Inconsistent case-sensitivity
    - No automatically created custom networks for inter-container communication
    - Inconsistent compose implementations on different architectures
    - Pulls every tag on update when you don't set a specific tag
    - Capabilities are hidden and some don't work at all on ARM platforms

    其它的替代品用过 yacht (卡得要死),lazydocker (停止维护)。
    还有没有支持 docker compose 部署的 admin UI 啊?
    15 条回复    2023-09-11 11:41:39 +08:00
    locoz
        1
    locoz  
       2023-09-08 14:06:07 +08:00
    我以前也是用 Unraid 自己的 UI+Portainer ,但后面直接改用 K8S 了,算是个上位替代吧
    shakaraka
        2
    shakaraka  
    PRO
       2023-09-08 14:07:37 +08:00
    还不如用 k3s+lens
    billzhuang
        3
    billzhuang  
       2023-09-08 14:56:27 +08:00
    k3s + cdk8s+
    Jirajine
        4
    Jirajine  
       2023-09-08 15:16:35 +08:00 via Android
    > Portainer should only for viewing docker container logs / container status.
    非常赞同这个 wiki 的建议。
    另一个替代品是 podman-desktop ,没开玩笑,比 docker 更开放,支持各种后端。
    ptsa
        5
    ptsa  
       2023-09-08 17:03:14 +08:00
    @Jirajine #4 podman 有类似 Portainer 这样的 ui 么
    kid1412621
        6
    kid1412621  
    OP
       2023-09-08 23:19:10 +08:00
    @Jirajine #4 今天还遇到了 podman 不支持 buildkit 的问题
    kid1412621
        7
    kid1412621  
    OP
       2023-09-08 23:19:42 +08:00
    @locoz #1 k8s 用什么 ui 呢
    locoz
        8
    locoz  
       2023-09-10 01:07:12 +08:00
    @kid1412621 #6 我是直接用 Flux 做添加应用部署、调整部署配置这种操作,纯文件形式,依靠 Git 管理,不用 UI 。用 UI 的时候主要是看当前日志、进入容器操作、临时停掉一些容器之类的,我个人是 Lens 用的比较多,有时候没电脑或者不能直连服务器就用 KubeSphere 。
    kid1412621
        9
    kid1412621  
    OP
       2023-09-10 11:52:26 +08:00
    @locoz #8 这个配置是纯的 k8s ymal 吗
    locoz
        10
    locoz  
       2023-09-10 18:51:52 +08:00   1
    @kid1412621 #8 算是,但严格来说都是写 helm 的 values ,原生的 k8s 配置我只在临时测试的时候用用。

    有些没有官方 helm 包的家用场景应用(比如常见的影视类的 sonarr 、radarr 之类的)都是用的 https://bjw-s.github.io/helm-charts/docs/ 做的,大幅简化了配置复杂度,基本写完一次剩下的就是复制粘贴改个镜像地址、镜像版本、容器内的端口号、子域名的名称,需要的情况下再改个 pvc (给容器挂载的存储空间)的名称和申请空间量),比 UI 配的还方便些。

    镜像更新会有 https://github.com/apps/renovate 自动检测并创建"Pull requests",所以版本更新只需要点一下"Rebase and merge",也是比较方便。
    kid1412621
        11
    kid1412621  
    OP
       2023-09-10 22:20:24 +08:00
    @locoz #10 感谢! 空了我也折腾下。随便问下,内外网域名你是怎么管理的?
    locoz
        12
    locoz  
       2023-09-11 10:30:20 +08:00   1
    @kid1412621 #10 我目前是四种方案混合使用:
    1 、内网环境,内网 DNS 做个泛域名解析指向 K8S 中 Traefik ( Ingress )的 Service IP ( LoadBalancer 模式),LoadBalancer 是基于 kube-vip 做的,集群中的节点离线也会自动切到其他节点,IP 不变。
    2 、公网 VPN 连回家变成内网环境,与 1 相同。
    3 、公网直连,Ingress 给部分服务(比如 Emby )配了直连域名(非直连域名配了 Traefik 的中间件,禁止非内网 IP 访问),直连域名通过 DDNS 指向公网 IP ,访问直连域名+映射后的端口就是直连。
    4 、公网免端口、隐藏服务端 IP 连接,用腾讯云 CDN ,源地址指向 DDNS 域名+映射后的端口,然后就是跟常规的公网服务一样了。

    通常来说,我自己的设备是用 1 和 2 ,部分不方便连接或没法连接 VPN 的设备用 4 ,全都是统一化的体验。需要给别人用的那些服务就是用 3 和 4 ,流量较大的优先用 3 ,量少、短期使用的用 4 。

    域名解析方面有个注意点,我无论是公网还是内网都是做的泛解析,原因是 HTTPS 证书的签发记录可以被查到,而有些服务我不想被人直接知道,但又需要保持公网和内网一致的体验,所以不能子域名一个一个那么设。而且泛解析处理起来也更省事些,cert-manager 可以自动处理泛域名证书的签发和续签,所有服务只需要签一次,加上 kubed 可以同步 K8S 中的 Secret 到多个命名空间,可以轻松解决在分多命名空间管理、不给 Traefik 设置默认证书的情况下,多 Ingress 的 HTPS 访问问题。

    不给 Traefik 设置默认证书的原因是,如果你设置了默认证书,那么只要访问到你的 IP+HTTPS 端口就能根据证书直接得到域名,进而可能关联到你的 DDNS 域名,这也是不太安全的。
    locoz
        13
    locoz  
       2023-09-11 10:35:21 +08:00
    @kid1412621 #10 要折腾可以参考 https://github.com/onedr0p/flux-cluster-template 这个项目,虽然很多东西比较多余、非最优解或比较复杂,但核心的那些工具和设计方式很好,可以基于这个模板慢慢改成自己的处理方式。
    kid1412621
        14
    kid1412621  
    OP
       2023-09-11 11:30:35 +08:00
    @locoz #12 有点困惑我的就是 有没有内外网域名一致,这样就不用每次切换了
    locoz
        15
    locoz  
       2023-09-11 11:41:39 +08:00 via Android
    @kid1412621 #13 方案 1 、2 、4 就是完全一致的地址(同样的域名+同样的默认 443 端口)
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5864 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 112ms UTC 02:09 PVG 10:09 LAX 18:09 JFK 21:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86