基于端口转发部署seafile私人云盘服务器

基于端口转发部署seafile私人云盘服务器

  • [1. 拉取配置文件](#1. 拉取配置文件)
  • [2. 修改配置文件](#2. 修改配置文件)
  • [3. 快速卸载](#3. 快速卸载)
  • [4. 网页访问](#4. 网页访问)

部署操作系统:Ubuntu24.04.3

部署方式:docker

端口转发:frp

部署版本:Seafile CE 13.0

1. 拉取配置文件

首先,准备一个文件夹,用来存放构造seafile所需要的配置文件

bash 复制代码
mkdir seafile
cd seafile

然后拉取官方提供的配置文件模板

bash 复制代码
wget -O .env https://manual.seafile.com/13.0/repo/docker/ce/env
wget https://manual.seafile.com/13.0/repo/docker/ce/seafile-server.yml
wget https://manual.seafile.com/13.0/repo/docker/seadoc.yml
wget https://manual.seafile.com/13.0/repo/docker/caddy.yml

2. 修改配置文件

这一步建议用vscode之类的编辑器打开文件编写,或者你自己乐意用vim和nano修改文件也行。

修改文件.env中的配置内容

bash 复制代码
BASIC_STORAGE_PATH=/你所提供的数据文件存储路径,用于存储所有的数据

# 注意!浏览器里面输入的地址必须与这个地址完全对应才能成功进入!哪怕是事实上指向同一个地址也不行!
# 如果你想要在服务器本地访问,可以在hosts里面把域名直接指向本机ip,只能通过你配置的地址访问!
SEAFILE_SERVER_HOSTNAME=你的域名或者公网ip

JWT_PRIVATE_KEY=可以使用`pwgen -s 40 1`生成的随机字符串

INIT_SEAFILE_MYSQL_ROOT_PASSWORD=你的SQL数据库root密码(实际使用中不会涉及)
SEAFILE_MYSQL_DB_PASSWORD=你的SQL数据库seafile用户密码(实际使用中不会涉及)

INIT_SEAFILE_ADMIN_EMAIL=初始管理员账户(邮箱)
INIT_SEAFILE_ADMIN_PASSWORD=初始管理员密码

如果你需要修改服务到别的端口(我觉得一般能做这个开发的也不会喜欢用默认的80端口提供服务吧......),需要修改配置文件:
.env中的SEAFILE_SERVER_HOSTNAME你的域名或者公网ip:你需要部署的端口号
caddy.yml中的80:80修改为你需要部署的端口号:你需要部署的端口号

修改完之后,在当前路径运行docker创建命令:

bash 复制代码
sudo docker compose up -d

3. 快速卸载

如果你不小心设置错了或者只是单纯想卸载,可以写一个sh脚本快速完成所有docker的卸载:

bash 复制代码
sudo docker stop seadoc
sudo docker rm seadoc
sudo docker stop seafile
sudo docker rm seafile
sudo docker stop seafile-redis
sudo docker rm seafile-redis
sudo docker stop seafile-mysql
sudo docker rm seafile-mysql
sudo docker stop seafile-caddy
sudo docker rm seafile-caddy
sudo rm -r /你保存数据的路径/*

4. 网页访问

通过网页(假如你没有把http改成https的需求)访问:

bash 复制代码
http://你的域名或者公网ip:你的运行端口号/
相关推荐
123过去32 分钟前
ike-scan使用教程
linux·测试工具
疯狂吧小飞牛7 小时前
GPG基础指令
linux·服务器·网络
C++ 老炮儿的技术栈7 小时前
volatile使用场景
linux·服务器·c语言·开发语言·c++
todoitbo8 小时前
用虚拟局域网打通 Win/Mac/Linux 三端:跨设备协作的实用方案
linux·运维·macos
源远流长jerry8 小时前
RDMA 基本操作类型详解:从双端通信到单端直访
linux·网络·tcp/ip·ip
Sylvia-girl9 小时前
Linux下的基本指令1
linux·运维·服务器
wyt53142910 小时前
Redis的安装教程(Windows+Linux)【超详细】
linux·数据库·redis
17(无规则自律)10 小时前
【Linux驱动实战】:字符设备之ioctl与mutex全解析
linux·c语言·驱动开发·嵌入式硬件
天赐学c语言11 小时前
Linux - 应用层自定义协议与序列/反序列化
linux·服务器·网络·c++
jarreyer11 小时前
CentOS 7 无法使用 yum 安装软件
linux·运维·centos