快速导航:
搭建独立面板
环境变量
文件服务器
搭建Moon/Planet服务器
docker run -d -p 9993:9993/udp -p 3443:3443 -p 3180:3180 \
-v zerotier-one:/var/lib/zerotier-one \
-v zerotier-webui:/www/zerotier-webui/etc \
-v zerotier-logs:/logs \
--env-file ./denv \
--name zerotier-aio \
imashen/zerotier-aio
除此之外,您可以将数据卷改为本地目录挂载,引入环境变量的方式也可以改为-e引入 --env-file环境变量文件内容详见仓库中的denv
docker run -d -p 9993:9993/udp -p 3443:3443 -p 3180:3180 \
-v /opt/zerotier/zerotier-one:/var/lib/zerotier-one \
-v /opt/zerotier/zerotier-webui:/www/zerotier-webui/etc \
-v /opt/zerotier/zerotier-logs:/logs \
-e NODE_ENV=production \
-e ZEROTIER-WEBUI_PASSWD=password123 \
-e MYDOMAIN=site.test \
--name zerotier-aio \
imashen/zerotier-aio
/var/lib/zerotier-one
用于存放zerotier默认的运行时和配置文件
/www/zerotier-webui/etc
是文件服务器并存放有Web面板的证书
/logs
存放日志文件
Name | 解释 | 默认值 |
---|---|---|
NODE_ENV | 参考 https://pugjs.org/api/express.html | production |
MYADDR | 您的IP地址,建议使用公网IP | 无默认值 |
Name | 解释 | 默认值 |
---|---|---|
HTTPS_HOST | 仅监听在 HTTPS_HOST:HTTPS_PORT | 无默认值 |
HTTPS_PORT | HTTPS端口 | 3443 |
HTTP_PORT | HTTP端口 | 3000 |
HTTP_ALL_INTERFACES | 监听所有接口,仅适用于HTTP,适用于反向代理 | 无默认值 |
MYDOMAIN | 动态生成TLS证书的域名 | site.test(亦可是本机IP) |
ZEROTIER-WEBUI_PASSWD | 动态生成的管理员密码 | password123(设定为弱密码则会重新动态生成,详见日志) |
请注意,为数据传输的安全起见
HTTPS_PORT
默认在全网口监听,HTTP_PORT
仅本地localhost/127.0.0.1
监听。
此镜像在端口 3180
上开放了一个HTTP服务器,因此您可以在 /myfs/
中保存文件以进行服务。例如,您可以使用此功能构建自己的根服务器并分发行星文件。
您可以使用 docker exec -it zerotier-aio /bin/bash
进入容器
输入指令mkmoon
获取帮助信息
Usage: mkmoon [options]
Options:
-h, --help Display this help message
-4 <IPv4> Set the IPv4 address for the moon
-6 <IPv6> Set the IPv6 address for the moon
-p <port> Set the port for the moon (default is 9993)
其中v4/v6地址必须填入一个 每个参数都可以缺省 Port默认为9993
成功运行会得到下述效果:
输入指令mkplanet
获取帮助信息
Usage: mkplanet [options]
Options:
-h, --help Display this help message
-j2b, --json2bin Convert from JSON file to planet
-b2j, --bin2json Convert from planet to JSON format
-r, --reset Reset planet from origin-planet.json
首先运行 mkplanet -b2j
或 mkplanet --bin2json
将官方自带的planet转义为json文件,方便修改
在planet.json
中按照固定结构填入你自己的Planet服务器信息,最多填入四个!!!
配置完成后再次运行 mkplanet -j2b
或 mkplanet --json2bin
重新将json文件打包为planet
此时的planet文件分发到各个设备中,即可实现自建Moon
为方便分发,详见文件服务器
此外mkplanet工具自带了一键恢复planet功能,如果你的配置文件不幸损坏或者丢失官方文件,可通过 mkplanet -r
或 mkplanet --reset
重新生成官方planet文件