基于端口转发部署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:你的运行端口号/
相关推荐
chlk1236 小时前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑6 小时前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件7 小时前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号17 小时前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash21 小时前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI1 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行2 天前
Linux和window共享文件夹
linux
木心月转码ing2 天前
WSL+Cpp开发环境配置
linux
崔小汤呀3 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应3 天前
vi编辑器使用
linux·后端·操作系统