利用云服务器搭建云盘(搭建自己的在线存储&&可上传下载可共享)

本文详细介绍了如何在CentOS7系统上使用Docker部署Seafile云存储服务,包括下载Docker、安装Seafile镜像、启动容器、设置端口映射、配置防火墙以及处理部署过程中可能遇到的问题,如容器命名冲突。最后提到了网页端的使用和Linux客户端的后续安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker部署seafile

背景

由于学校最近有一个需求,搭建一个可供老师使用的在线存储,最后我自己就尝试这搭建。这过程中也出现了不少问题,下面我会说明!!!

准备

  1. 需要一台云服务器(如果你本地有虚拟机也是可以的)我使用的是CentOS7

一、服务端安装

我使用的是Xshell连接远程服务器

  • 下载docker并安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

  • 开启docker服务

systemctl start docker

  • 拉取镜像

docker pull seafileltd/seafile

  • 查看镜像

docker images

  • 运行容器

docker run -d --name seafile
-e SEAFILE_SERVER_HOSTNAME=xx.site
-e SEAFILE_ADMIN_EMAIL=mail.xx@qq.com
-e SEAFILE_ADMIN_PASSWORD=your_password
-v /opt/seafile-data:/shared
-p 8000:80
seafileltd/seafile:latest

说明:

参数解析:
SEAFILE_SERVER_HOSTNAME:服务器域名(没有域名可以用云服务器ip替代)
SEAFILE_ADMIN_EMAIL:管理员账号
SEAFILE_ADMIN_PASSWORD:管理员密码
-v /opt/seafile-data:seafile容器挂载目录
-p 8000:80:端口映射
以上参数可根据需要修改

有可能第一次启动会失败,可以输入docker ps检查seafile容器是否在运行
如果失败,重启该容器即可

找到创建的seafile容器contanier id

docker ps -a

输入刚才contanier id

docker stop ${contanier id }

再次启动

docker start ${contanier id }

打开防火墙端口

  • 打开8000端口

firewall-cmd --zone=public --add-port=8000/tcp --permanent

  • 重启防火墙

firewall-cmd --reload

另外要检查服务器的防火墙设置是否打开了80端口

查看开发的端口

firewall-cmd --zone=public --list-ports

二、网页端使用

登录网页地址为(前面设置的 SEAFILE_SERVER_HOSTNAME=xx.site \)

xx.site

账号用户名为(前面设置的 SEAFILE_ADMIN_EMAIL=mail.xx@qq.com )

mail.xx@qq.com

密码为(前面设置的 SEAFILE_ADMIN_PASSWORD=your_password \)

your_password

登录后设置URL,不然上传文件会失!!!!!
在这里插入图片描述
完成之后就可以上传文件!!!

在这里插入图片描述

问题说明:

使用docker 出现Error response from daemon: Conflict. The container name “***” is already in use
解决方法:
(1)给容器换一个名字, 比如说 docker run -it --name=mycentos2 centos:7 /bin/bash, 可以解决问题.
(2)将原来的容器删除

删除当前容器:docker container rm mycentos(提示: 这一步要确定删除容器没问题的情况下, 才可以做)

查询当前容器:docker container ls -all

这里有两个不同的单词,images和container。其中images很好理解,跟平常使用的虚拟机的镜像一个意思,相当于一个模版,而container则是images运行时的的状态。docker对于运行过的image都保留一个状态(container),可以使用命令docker ps来查看正在运行的container,对于已经退出的container,则可以使用docker ps -a来查看。 如果你退出了一个container而忘记保存其中的数据,你可以使用docker ps -a来找到对应的运行过的container使用docker commit命令将其保存为image然后运行。

回到之前的问题,由于image被某个container引用(拿来运行),如果不将这个引用的container销毁(删除),那image肯定是不能被删除。

所以想要删除运行过的images必须首先删除它的container。

针对上面报错也可以:

docker: Error response from daemon: Conflict. The container name “/mysql” is already in use by container “27e9834dce87b6cac674945d7917ce2f9c52537569420275fd05b3e5e6460070”. You have to remove (or rename) that container to be able to reuse that name.
出现上述的错误,是因为docker容器里面已经存在,如果不需要,则删除。docker rm fb087642b497(该containerID)
如果想要再次使用,使用

docker restart 镜像名
1
则可以重启该container容器。

Linux客户端安装之后再讲解!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈毓辰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值