Skip to content

Commit

Permalink
新增环境变量配置 alist_host,方便首次部署
Browse files Browse the repository at this point in the history
  • Loading branch information
traceless committed Dec 21, 2023
1 parent f3f7bc6 commit dfba560
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 8 deletions.
22 changes: 21 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,30 @@ Alist-encrypt 就是为了解决这个问题,它可以在网页中上传文件

> docker run -d -p 5344:5344 -v /etc/conf:/node-proxy/conf --name=alist-encrypt prophet310/alist-encrypt:beta
可以添加环境变量 -e ALIST_HOST=192.168.9.100:5244 这样首次启动就会默认设置 alist ip 地址

arm 版本目前单独打包 beta-arm,后续再放一起

> docker run -d -p 5344:5344 -v /etc/conf:/node-proxy/conf --name=alist-encrypt prophet310/alist-encrypt:beta-arm
docker-compose.yml

version: '3'
services:
alist-encrypt:
image: prophet310/alist-encrypt:beta
restart: unless-stopped
hostname: alist-encrypt
container_name: alist-encrypt
volumes:
- ./alist-encrypt:/node-proxy/conf
environment:
TZ: Asia/Shanghai
ALIST_HOST: 192.168.31.254:5254 # 建议加个设置项,类似这样
ports:
- 5344:5344
network_mode: bridge

启动后就打开代理服务器地址 http://127.0.0.1:5344/public/index.html 即可进入配置页面,账号 admin,密码默认 123456。配置后之后,打开http://127.0.0.1:5344 即可访问到 alist 的服务了。

对于路径的设置,目前是支持正则表达式的,推荐表达式例如: movie_encrypt/\* ,这样的话所有的 movie_encrypt 目录的文件都会被加密传输。
Expand Down Expand Up @@ -96,7 +116,7 @@ arm 版本目前单独打包 beta-arm,后续再放一起
### 已知问题

- ~~加密文本还不能在线看,当前建议直接下载看~~ 已经支持。
- 阿里云盘无法使用 Aliyun Video Previewer 进行播放,使用 Video 方式播放
- ~~阿里云盘无法使用 Aliyun Video Previewer 进行播放~~ 现在默认使用 Video 方式播放

### 局限性

Expand Down
22 changes: 15 additions & 7 deletions node-proxy/src/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,22 @@ if (!fs.existsSync(getConfPath())) {
// fs.mkdirSync(path.resolve('conf'))
fs.mkdirSync(process.cwd() + '/conf')
}

// 从环境变量上读取配置信息,docker首次启动时候可以直接进行配置
const serverAddr = process.env.ALIST_HOST
const serverHost = '192.168.1.100'
const serverPort = 5244
if (serverAddr && serverAddr.indexOf(':') > 6) {
serverHost = serverAddr.split(':')[0]
serverPort = serverAddr.split(':')[1]
}
console.log('@@serverAddr:', serverAddr)
/** 全局代理alist,包括它的webdav和http服务,要配置上 */
const alistServerTemp = {
name: 'alist',
path: '/*', // 默认就是代理全部,保留字段
describe: 'alist 配置',
serverHost: '192.168.1.100',
serverPort: 5244,
serverHost,
serverPort,
https: false,
passwdList: [
{
Expand All @@ -29,7 +37,7 @@ const alistServerTemp = {
enable: true, // enable encrypt
encName: false, // encrypt file name
encSuffix: '', //
encPath: ['encrypt_folder/*', '/189cloud/atest/*'], // 路径支持正则表达式,常用的就是 尾巴带*,此目录的所文件都加密
encPath: ['encrypt_folder/*', 'movie_encrypt/*'], // 路径支持正则表达式,常用的就是 尾巴带*,此目录的所文件都加密
},
],
}
Expand All @@ -42,8 +50,8 @@ const webdavServerTemp = [
describe: 'webdav 电影',
path: '^/test_dav_dir/*', // 代理全部路径,需要重启后生效。不能是"/enc-api/*" ,系统已占用。如果设置 "/*",那么上面的alist的配置就不会生效哦
enable: false, // 是否启动代理,需要重启后生效
serverHost: '192.168.1.100',
serverPort: 5244,
serverHost,
serverPort,
https: false,
passwdList: [
{
Expand Down Expand Up @@ -128,7 +136,7 @@ initAlistConfig(configData.alistServer)
/** 代理服务的端口 */
export const port = configData.port || 5344

export const version = '0.2.9'
export const version = '0.3.0'

export const alistServer = configData.alistServer || alistServerTemp

Expand Down

0 comments on commit dfba560

Please sign in to comment.