启动器的参数和web应用自己的参数是两层,容易混。启动器管「启动哪个profile」,应用管「怎么服务」。
启动器(dsh 本身)
| 参数 | 作用 |
|---|---|
| --profile <name> | 启动 $DSH_HOME/profiles下的某个profile |
| --patch <path> | 在profile之上再加一层补丁,可重复 |
| --dump-config | 打印合成后的配置树然后退出 |
| --dump-default-config | 打印不带用户层的配置树然后退出 |
| -V, --version | 打印版本号 |
web 应用自己的参数
Usage: dsh --profile web [options] --host <host> bind host --no-open do not open the Web UI in the default browser --port <port> listen port; pass 0 to let the OS pick a free one --trusted-host <authority...> extra authority the /api browser-trust fence accepts -h, --help show this help
几个值得记住的默认行为:
- --port 0会向操作系统要一个空闲端口,启动时会打印实际用了哪个。端口冲突又不想杀进程时,这条最省事。
- --no-open只是不弹浏览器,URL照样打印,token照样生成。自启脚本常用它。
- --trusted-host不是用来关掉鉴权的,它是给 /api的信任围栏追加白名单。想从另一台机器访问,光改host不够,还要处理这个围栏。
- --host绑到0.0.0.0意味着局域网可访问。做这件事之前先想清楚:同一网络里任何人拿到token就能用你的额度和你的文件权限。
想给局域网用,更稳的做法是保持127.0.0.1绑定,用SSH隧道或反向代理加一层自己的鉴权;直接把0.0.0.0暴露出去,等于把文件系统权限挂在一个43字符的串上。
自己看当前版本的全部参数
dsh --help dsh web --help
参数随版本变。0.2.x与0.1.x就差了几项,别拿旧文章的参数表对着新版本试。