Rat's

使用Docker安装Seafile云盘专业版,并配置域名及SSL证书
说明:Seafile是一个开源的文件云存储平台,主要是为团队设计的,功能很多,用户可加密资料库,且密码不会保存在服...
扫描右侧二维码阅读全文
26
2018/07

使用Docker安装Seafile云盘专业版,并配置域名及SSL证书

说明:Seafile是一个开源的文件云存储平台,主要是为团队设计的,功能很多,用户可加密资料库,且密码不会保存在服务器端,管理员也无权访问你的文件。用户之间也可以共享和同步文件,方便了团队协同工作。其版本分为开源免费版和专业版,两者区别挺大的,比如专业版多了搜索、集群、亚马逊S3Ceph、阿里云OSS等功能,而且专业版3用户免费,一两个人用的话建议专业版,这里说下专业版安装教程。如果人多建议使用开源免费版,安装可以查看:Linux VPS一键安装Seafile搭建私有云盘存储

截图

请输入图片描述
请输入图片描述

安装

Github地址:https://github.com/haiwen/seafile-docs-cn

1、安装Docker

#CentOS 6
rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y
yum -y install docker-io
service docker start
chkconfig docker on

#CentOS 7、Debian、Ubuntu
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker

2、安装Seafile专业版
先访问该地址:https://customer.seafile.com,注册个账号,然后点击左侧的Downloads,这时候你会看到Seafile专业版的Docker登录信息。

然后使用VPS登陆Seafile的私有仓库:

#登录仓库地址docker.seadrive.org,输入给你的用户名和密码即可
docker login docker.seadrive.org

运行Seafile专业版容器:

#记得修改默认域名、管理员用户名和密码,本配置可自动申请Let's encrypt SSL证书,记得提前解析好域名
docker run -d --name seafile \
  -e SEAFILE_SERVER_LETSENCRYPT=true \
  -e SEAFILE_SERVER_HOSTNAME=moerats.com \
  -e SEAFILE_ADMIN_EMAIL=admin@moerats.com \
  -e SEAFILE_ADMIN_PASSWORD=moerats_password \
  -v /root/seafile:/shared \
  -p 80:80 \
  -p 443:443 \
  docker.seadrive.org/seafileltd/seafile-pro:latest

#如果你想使用自己的SSL证书,需要创建/root/seafile/ssl目录, 并将你的证书以及私钥放入这个目录中,如果的网站名称为moerats.com, 那么你的证书名称必须为moerats.com.crt,私钥名称必须为moerats.com.key。

安装完成后,需要进行初始化配置,打开域名会出现502 Bad Gateway,等待几分钟再访问就可以看到SeafileWeb界面了,此后Seafile数据会保存在服务器的/root/seafile目录。

客户端登录

我们除了可以通过域名登录查看外,还可以使用专用的客户端登录,支持Windows客户端、Mac客户端、Linux客户端、Terminal客户端、Android客户端、iPad/iPhone客户端。

客户端下载:https://www.seafile.com/download/,安装后打开客户端,直接填入域名,用户名和密码登录即可。

添加管理员

docker exec -it seafile /opt/seafile/seafile-server-latest/reset-admin.sh

然后根据提示输入用户名以及密码即可。

目录结构

这里说下容器内/shared的目录结构,可直接查看映射在外部的/root/seafile文件夹即可。

/shared/db:mysql服务的数据目录。
/shared/seafile:Seafile服务的配置文件以及数据文件。
/shared/logs:日志目录。
/shared/logs/var-log:我们将容器内的/var/log挂载到本目录,您可以在shared/logs/var-log/nginx/中找到nginx的日志文件。
/shared/logs/seafile:Seafile服务运行产生的日志文件目录,比如您可以在 shared/logs/seafile/seafile.log文件中看到seaf-server的日志。
/shared/ssl:存放证书的目录。

升级Seafile

#该命令可以升级到Seafile的最新版本
docker pull docker.seadrive.org/seafileltd/seafile-pro:latest
docker rm -f seafile
docker run -d --name seafile \
  -e SEAFILE_SERVER_LETSENCRYPT=true \
  -e SEAFILE_SERVER_HOSTNAME=moerats.com \
  -e SEAFILE_ADMIN_EMAIL=admin@moerats.com \
  -e SEAFILE_ADMIN_PASSWORD=moerats_password \
  -v /root/seafile:/shared \
  -p 80:80 \
  -p 443:443 \
  docker.seadrive.org/seafileltd/seafile-pro:latest

问题查看

如果在使用的过程中出现问题,我们可以查看docker logsdocker exec信息来查看错误原因。

docker logs -f seafile
#或者
docker exec -it seafile bash

相关教程

Vultr新用户注册送100美元/16个机房按小时计费,支持支付宝,【点击查看】。
最后修改:2018 年 07 月 26 日 09 : 09 AM

发表评论 取消回复

46 条评论

  1. 左楠风

    请教个问题,在群晖里部署,映射的数据文件夹只能位于系统的docker文件夹内,设置到其他磁盘就无法运行,尝试改了文件夹权限也没用,可能会是什么问题呢?

    1. 左楠风
      @左楠风

      搞定了,回来补个记录。主要是因为文件夹权限的关系,将文件夹设置为755就可以了。

  2. moskoe

    博主,请问这句话什么意思 “记得修改默认域名、管理员用户名和密码,本配置可自动申请Let's encrypt SSL证书” 默认域名,用户名和密码在哪看啊,望赐教

    1. Rat's
      @moskoe

      看下面那个-e变量,指的就是你问的这些参数

      1. moskoe
        @Rat's

        博主,那个docker -run下的-p是大写还是小写的啊?我两个都试了一下。小写的在输入 -p 80:80 回车后显示docker: invalid reference format,大写的在最后一句输入完之后显示
        Unable to find image '80:80' locally
        docker: Error response from daemon: pull access denied for 80, repository does not exist or may require 'docker login'.
        求解答,多谢。

        1. Rat's
          @moskoe

          小写,多看教程,按照步骤就没错的

  3. 温锦瑜

    请问,执行到docker login docker.seadrive.org的时候,输入了官网download页面给的账户密码,回车提示:Error response from daemon: Get https://docker.seadrive.org/v2/: unauthorized: authentication required是怎么回事

    1. Rat's
      @温锦瑜

      显示认证失败,确定输入账号密码是不是正确的。

      1. chilohwei
        @Rat's

        博主,遇到了同样的问题,确认密码和账户是正确的。直接访问 https://docker.seadrive.org/v2/ 也会报同样地错误,是否镜像地址已不可用?

  4. CE安全网

    博主用的是lnmp么?还是用的其他的面板?求赐教~~~

    1. Rat's
      @CE安全网

      我建站都不用面板的,要么lnmp,要么OneinStack,随机的。

      1. CE安全网
        @Rat's

        博主,面板用腻了。用的快吐了。

        推荐下lnmp和OneinStack哪个用起来更有逼格~

        1. Rat's
          @CE安全网

          这个没啥逼格之分,喜欢哪个就用哪个。不过我觉得OneinStack方便些。

  5. loop

    顶一个

    1. assmdx
      @loop

      还是owncloud好用
      ps:博主的博客是怎么搭建的呢?求主题?

      1. Rat's
        @assmdx

        程序是Typecho,主题是Handsome。