安装
Zdir 3安装文档
Linux安装Zdir
注意:安装前请关闭Selinux服务,不然可能无法正常启动!!!
一键安装
如果您想快速安装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
- 默认安装路径为:
/data/apps/zdir
- 需要公开的文件列表路径位于
/data/apps/zdir/data/public
手动安装
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
- 需要公开的文件列表路径位于
data/public
注意,防火墙还需要放行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.3.0
- 第一个
/data/apps/zdir/data
为本机挂载路径,可自行修改,第二个/data/apps/zdir/data
固定,不要修改 -
/data/public
为本地挂载目录(也就是Zdir要读取的文件夹),请根据实际情况修改 - 第一个
6080
为Zdir访问端口,可自行修改,第二个6080
为容器端口,不要修改
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.3.0'
然后启动:docker-compose up -d
群晖安装
Docker 注册表里搜索 zdir 下载镜像(helloz/zdir),标签选择“latest”
常规设置,勾选下面2个按钮:
- 使用高权限执行容器
- 启用自动重新启动
设置存储空间,注意:
- 红框中的文件/文件夹 自己选择群晖里面的文件夹
- 装载路径固定不变,不要修改。
-
/data/apps/zdir/data
为Zdir配置文件等数据 -
/data/apps/zdir/data/public
需要读取的文件列表
-
- 不要勾选只读
端口设置,容器端口 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
初始化用户名、密码,或者点击右上方的登录亦可。
配置文件
配置文件
-
3.2.0
及之后的版本,配置文件位于data/config/config.ini
-
3.1.x
之前的版本,配置文件位于data/config.ini
配置文件查找规则为:
- 优先查找
data/config/config.ini
- 如果
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]
-
port
:Zdir监听端口,默认为:6080
,可自行修改 -
RunMode
:Zdir运行默认,默认为release
(生产环境),debug
为调试模式
存储配置[storages]
-
public_path
:需要读取的文件夹路径,默认为空(data/public
),你可以修改为其它绝对路径 -
public_domain
:公共文件的域名,默认为空(即当前域名 + /public,比如:http://localhost:6080/public),如果使用了nginx反向代理,可以设置为自己的域名,比如:http://soft.xiaoz.org
且末尾不再需要/public
也不需要带/
(注意:需要带上http或https协议)
站点信息配置[sites](3.2.0
及之后的版本已废弃此参数)
-
title
:站点标题(浏览器标题栏处的显示) -
name
:站点名称(Zdir左上角的名称显示)
注意事项
- Windows系统的配置文件也应该将
\
替换为/
,比如D:\apps
应该修改为D:/apps
,避免出现其它意外错误 - 修改配置文件后需要重启Zdir服务,并重启一次浏览器(因为Zdir使用了浏览器缓存)
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.ini
在public_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;
}
为了避免宝塔的默认规则影响,您还需要在站点配置文件,删除下面的规则: