dokcer portainer swarm+duplicati+alist 让自己的服务少折腾

docker cyanprobe 6个月前 (06-18) 496次浏览 已收录 0个评论

前言:

最近90块钱的阿里云实在是太香了,正好买来做试验环境,索性备了个案把原来香港的轻量云内容转过来。

从最早的wdcp到vestacp到后面用dokcer,wordpress这东西可以说每次搬都很折腾。docker虽然减少了部署成本, 但容器多起来,还是不够清晰。

之前用脚本挂在web dav到坚果云, 每次还要迁移脚本任务, 除了第一次跑没跑也不知(之前备份基本靠阿里云快照,现在ECS是收费的且不能按需恢复)。

wp docker 也顺便升级到了php 8.0版本, 3年没升级了,主题还有很多报错17年就不维护了换了8.0下下来自己改了改升级了下。

1.Portainer docker swarm 管理

商业软件生产也使用了这个面板,注意agent api加入是不需要秘钥的,会自动处理,安全方面无需担心。

选用原因:

  • 配置和数据文件导出的整体性(重要)
  • Agent支持一个面板管理多个环境
  • 商业软件 稳定 开源 CE版本够用
  • 操作面板的易用性(对于小的团队,减少了大量的学习成本), RABC需要商业版本。
  • docker standalone+ docker swarm + k8s 全支持

下图是搭建的使用效果, agent只需要启动一个容器就行,这里演示的agent 环境armbain 家庭nas+homeassistant (被老娘拉闸断电了),stack和k8s面板差不多支持在线编辑和git比较方便。

基本命令能实现的UI都有实现完成度是非常好的,但是注意目录映射以后基本要在portainer目录里展开,这也保证了配置目录的清晰,编辑的配置文件会以数字id作为目录映射列如portainer_data/compose/1

实测有些小问题比如 env_file必须以portainer_data/compose/1为基准目录展开否则会报找不到文件,这个问题社区还在讨论。

强烈建议以portainer_data目录为其他容器映射目录, 可以享受portainer的一键导出, 而且目录结构会很清晰, 以后脱离portainer也可以以原生的形式简单起动起来。

 

2 . Duplicati +Alist + 阿里云盘备份

Duplicati选用原因:

      • 开源且在维护中
      • docker启动 低学习成本UI界面配置简单不折腾(重点)
      • 少有的linux中集成 ssh 和 webdav的(重点), 其他北方软件基本着重于加密和打包
      • 加密备份+按需目录恢复

使用思路: alist挂在阿里云, Duplicati选择备份目录(portainer目录) 配置目标位置 alist dav,简单无脑反正容量够也不用导出sql了直接备份idb。

我这机器比较烂, alist度盘上传进程设置多了直接IO拉满机器干翻了,碰到这种情况调整下alist。

docker-compose 如下

version: "3.9"

x-traefic-ignore: &traefic-ignore
  labels:
    - "traefik.enable=false"
  

services:
  duplicati:
    image: linuxserver/duplicati:latest
    container_name: duplicati

    environment:
      - PUID=0
      - PGID=0
      - TZ=Asia/Shanghai
    volumes:
      - /root/docker/appdata/config:/config
      - /root/docker/backups:/backups
      - /root/docker:/source
    deploy:
      <<: *traefic-ignore
      placement:
        constraints:
          - node.role == manager   
    restart: unless-stopped
  alist:
    restart: always
    volumes:
      - '/opt/alist:/opt/alist/data'
    environment:
      - PUID=0
      - PGID=0
      - UMASK=022
      - TZ=UTC
    container_name: alist
    image: xhofe/alist:latest
    deploy:
      <<: *traefic-ignore

 


CyanProbe , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:dokcer portainer swarm+duplicati+alist 让自己的服务少折腾
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址