前言
随着企业数据量的激增,构建一个安全、高效的企业级文件管理系统至关重要。华为 Flexus X 服务器,以其灵活的资源配置与卓越的性能,成为部署 Seafile 社区版云存储解决方案的理想选择。在 828 华为云企业上云节之际,利用 Flexus X 部署 Seafile,不仅可快速响应企业存储需求,更实现成本效益最大化。本文将详述如何轻松在 Flexus X 上搭建 Seafile,助力企业实现文件管理的智能化升级。
Seafile 介绍
Seafile 社区版是一款功能丰富、安全可靠的开源云存储解决方案,它支持跨平台同步与共享文件,提供团队协作、版本控制和精细的权限管理功能。无论是企业内部文档管理还是个人资料备份,Seafile 都能提供高效、便捷的服务,满足多样化的数据管理需求。其开源特性与强大功能相结合,赢得了广泛用户的青睐。
官方文档:https://cloud.seafile.com/published/seafile-manual-cn/
环境规划
搭建流程
修改 docker-compose.yaml 和.env 文件,官方下载地址
[root@flexusx-251f ~]# mkdir /opt/seafile-data[root@flexusx-251f ~]# mkdir /opt/seafile-mysql[root@flexusx-251f ~]# cd /opt/seafile-data/#将下载的 docekr-compose.yaml 和.env 文件上传至主机[root@flexusx-251f seafile-data]# lsdocker-compose.yml [root@flexusx-251f seafile]# vim docker-compose.yml[root@flexusx-251f seafile]# cat docker-compose.ymlservices: db: image: ${SEAFILE_DB_IMAGE:-mariadb:10.11} container_name: seafile-mysql environment: - MYSQL_ROOT_PASSWORD=${SEAFILE_MYSQL_ROOT_PASSWORD:?Variable is not set or empty} - MYSQL_LOG_CONSOLE=true - MARIADB_AUTO_UPGRADE=1 volumes: - "${SEAFILE_MYSQL_VOLUMES:-/opt/seafile-mysql/db}:/var/lib/mysql" networks: - seafile-net memcached: image: ${SEAFILE_MEMCACHED_IMAGE:-memcached:1.6.18} container_name: seafile-memcached entrypoint: memcached -m 256 networks: - seafile-net seafile: image: ${SEAFILE_IMAGE:-seafileltd/seafile-mc:11.0-latest} container_name: seafile ports: - "1234:80" - ${SEAFILE_SSL_PORT:-}:443 volumes: - ${SEAFILE_VOLUMES:-/opt/seafile-data}:/shared environment: - DB_HOST=${SEAFILE_MYSQL_DB_HOST:-db} - DB_ROOT_PASSWD=${SEAFILE_MYSQL_ROOT_PASSWORD:?Variable is not set or empty} - TIME_ZONE=${TIME_ZONE:-Asia/Shanghai} - SEAFILE_ADMIN_EMAIL=${SEAFILE_ADMIN_EMAIL:-me@example.com} - SEAFILE_ADMIN_PASSWORD=${SEAFILE_ADMIN_PASSWORD:-asecret} - SEAFILE_SERVER_HOSTNAME=${SEAFILE_SERVER_HOSTNAME:-example.seafile.com} - SEAFILE_SERVER_LETSENCRYPT=${SEAFILE_SERVER_LETSENCRYPT:-false} - FORCE_HTTPS_IN_CONF=${SEAFILE_FORCE_HTTPS_IN_CONF:-false} depends_on: - db - memcached networks: - seafile-netnetworks: seafile-net: # env 文件中存放的是一些变量对应值[root@flexusx-251f seafile-data]# cat .envCOMPOSE_FILE='docker-compose.yml'COMPOSE_PATH_SEPARATOR=','SEAFILE_IMAGE=seafileltd/seafile-mc:11.0-latestSEAFILE_DB_IMAGE=mariadb:10.11SEAFILE_MEMCACHED_IMAGE=memcached:1.6.18SEAFILE_VOLUMES=/opt/seafile-dataSEAFILE_MYSQL_VOLUMES=/opt/seafile-mysql/dbSEAFILE_MYSQL_DB_HOST=dbSEAFILE_MYSQL_ROOT_PASSWORD=Huawei2#$TIME_ZONE='Asia/Shanghai'SEAFILE_SERVER_HOSTNAME=example.seafile.comSEAFILE_SERVER_LETSENCRYPT=falseSEAFILE_FORCE_HTTPS_IN_CONF=falseSEAFILE_SSL_PORT=SEAFILE_ADMIN_EMAIL=admin@example.comSEAFILE_ADMIN_PASSWORD=Huawei12#$
拉取对应的镜像
[root@flexusx-251f seafile]# docker-compose pull[+] Pulling 25/25 ✔ memcached Pulled 16.6s ✔ a2318d6c47ec Already exists 0.0s ✔ a5daf70fef96 Pull complete 0.3s ✔ b0b7f6e48c99 Pull complete 0.4s ✔ 759ef1ab0c87 Pull complete 0.5s ✔ 5823fa7609d8 Pull complete 0.7s ✔ 5565e224421e Pull complete 0.7s ✔ seafile Pulled 34.6s ✔ 7c3b88808835 Pull complete 1.3s ✔ 6ea0e81b1046 Pull complete 1.3s ✔ 2cdac9582559 Pull complete 2.5s ✔ ccd44c40b557 Pull complete 2.5s ✔ edcbbb902102 Pull complete 9.1s ✔ 92b48bd34329 Pull complete 10.0s ✔ 5bcedf4c4f9f Pull complete 10.4s ✔ b07edc8cb7f6 Pull complete 11.5s ✔ 9590e9eed365 Pull complete 14.5s ✔ 916c8f4e3fc8 Pull complete 14.6s ✔ de6bbe57f3fe Pull complete 14.6s ✔ 5646d0bc87c4 Pull complete 14.6s ✔ d499e1745bf4 Pull complete 14.7s ✔ de86ad2ed9d3 Pull complete 14.7s ✔ a16495c6dca9 Pull complete 14.7s ✔ bea0c6116c5d Pull complete 18.5s ✔ db Pulled 13.9s
创建容器
[root@flexusx-251f seafile]# docker-compose up -dd[+] Running 3/3 ✔ Container seafile-memcached Started 1.7s ✔ Container seafile-mysql Started 1.7s ✔ Container seafile Started 1.1s
查看容器运行状态
[root@flexusx-251f seafile]# docker-compose psNAME IMAGE COMMAND SERVICE CREATED STATUS PORTSseafile seafileltd/seafile-mc:10.0.1 "/sbin/my_init -- /s…" seafile 4 seconds ago Up 4 seconds 0.0.0.0:6188->80/tcp, :::6188->80/tcpseafile-memcached memcached:1.6 "memcached -m 256" memcached 4 seconds ago Up 4 seconds 11211/tcpseafile-mysql mariadb:10.5 "docker-entrypoint.s…" db 4 seconds ago Up 4 seconds 3306/tcp
查看容器日志(如果没有报错信息,证明容器正常运行)
[root@flexusx-251f seafile]# docker-compose logs
配置安全组,放行端口号 1234
访问测试
在浏览器地址栏输入:http://主机 IP:1234
输入账号,密码进行登录(.env 文件中有指定 )
登陆成功
基本使用
创建资料库
默认会有一个私人资料库,我们创建一个新的资料库
• 点击左上角新建资料库,输入名称
• 可以选择加密(需要设置密码),也可以默认不加密
• 填写完成,点击提交,即可创建成功
资料库的基本使用
点击资料库名称,即可进入该资料库
点击左上角上传,可以选择上传文件或者文件夹
点击新建,可以新建目录和多种类型的文件
新建一个文件
也可以进行资料库的共享
– 支持多种共享方式
– 下边演示链接共享
选择链接的保护方式,之后点击生成链接
之后就可以通过链接或者二维码进行访问了
系统管理
点击右上角头像,点击系统管理
可以对用户进行管理
创建一个新用户,输入邮箱,姓名,密码,点击提交
创建成功
使用普通用户进行登录(首次登录之后,需要进行密码修改)
登陆成功
体验和感受
在构建企业级文件管理系统的过程中,华为 FlexusX 服务器与 Seafile 社区版云存储解决方案的完美结合,给我带来了前所未有的体验。FlexusX 云服务器以其强大的算力、灵活的扩展性和智能调度能力,为 Seafile 的部署提供了坚实的基础。部署过程流畅无阻,资源按需分配,确保了系统的高可用性和性能最优化。