h5ai--目录下载网站部署
1.说明
容器化部署,在docker hub上找h5ai的镜像,本文使用的是awesometic/h5ai的镜像进行部署
参考:https://hub.docker.com/r/awesometic/h5ai
2.部署
2.1 创建文件下载目录
mkdir -p /data/h5ai/_h5ai/private/conf/
2.2 下载镜像
docker pull awesometic/h5ai:latest
2.3 先启动容器
docker run -d --name h5ai awesometic/h5ai
2.4 导出配置
- 这个镜像的配置文件在容器中的/config/h5ai/_h5ai/private/conf/,其他镜像可能在别的位置
- 共享文件夹是容器中的/h5ai文件夹
docker cp h5ai:/config /data/h5ai/config
2.5 停止并删除容器
docker rm -f h5ai
2.6 编辑配置文件
参考:
https://zhuanlan.zhihu.com/p/103907645
https://blog.nicky1605.com/index-website-h5ai-install.html
vim /data/h5ai/config/h5ai/_h5ai/private/conf/options.json
a.设置默认语言。
在配置文件中搜索“l10n”找到设置,将en改为zh-cn即可。
"l10n": {
"enabled": true,
"lang": "zh-cn",
"useBrowserLang": true
},2.开启文件搜索功能。
b. 在配置文件中搜索“search”,将false改为true。
"search": {
"enabled": true,
"advanced": true,
"debounceTime": 300,
"ignorecase": true
},
设置好后,h5ai左上角就有会有一搜索按钮,即可搜索h5ai目录里的文件。
c. 打包下载
多文件下载设置需要配置两步。第一步,先配置让h5ai支持文件选择(就是复选框喽!)
"select": {
"enabled": true,
"clickndrag": true,
"checkboxes": true
},
配置文件中搜索“download”,将false改为true,如果需要设置打包文件的格式为zip,而不是默认的tar的话,需要将php-tar改为shell-zip。
"download": {
"enabled": true,
"type": "shell-zip",
"packageName": null,
"alwaysVisible": false
},
d. 信息与二维码
可以通过扫码的方式下载文件。在配置文件中搜索“info”,将false改为true。这步未实现
"info": {
"enabled": true,
"show": true,
"qrcode": true,
"qrFill": "#999",
"qrBack": "#fff"
},
打开侧栏信息按钮后,把鼠标悬停在文件上就可以看见h5ai右侧显示文件类型和二维码,手机扫码就可以下载文件。
3.启动并验证
3.1 启动
docker run -d --name h5ai --restart always -p 666:80 -v /data/h5ai/share:/h5ai -v /data/h5ai/config:/config -e TZ=Asia/ShangHai -e HTPASSWD=true -e HTPASSWD_USER=666 -e HTPASSWD_PW=666 --restart unless-stopped awesometic/h5ai
去掉-e HTPASSWD=true -e HTPASSWD_USER=666 -e HTPASSWD_PW=666进行无密码访问
3.2 查看
3.3添加文件及目录
cd /data/h5ai/share
mkdir test1/test2 -p
echo 222 > 222
3.4结果
可以选中并下载,这个版本点击预览换成了直接下载
使用docker-compose.yml方式部署
version: "3.7"
services:
h5ai:
image: awesometic/h5ai
container_name: h5ai
restart: unless-stopped
volumes:
- /data/h5ai/share:/h5ai
- /data/h5ai/config:/config
ports:
- 666:80
environment:
- TZ=Asia/ShangHai
- HTPASSWD=true
- HTPASSWD_USER=666
- HTPASSWD_PW=666
healthcheck:
test: ["CMD","nc","-zv","localhost", "80"]
interval: 30s
timeout: 10s
retries: 5
start_period: 30s
deploy:
resources:
limits:
cpus: "2"
memory: 2G
启动
docker-compose up -d