skip to content
Logo hxjx blog

在纯IPv6服务器上部署Oplist并通过Cloudflare全球访问的完整指南

/ 8 min read

  • 第一阶段:VPS服务器配置与Oplist部署

    前提:您已经拥有了一台纯IPv6的VPS,并且可以通过SSH登录

    • 步骤1:安装Docker环境,Docker是运行Oplist所必需的容器环境

    1. 更新系统包列表:

      sudo apt update
    2. 使用官方一键脚本安装Docker:

      curl -fsSL [https://get.docker.com](https://get.docker.com) -o get-docker.sh
      sudo sh get-docker.sh
    3. 将当前用户添加到docker组(推荐),避免每次都输入sudo:

      sudo usermod -aG docker $USER

      注意:执行此命令后,您需要退出SSH再重新登录一次,权限才会生效

    4. 验证Docker安装:

      docker --version

      重新登录后,执行 docker —version。如果看到版本号,说明安装成功

    • 步骤2:部署最新版Oplist,我们将使用最新版的Oplist,并采用官方推荐的权限设置方法

    1. 创建用于存放Oplist数据的文件夹:

      sudo mkdir -p /opt/oplist_data
    2. 为该文件夹设置正确的权限(关键!):

      sudo chown -R 1001:1001 /opt/oplist_data

      新版Oplist以1001用户身份运行,我们需要提前将文件夹的所有者变更为1001

    3. 运行Oplist容器:

      docker run -d \
      --name openlist \
      --restart=unless-stopped \
      -p 5244:5244 \
      -v /opt/oplist_data:/opt/openlist/data \
      -e TZ=Asia/Shanghai \
      -e OPENLIST_ADMIN_PASSWORD=your_strong_password \
      openlistteam/openlist:latest

      纯V6的vps用下面的方式部署,前提要有warp的IPV4出口:

      docker run -d \
      --name openlist \
      --restart=unless-stopped \
      --network host \
      -v /opt/oplist_data:/opt/openlist/data \
      -e TZ=Asia/Shanghai \
      -e OPENLIST_ADMIN_PASSWORD=your_strong_password \
      openlistteam/openlist:latest

      请将上面的 your_strong_password 替换为您想设置的管理员密码

    4. 验证Oplist是否在运行:等待约一分钟后,执行 docker ps。如果您能看到名为openlist的容器,并且状态是Up,则部署成功

      docker ps
    • 步骤3:配置服务商的网络防火墙(安全组)

    1. 登录到您购买VPS的网站控制台

    2. 找到 “网络(Network)” -> “安全组(Security Group)” 或 “防火墙(Firewall)” 的管理页面

    3. 编辑当前应用到您VPS上的那个安全组

    4. 在 “入站规则(Inbound Rules)” 里,添加一条新规则:

      协议(Protocol):TCP

      端口(Port):5244

      源(Source):0.0.0/0 (或选择 Anywhere / 任何地方)

    5. 保存规则,重启服务器生效

  • 第二阶段:Cloudflare配置(域名与网络桥梁)

    前提:您已经拥有一个自己的域名,并已注册了免费的Cloudflare账户

    • 步骤1:将域名解析权交给Cloudflare

      1. 登录Cloudflare,添加您的站点,选择免费套餐
      2. Cloudflare会提供两个新的**名称服务器(Name Server)**地址
      3. 请登录到您购买域名的网站(如阿里云、GoDaddy等),将您域名的DNS服务器地址修改为Cloudflare提供的那两个
      4. 等待Cloudflare检测到更改生效(状态变为“有效(Active)”)
    • 步骤2:创建DNS记录,指向您的服务器

      1. 在Cloudflare的DNS管理页面,添加记录(Add record)

      2. 填写内容如下:

        类型(Type):AAAA

        名称(Name):填写您喜欢的前缀,如oplist。

        IPv6 地址(IPv6 address):填写您VPS的IPv6地址。

        代理状态(Proxy status):务必确保云朵图标是橙色的(已代理/Proxied)

    • 步骤3:创建源站规则,自动转发端口

      1. 在Cloudflare左侧菜单,进入 “规则(Rules)” -> “创建规则(Create rule)” -> 选择 “源站规则(Origin Rules)”

      2. 填写规则如下:

        • 规则名称:任意填写,如 oplist-port。

        • 当请求匹配时…

          • 字段(Field):选择 “主机名(Hostname)”。

          • 运算符(Operator):选择 “等于(equals)”。

          • 值(Value):填写您的完整访问地址,如yourdomain.com

      • 那么…

        • 目标端口(Destination Port):选择 “重写为…(Rewrite to…)”,并在框中填写 5244

      1. 点击 部署(Deploy)
    • 步骤4:设置SSL/TLS加密模式

      1. 在Cloudflare左侧菜单,进入 “SSL/TLS” -> “概述(Overview)”
      2. 选择 “灵活(Flexible)” 模式。这可以确保您的网站能用https访问,而无需在VPS上配置证书
  • 第三阶段:最关键的一步——重启服务器

    根据我们最终的排错结果,很多云平台的网络防火墙规则在配置后,需要一次服务器重启才能被正确加载和应用

    1. 在完成第一阶段和第二阶段的所有配置后,请回到您VPS服务商的网站控制台
    2. 对您的VPS执行一次**重启(Restart)**操作
  • 第四阶段:最终访问

等待服务器重启完成(大约需要1-3分钟),然后,在您本地电脑的浏览器中,输入您最终的访问地址: https://oplist.yourdomain.com 此时,您应该就能看到Oplist的登录界面了。至此,所有部署工作圆满完成!

  • 附录:卸载 Oplist 和 Docker

如果您希望将 Oplist 和 Docker 从服务器上完全移除,请按照以下步骤操作。注意:此过程不可逆,会删除所有相关数据

  • 第一阶段:卸载 Oplist

    • 停止 Oplist 容器:
      docker stop openlist
    • 删除 Oplist 容器:
      docker rm openlist
    • 删除 Oplist 的数据:
      sudo rm -rf /opt/oplist_data
    • 删除 Oplist 的 Docker 镜像(可选):
      docker rmi openlistteam/openlist:latest
  • 第二阶段:卸载 Docker 环境

    • 卸载 Docker 软件包:

      sudo apt-get purge -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
    • 删除所有 Docker 残留数据:

      这是一个毁灭性操作,会删除服务器上所有未被使用的Docker镜像、容器和存储卷

      sudo rm -rf /var/lib/docker
      sudo rm -rf /var/lib/containerd
  • 更新openlist

    • 停止并删除旧容器

      首先,您需要停止并移除当前正在运行的容器。这不会影响您的配置文件

      docker stop openlist
      docker rm openlist
    • 拉取最新镜像 接下来,从 Docker Hub 上拉取 Openlist 的最新版本镜像。如果镜像已经是最新的,这条命令会提示您

      docker pull openlistteam/openlist:latest
    • 启动新容器 最后,使用我们之前讨论的完整命令来启动一个新容器。这个命令会自动使用您主机上的 /opt/oplist_data 目录中的数据,并继承所有配置

      docker run -d \
      --name openlist \
      --restart=unless-stopped \
      --network host \
      -v /opt/oplist_data:/opt/openlist/data \
      -e TZ=Asia/Shanghai \
      -e OPENLIST_ADMIN_PASSWORD=your_strong_password \
      openlistteam/openlist:latest
    • 完成以上步骤后,您的 Openlist 容器就会是最新版本,并且所有之前的设置都将得到保留