seafile:ubuntu搭建社区版seafile12.0

前言

Seafile是一个开源、专业、可靠的云存储平台,可以提供文件上传、下载、权限划分管理等等服务,并且提供了API支持,扩展性高。

我在ubuntu上使用docker成功搭建了社区版的seafile12.0并解决了一系列问题。

docker安装

ubuntu:换源安装docker-ce和docker-compose_ubuntu docker compose换源-CSDN博客

下载

1、前往seafile官网下载

这是一个比较全的文档,但我按照它安装的遇到了很多没办法解决的事:

用 Docker 部署 Seafile 服务 - seafile-manual-cn

2、单独下载

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

修改配置文件

一般只需要更改 .env文件,如下示例只需要更改{}内的值

复制代码
COMPOSE_FILE='seafile-server.yml,caddy.yml,seadoc.yml'
COMPOSE_PATH_SEPARATOR=','


SEAFILE_IMAGE=seafileltd/seafile-mc:12.0-latest
SEAFILE_DB_IMAGE=mariadb:10.11
SEAFILE_MEMCACHED_IMAGE=memcached:1.6.29
SEAFILE_CADDY_IMAGE=lucaslorentz/caddy-docker-proxy:2.9-alpine

SEAFILE_VOLUME=/opt/seafile-data
SEAFILE_MYSQL_VOLUME=/opt/seafile-mysql/db
SEAFILE_CADDY_VOLUME=/opt/seafile-caddy

SEAFILE_MYSQL_DB_HOST=db
INIT_SEAFILE_MYSQL_ROOT_PASSWORD={XXXXX数据库密码}
SEAFILE_MYSQL_DB_USER=seafile
SEAFILE_MYSQL_DB_PASSWORD={XXXXX数据库密码}

TIME_ZONE=Asia/Shanghai

JWT_PRIVATE_KEY={XXXXX一个字母数字随机数,36以上即可}

SEAFILE_SERVER_PROTOCOL=http

INIT_SEAFILE_ADMIN_EMAIL={XXXXX管理员邮箱}
INIT_SEAFILE_ADMIN_PASSWORD={XXXXX管理员密码}


SEADOC_IMAGE=seafileltd/sdoc-server:1.0-latest
SEADOC_VOLUME=/opt/seadoc-data

SEAFILE_SERVER_HOSTNAME={192.16.1.5:9001设置为对外展示的服务地址前缀}
ENABLE_SEADOC=true


NOTIFICATION_SERVER_IMAGE=seafileltd/notification-server:12.0-latest
NOTIFICATION_SERVER_VOLUME=/opt/notification-data

如果你希望它的对外端口发生变动,则需要更改 seafile-server.yml中seafile.ports里的端口,例如 "80:80" 变为 "9001:80"

复制代码
  seafile:
    ports:
      - "80:80"

启动和维护指令

复制代码
# 初次启动
docker compose up -d

# 重启服务
docker compose restart

# 查看日志
docker compose logs -f

# 更新配置,重置服务(这不会影响你的数据卷)
docker compose down
docker compose up -d

# 增加一个新的管理员
docker exec -it seafile /opt/seafile/seafile-server-latest/reset-admin.sh

# 进入容器
docker exec -it seafile /bin/bash
相关推荐
疏星浅月5 分钟前
虚拟内存三大核心作用详解
linux·c语言·arm开发·嵌入式硬件
邂逅星河浪漫1 小时前
【银行内网开发-管理端】Vue管理端+Auth后台开发+Nginx配置+Linux部署(详细解析)
linux·javascript·css·vue.js·nginx·html·前后端联调
SilentSamsara1 小时前
TCP 三次握手:连接建立失败的那些坑
运维·服务器·网络·网络协议·tcp/ip
码农小钻风2 小时前
利用Samba实现局域网跨平台共享文件
linux·samba·共享
LN花开富贵2 小时前
【ROS】鱼香ROS2学习笔记二
linux·笔记·python·学习·嵌入式
code tsunami2 小时前
如何在车辆数据自动化中解决Cloudflare Turnstile
运维·microsoft·自动化
GS8FG3 小时前
Busybox生成根文件系统,并移植e2fsprogs:RK3568
linux·驱动开发
翼龙云_cloud3 小时前
亚马逊云代理商:CloudWatch Agent 全解析 5 步实现服务器监控
运维·服务器·云计算·aws·云服务器
Cyber4K4 小时前
【Nginx专项】基础入门篇:状态页、微更新、内容替换、读取、压缩及防盗链
linux·运维·服务器·nginx·github
shining5 小时前
当拿到一个新服务器时所需准备工作
linux·程序员