宝塔面板安装反代seafile开启https后网络错误

我是一个医生,想在平时科研学习的过程中使用Seafile。为了方便使用,我在VPS上安装了宝塔面板作为vps的管理,我已经安装好seafile,在宝塔面板上创建新网页并反代IP:8000后seafile上传下载一切正常。为了加强安全我开启了用来反代seafile的域名的SSL。但开启https访问后,上传文件上传到100%后便显示网络错误,也无法下载文件。求助大神,希望能帮助我解决这个问题。感谢!

能出个教程么 怎么在宝塔 面板 装seafile
谢谢

这个问题我也遇到了,官方的https开启方法尝试过,没弄明白

https://www.copll.top/index.php/archives/24/
这是我写的一个教程,有啥问题可以给我留言

花了半天时间,终于解决了这个问题,将解决过程发布如下:

通过Docker安装Seafile并开启HTTPS

一周前通过一般方法安装seafile,自我感觉美好。但在深入使用的过程中陆续发现doc文档无法预览、https下无法上传下载等致命问题。官方论坛搜索无果,在社群中一热心网友的提醒下我开始尝试使用Docker。现将全部过程记录如下,作为备忘,也作为他人避坑之指北。

文中的操作环境为CentOS 7,纯净环境。

安装Docker

尽量在纯净环境中进行安装。若不确定系统中有无Docker残留,先执行:


sudo yum remove docker docker-common docker-selinux docker-engine

安装需要的软件包, yum-util 提供 yum-config-manager 功能,另外两个是 devicemapper 驱动依赖的。


sudo yum install -y yum-utils device-mapper-persistent-data lvm2

设置 yum 源。


sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装Docker-CE。


sudo yum install docker-ce

启动Docker并将Docker加入开机启动


sudo systemctl start docker

sudo systemctl enable docker

启动Seafile-pro镜像


docker run -d --name seafile \

--restart=always \

-e SEAFILE_SERVER_LETSENCRYPT=true \ #https

-e SEAFILE_SERVER_HOSTNAME=xxx.xxx \ #your_hostname

-e SEAFILE_ADMIN_EMAIL=xxx@xxx.xxx \ #your_email

-e SEAFILE_ADMIN_PASSWORD=xxx \ #your_passwd

-v /data/seafile-data:/shared \

-p 8080:80 \

-p 443:443 \

docker.seadrive.org/seafileltd/seafile-pro:latest

系统会自动拉取镜像并安装。

HTTPS的设置

执行以下命令,以获取容器的日志,并进行跟踪日志输出。


docker logs -f seafile

根据日志可发现,ssl文件目录已创建。现在需要申请ssl证书,并导入到seafile的ssl证书路径。

关闭Seafile。


docker stop seafile

将申请到的SSL证书crt和key文件放置于 /data/seafile-data/ssl路径。注意!如果的域名为xxx.xxx, 那么证书文件名必需为xxx.xxx.crt,私钥称号必需为xxx.xxx.key。

运行Seafile。


docker start seafile

再执行以下命令,以获取容器的日志,并进行跟踪日志输出。


docker logs -f seafile

Seafile至此可正常使用了。

通过宝塔面板自动申请并续期SSL证书

宝塔面板可以自动申请并续期,我们通过ln命令来将宝塔面板申请到的证书与seafile的证书路径连接起来,从而达到自动续期的目的。

在执行此命令之前,应该删除 /data/seafile-data/ssl路径下的xxx.xxx.key文件。


ln /www/server/panel/vhost/cert/xxx.xxx/fullchain.pem /data/seafile-data/ssl/xxx.xxx.crt #your_hostname

ln /www/server/panel/vhost/cert/xxx.xxx/privkey.pem /data/seafile-data/ssl/xxx.xxx.key ##your_hostname

运行Seafile。


docker start seafile

此时会遇到报错


Error starting userland proxy: listen tcp 0.0.0.0:443: bind: address already in use

提示443端口被占用。前往宝塔面板网页配置文件,修改443端口为444。

运行Seafile。


docker start seafile

再执行以下命令,以获取容器的日志,并进行跟踪日志输出。


docker logs -f seafile

Seafile至此可正常使用了。Enjoy!

我已经解决了,请参看我的回帖。

刚好今天我也弄了这个,并且又成功了,请看这贴,希望能帮到
https://bbs.seafile.com/t/topic/9139/3