Debian安装Seafile

devtools/2025/2/8 7:03:40/

前言

Debian 无图形化界面通过 docker 安装 Seafile。我安装 Seafile12 没有成功,按照之前经验安装。

方法

docker_5">安装docker

参考官方文档 Install Docker Engine on Debian

  • 设置 Docker’s apt repository.
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc# Add the repository to Apt sources:
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • 测试安装
sudo docker run hello-world

安装 Seafile

参考Seafile官方安装文档及Seafile docker-compose.yml 。

新建Seafile文件夹

新建一个seafile 文件夹,在其下新建 seafile-data 和 seafile-mysql 两个文件夹。在seafile-data中新建 docker-compose.yml 文件。

sudo vim docker-compose.yml

我把官方Seafile docker-compose.yml V11 拷贝粘贴进去,然后按照下面对应修改。

dockercomposeyml__45">docker-compose.yml 文件解析

需要修改的地方:

  • /opt/seafile-mysql/db:/var/lib/mysql # 指定宿主机路径 /opt/seafile-mysql/db 持久化 MySQL 数据,这里改为创建的 seafile-mysql/db
  • /opt/seafile-data:/shared # 指定宿主机路径 /opt/seafile-data 用于存储 Seafile 数据,改为创建的 seafile-data
  • 端口映射 “80:80” # 将宿主机的 80 端口映射到容器的 80 端口(HTTP)
  • DB_ROOT_PASSWD=db_dev # 设置数据库 root 用户的密码,必须与 db 服务中的密码一致
  • SEAFILE_ADMIN_EMAIL=me@example.com # 设置 Seafile 管理员的电子邮件地址
  • SEAFILE_ADMIN_PASSWORD=asecret # 设置 Seafile 管理员的密码
    后续登录 seafile需要用到上面设置好的用户名 me@example.com,密码:asecret
services:  # 定义服务(容器)部分db:  # 数据库服务image: mariadb:10.11               # 使用 MariaDB 10.11 版本的镜像container_name: seafile-mysql      # 容器名称为 seafile-mysqlenvironment:  # 设置环境变量- MYSQL_ROOT_PASSWORD=db_dev     # 设置 MySQL root 用户的密码,默认为 db_dev============- MYSQL_LOG_CONSOLE=true         # 启用控制台日志输出- MARIADB_AUTO_UPGRADE=1         # 启用 MariaDB 自动升级功能volumes:  # 挂载数据卷,用于持久化存储- /mnt/SeafileDir/seafile-mysql/db:/var/lib/mysql  # 指定宿主机路径 /opt/seafile-mysql/db 持久化 MySQL 数据============networks:  # 定义服务所连接的网络- seafile-net                     # 连接到 seafile-net 网络restart: alwaysmemcached:  # 缓存服务image: memcached:1.6.18            # 使用 Memcached 1.6.18 版本的镜像container_name: seafile-memcached  # 容器名称为 seafile-memcachedentrypoint: memcached -m 256      # 设置 Memcached 启动时的命令,指定内存大小为 256MBnetworks:  # 定义服务所连接的网络- seafile-net                    # 连接到 seafile-net 网络restart: alwaysseafile:  # Seafile 主服务image: seafileltd/seafile-mc:11.0-latest  # 使用 Seafile 官方提供的最新版本镜像container_name: seafile             # 容器名称为 seafileports:  # 映射端口- "80:80"                        # 将宿主机的 80 端口映射到容器的 80 端口(HTTP)============
#      - "443:443"                      # 如果启用了 HTTPS,可以取消注释该行来映射 443 端口volumes:  # 挂载数据卷,用于持久化存储- /mnt/SeafileDir/seafile-data:/shared       # 指定宿主机路径 /opt/seafile-data 用于存储 Seafile 数据============environment:  # 设置环境变量- DB_HOST=db                      # 指定 MySQL 数据库主机为 db(即上面的 db 服务)- DB_ROOT_PASSWD=db_dev           # 设置数据库 root 用户的密码,必须与 db 服务中的密码一致- TIME_ZONE=Asia/Shanghai         # 设置时区为上海时区(可选,默认为 UTC)- SEAFILE_ADMIN_EMAIL=me@example.com  # 设置 Seafile 管理员的电子邮件地址============- SEAFILE_ADMIN_PASSWORD=asecret  # 设置 Seafile 管理员的密码============- SEAFILE_SERVER_LETSENCRYPT=false # 是否使用 Let's Encrypt 来生成证书(false 表示不使用)- SEAFILE_SERVER_HOSTNAME=seafile.example.com  # 设置 Seafile 服务器的主机名depends_on:  # 依赖的服务- db                                  # 依赖数据库服务 db- memcached                           # 依赖缓存服务 memcachednetworks:  # 定义服务所连接的网络- seafile-net                        # 连接到 seafile-net 网络restart: alwaysnetworks:  # 网络定义部分seafile-net:  # 定义名为 seafile-net 的网络

相比我之前安装方法新增了 restart: always,让容器自动重启。

seafile-data 文件夹中(含docker-compose.yml文件)下执行

docker compose up -d

安装完成,浏览器输入机器IP地址,登录seafile

登录后的配置

参考 Ubuntu 24.04 LTS 通过 docker desktop 安装 seafile 搭建个人网盘。


http://www.ppmy.cn/devtools/157036.html

相关文章

Elastic:为何它在技术领域备受瞩目

在当今大数据和云计算蓬勃发展的时代,数据的高效处理和分析成为了企业和开发者面临的关键挑战。Elastic 作为一款强大的开源搜索和分析引擎,凭借其卓越的性能和丰富的功能,在众多技术中脱颖而出,受到了广泛的关注和应用。它不仅改…

source 与 shell 之详解(Detailed Explanation of Source and Shell)

source 命令与 shell 变量 随着IC工具的升级迭代,不同项目使用到的 IC 工具版本可能会不一样。为保证 IC 工具版本和芯片项目的对应,需要使用 source 命令执行对应项目的环境变量设置脚本。那么,source 命令与一般的脚本执行命令&#xff0c…

unity学习32:角色相关1,基础移动控制

目录 0 应用商店 1 角色上新增CharacterController 组件 1.1 角色上新增CharacterController 组件 1.2 如果没有这个则会报错​编辑 2 速度 2.1 默认速度 2.2 修改速度为按时间计算 2.2 movespeed, 3 测试移动的代码 3.1 CharacterController 变量的声明…

python:递归函数与lambda函数

递归函数:1.函数内调用自己 2.有一个出口 1.递归 一.有出口时 def sum(num):if num1:return 1return numsum(num-1) asum(3) print(a) #num3 3sum(2) #num2 2sum(1) #num1是返回1 #即3sum(2)即32sum(1)即321运行结果 6 二.无出口时 def sum(num)…

探索从传统检索增强生成(RAG)到缓存增强生成(CAG)的转变

在人工智能快速发展的当下,大型语言模型(LLMs)已成为众多应用的核心技术。检索增强生成(RAG)(RAG 系统从 POC 到生产应用:全面解析与实践指南)和缓存增强生成(CAG&#x…

M5AXXB 100v三端稳压ic ldo降压芯片工作原理及应用实例分析

M5AXXB 100v三端稳压ic ldo降压芯片工作原理及应用实例分析 ### M5AXXB 芯片工作原理及应用实例分析 #### 一、引言 M5AXXB 是一款高性能线性调压芯片,广泛应用于各种电源调节领域。本文将详细介绍其工作原理,并通过实际应用场景分析其在现代电子设备中…

录音质检,只质检录音,没有显卡的服务器配置分析

如果不做实时质检,只做录音质检,且需要支持 500并发,可以通过以下优化策略和资源配置来实现高效处理: 核心优化思路 批量处理: 将录音文件分批次处理,避免单次并发过高导致资源耗尽。使用任务队列&#xf…

达梦分布式集群DPC_表分区方式详细介绍_yxy

达梦分布式集群DPC_表分区方式详细介绍 1 范围分区1.1 建表语句示例1.2 优劣势分析 2 间隔分区2.1 建表语句示例2.2 优劣势 3 HASH分区3.1 建表示例3.2 优劣势分析 4 列表分区4.1 建表示例4.2 优劣势分析 5 以上分区组成的复合分区5.1 建表示例5.2 优劣势分析 6 分区方式适合场…