安装

Zdir 3安装文档

Linux安装Zdir

一键安装

如果您想快速安装Zdir,可以使用Zdir官方提供的一键安装脚本,只需要执行下面的命令:

# CentOS系统
yum -y install curl
curl -s "http://soft.xiaoz.org/zdir/sh/zdir.sh" | bash -s install
# Debian or Ubuntu系统
apt-get install curl
curl -s "http://soft.xiaoz.org/zdir/sh/zdir.sh" | bash -s install

手动安装

Zdir最新版本下载地址:https://soft.xiaoz.org/#/public/zdir

以下操作请在SSH命令行完成(注意:请自行修改为最新版下载地址):

# 创建一个新的目录用于存放zdir
mkdir zdir
# 进入目录
cd zdir
# 下载最新安装程序
wget https://soft.xiaoz.org/zdir/3.2.0/zdir_3.2.0_linux_amd64.tar.gz
# 解压
tar -xvf zdir_3.2.0_linux_amd64.tar.gz
# 初始化
./zdir init
# 启动
systemctl start zdir
# 停止
systemctl stop zdir
# 重启
systemctl restart zdir
# 开机自启
systemctl enable zdir

注意,防火墙还需要放行6080端口

#firewalld
firewall-cmd --zone=public --add-port=6080/tcp --permanent
firewall-cmd --reload
#如果使用的ufw
ufw allow 6080/tcp

初始化

安装完毕后,默认访问地址为http://IP:6080/#/user/login初始化用户名、密码,或者点击右上方的登录亦可。

Docker安装Zdir

Docker常规安装

请确保您已经安装了Docker服务,然后执行下面的命令:

docker run -d --name="zdir" \
  -v /data/apps/zdir/data:/data/apps/zdir/data \
  -v /data/public:/data/apps/zdir/data/public \
  -p 6080:6080 \
  --restart=always \
  helloz/zdir:3.2.0

docker compose安装

在Zdir目录下新建一个docker-compose.yaml,并复制一下内容:

version: '3.3'
services:
    zdir:
        container_name: zdir
        volumes:
            - '/data/apps/zdir/data:/data/apps/zdir/data'
            - '/data/public:/data/apps/zdir/data/public'
        ports:
            - '6080:6080'
        restart: always
        image: 'helloz/zdir:3.2.0'

然后启动:docker-compose up -d

群晖安装

Docker 注册表里搜索 zdir 下载镜像(helloz/zdir),标签选择“latest”

常规设置,勾选下面2个按钮:

  1. 使用高权限执行容器
  2. 启用自动重新启动

设置存储空间,注意:

  1. 红框中的文件/文件夹 自己选择群晖里面的文件夹
  2. 装载路径固定不变,不要修改。
    • /data/apps/zdir/data 为Zdir配置文件等数据
    • /data/apps/zdir/data/public 需要读取的文件列表
  3. 不要勾选只读

端口设置,容器端口 6800 不要动,本地端口为访问端口可自行修改设置。

其它选项保持默认不修改,然后创建并启动。最后访问页面右上方的登录进行初始化。

初始化

安装完毕后,默认访问地址为http://IP:6080/#/user/login初始化用户名、密码,或者点击右上方的登录亦可。

Windows安装Zdir

注意:Windows环境下安装的Zdir不支持全局搜索

访问:http://soft.xiaoz.org/#/public/zdir 下载最新版本到本地并解压。

进入刚刚解压的zdir目录,鼠标右键“在终端打开”

执行命令./zdir.exe init进行初始化:

此时会弹出“你要允许来自未知发布的此应用对你的设备进行更改吗?”,点是即可完成初始化,初始化完毕后终端会提示:

Init success.

打开Win + R,输入services.msc,找到Zdir这个服务,点启动即可。

初始化

安装完毕后,默认访问地址为http://IP:6080/#/user/login初始化用户名、密码,或者点击右上方的登录亦可。

配置文件

配置文件

配置文件查找规则为:

  1. 优先查找data/config/config.ini
  2. 如果data/config/config.ini未找到,则查找data/config.ini

以下是配置文件内容

# 服务端设置
[servers]
port = :6080
RunMode = release

# 存储设置
[storages]
public_path = data/public
public_domain = 

# 站点信息设置,此项目在3.2.0及之后的版本中不再使用
[sites]
title = Zdir
name = Zdir

有以下参数需要注意:

服务端配置[servers]

存储配置[storages]

站点信息配置[sites](3.2.0及之后的版本已废弃此参数)

注意事项

Nginx反向代理

Nginx配置文件

您可以使用Nginx反向代理Zdir,使其通过域名访问。这是生产环境推荐的做法,下方配置可作为参考:

server {
  listen 80;
  #domain.com改成你自己的域名
  server_name domain.com;

   # 精确匹配首页,=优先级最高
	location = / {
		proxy_pass http://127.0.0.1:6080;
		proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	}
	# 匹配Vue静态文件目录,和public公共文件夹目录
	location ~* /(assets|public|api|admin) {
		#如果是图片等静态文件,添加Expires头部
		if ( $uri ~* .*\.(gif|jpg|jpeg|png|bmp|webp|swf|flv|mp4|ts|ico|js|css|svg|ico)$ ) {
			expires 7d;
		}
    	client_max_body_size 1024m;
		proxy_pass http://127.0.0.1:6080;
		proxy_set_header X-Real-IP $remote_addr;
   	    proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	}
	# 非/ 和非 /assets目录的时候进行重定向来去掉/public,/ 通用匹配, 如果没有其它匹配,任何请求都会匹配到,优先级最低
	location / {
		rewrite ^/(.*) /public/$1;
	}
	
}

然后修改Zdir配置文件data/config/config.inipublic_domain这个参数配置为自己的域名,比如http://domain.com注意:末尾不需要/,但需要带上http或https协议),并重启Zdir

宝塔Nginx用户

如果您使用的宝塔,且安装了Nginx,可以在宝塔后台 - 添加站点 - 填写域名,并创建一个站点。

然后修改这个站点 - 伪静态,添加下面的配置保存即可。

# 精确匹配首页,=优先级最高
	location = / {
		proxy_pass http://127.0.0.1:6080;
		proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	}
	# 匹配Vue静态文件目录,和public公共文件夹目录
	location ~* /(assets|public|api|admin) {
		#如果是图片等静态文件,添加Expires头部
		if ( $uri ~* .*\.(gif|jpg|jpeg|png|bmp|webp|swf|flv|mp4|ts|ico|js|css|svg|ico)$ ) {
			expires 7d;
		}
		proxy_pass http://127.0.0.1:6080;
		proxy_set_header X-Real-IP $remote_addr;
   	    proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	}
	# 非/ 和非 /assets目录的时候进行重定向来去掉/public,/ 通用匹配, 如果没有其它匹配,任何请求都会匹配到,优先级最低
	location / {
		rewrite ^/(.*) /public/$1;
	}

为了避免宝塔的默认规则影响,您还需要在站点配置文件,删除下面的规则: