云原生之使用docker部署ZPan个人网盘系统

简介: 云原生之使用docker部署ZPan个人网盘系统

一、ZPan介绍

1.ZPan简介

ZPan是一个基于云存储的自托管云盘,用于自建私人网盘或企业网盘。

2.ZPan特点

  • 不受服务器带宽限制
  • 支持所有兼容S3协议的云存储
  • 支持文件和文件夹管理
  • 支持文件和文件夹共享(无需登录即可访问)
  • 支持文档预览和音视频播放
  • 支持多用户存储空间控制
  • 支持多种语言

二、检查本地docker环境

1.检查系统版本

检查本地环境,操作系统版本,本次实践使用的是Centos7.6。
[root@jeven ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core)

2.检查docker版本

检查docker的版本,本次使用的docker版本为 20.10.17。
[root@jeven ~]# docker version
Client: Docker Engine - Community
 Version:           20.10.17
 API version:       1.41
 Go version:        go1.17.11
 Git commit:        100c701
 Built:             Mon Jun  6 23:05:12 2022
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server: Docker Engine - Community
 Engine:
  Version:          20.10.17
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.17.11
  Git commit:       a89b842
  Built:            Mon Jun  6 23:03:33 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.6
  GitCommit:        10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc:
  Version:          1.1.2
  GitCommit:        v1.1.2-0-ga916309
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

3.检查docker服务状态

检查docker的服务状态是否正常。
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2023-03-13 17:43:40 CST; 3h 37min ago
     Docs: https://docs.docker.com
 Main PID: 117974 (dockerd)
    Tasks: 128
   Memory: 852.6M
   CGroup: /system.slice/docker.service

三、下载ZPan镜像

在dockerhub下载ZPan镜像,本次下载的是V1.6版本,也可以直接拉取最新版本latest。
[root@jeven ~]# docker pull saltbo/zpan:v1.6
v1.6: Pulling from saltbo/zpan
b03a94565ecb: Pull complete 
6ed8de0bcbe9: Pull complete 
df244404f748: Pull complete 
Digest: sha256:9ba229fabd58272b86bc1e113a585277e280bd204b3b57a948864b664a6c65c9
Status: Downloaded newer image for saltbo/zpan:v1.6
docker.io/saltbo/zpan:v1.6

四、部署ZPan应用

1.创建部署目录

创建一个部署目录,用于挂载配置文件conf.yml。
[root@jeven ~]# mkdir -p /data/zpan
[root@jeven ~]# cd /data/zpan/
[root@jeven zpan]# 

2.编辑conf.yml文件

在/data/zpan目录下,编辑conf.yml文件。
以下配置文件为默认状态,可根据需要自行开启,或者默认部署后,登录ZPan管理页面自行配置。
[root@jeven zpan]# cat config.yml 
#详细配置文档可参考: https://zpan.space/#/zh-cn/config
#
debug: false
invitation: false # 邀请注册是否开启,开启后只允许邀请注册,默认关闭
storage: 104857600000 # 给每个用户分配的初始空间,单位:字节
#
database:
driver: mysql
dsn: root:admin@tcp(127.0.0.1:3306)/zpan?charset=utf8&parseTime=True&loc=Local
##数据库支持 MySQL, PostgreSQL, SQlite, SQL Server 四种数据库驱动
##默认情况下不修改这里,会使用 SQlite 作为数据库
#
#provider:
#name: oss
#bucket: saltbo-zpan-test
#endpoint: https://oss-cn-zhangjiakou.aliyuncs.com
#customHost: http://dl-test.saltbo.cn
#accessKey: LTAIxxxxxxxxxxxxxxx7YoV
#accessSecret: PFGVwxxxxxxxxxxxxxxxxRd09u
#
##配置发信邮箱即可开启账号注册的邮箱验证
##email:
## host: smtpdm.aliyun.com:25
## sender: no-reply@saltbo.fun
## username: Zpan
## password: mGxxxxxxxxh9i

3.创建ZPan容器

使用docker run直接创建ZPan容器。
[root@jeven zpan]# docker run -d --name zpan --restart always -p 8366:8222 -v /data/zpan:/zpan  saltbo/zpan:v1.6
2ccf7798cf01b28b767fdd0930b8e39a889b25e4d120ac8005da093b23d58c23

4.查看ZPan容器状态

检查ZPan容器状态
[root@jeven zpan]# docker ps
CONTAINER ID   IMAGE                             COMMAND                  CREATED          STATUS                          PORTS                                                                                                                                                                            NAMES
2ccf7798cf01   saltbo/zpan:v1.6                  "./zpan server"          35 seconds ago   Up 34 seconds                   0.0.0.0:8366->8222/tcp, :::8366->8222/tcp                                                                                                                                        zpan

五、进入容器内复制配置文件

1.进入ZPan容器内

进行ZPan容器内
[root@jeven zpan]# docker exec  -it zpan /bin/bash
root@2ccf7798cf01:/srv# pwd
/srv

2.拷贝配置文件到默认路径

在容器内创建默认路径/etc/zpan,将zpan的配置文件拷贝到该目录下,如果不进行此操作,会在应用初始化时,提示报错。
/srv
root@2ccf7798cf01:/srv# mkdir -p /etc/zpan         
root@2ccf7798cf01:/srv# cp /zpan/config.yml  /etc/zpan/
root@2ccf7798cf01:/srv# ls /etc/zpan/config.yml 
/etc/zpan/config.yml

六、访问ZPan应用

1.ZPan应用的初始化

  • 配置数据库
访问http: //192.168.3.166:8366/install
进入ZPna的数据库配置页面,默认使用sqlite3类型数据库就可以了,也可以选择连接mysql数据库。
  • 配置管理员账号
设置管理员密码,自定义即可,点击开始安装即可。
  • ZPan初始化完成
开始安装后,提示ZPan安装成功。

2.访问ZPan的web首页

image.png

相关文章
|
4月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
1828 4
|
4月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
211 5
|
4月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
1292 7
|
4月前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
436 2
|
存储 Cloud Native 数据处理
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式
本文整理自阿里云资深技术专家、Apache Flink PMC 成员梅源在 Flink Forward Asia 新加坡 2025上的分享,深入解析 Flink 状态管理系统的发展历程,从核心设计到 Flink 2.0 存算分离架构,并展望未来基于流批一体的通用增量计算方向。
442 0
从嵌入式状态管理到云原生架构:Apache Flink 的演进与下一代增量计算范式
|
6月前
|
运维 监控 Cloud Native
从本土到全球,云原生架构护航灵犀互娱游戏出海
本文内容整理自「 2025 中企出海大会·游戏与互娱出海分论坛」,灵犀互娱基础架构负责人朱晓靖的演讲内容,从技术层面分享云原生架构护航灵犀互娱游戏出海经验。
589 16
|
6月前
|
运维 监控 Cloud Native
从本土到全球,云原生架构护航灵犀互娱游戏出海
内容整理自「 2025 中企出海大会·游戏与互娱出海分论坛」,灵犀互娱基础架构负责人朱晓靖的演讲内容,从技术层面分享云原生架构护航灵犀互娱游戏出海经验。
|
10月前
|
运维 Cloud Native 测试技术
极氪汽车云原生架构落地实践
随着极氪数字业务的飞速发展,背后的 IT 技术也在不断更新迭代。极氪极为重视客户对服务的体验,并将系统稳定性、业务功能的迭代效率、问题的快速定位和解决视为构建核心竞争力的基石。
|
4月前
|
人工智能 Kubernetes Cloud Native
Higress(云原生AI网关) 架构学习指南
Higress 架构学习指南 🚀写在前面: 嘿,欢迎你来到 Higress 的学习之旅!
1175 0