docker run -itd \
--name=natmap-manager \
--restart=always \
--net=host \
-v ./config:/config \
-v ./scripts:/scripts \
bncfbb/natmap-manager:latest
npm:
# Nginx Proxy Manager服务器 url
server: https://xxx.com
# Nginx Proxy Manager服务器 用户名
username: [email protected]
# Nginx Proxy Manager服务器 密码
password: 123456
# 当npm规则更新失败后是否重试
retry_on_fail: true
# 重试间隔(s)
retry_interval: 10
natmap:
# 配置名称, 如果有自定义脚本的话放到/scripts映射的目录下命名为 配置名称.py
- name: test
# [可选]脚本执行模式, 默认值0
# 0:当npm主机更新成功后执行自定义脚本 1:先执行自定义脚本然后再更新npm主机 2:不更新npm主机, 只执行自定义脚本
script_mode: 0
# 绑定端口
bind_port: 6666
# 协议
protocol: tcp
# [可选]指定网络接口, 如果有多条线路的话需要设置
interface: eth0
# [可选]自定义stun服务器, 默认值stunserver2024.stunprotocol.org
stun_server: stunserver2024.stunprotocol.org
# [可选]自定义keepalive服务器,默认值www.qq.com
keepalive_host: www.qq.com
# [可选]NPM自定义404主机域名
domain: xxx.com
# [可选]NPM自定义404主机域名路径, 默认值/
path: /
# [可选]NPM自定义404主机状态码, 302为重定向, 200为文本
status_code: 302
# [可选]NPM自定义404主机的value, 可用变量{public_ip}和{public_port}
content: http://{public_ip}:{public_port}$request_uri
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
import logging
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
)
def hook_func(public_ip, public_port, ip4p, local_port, protocol, local_ip):
logging.info(f'测试自定义脚本 {public_ip} {public_port} {ip4p} {local_port} {protocol} {local_ip}')
# 自定义脚本发生异常后会按照配置文件中的retry_on_fail和retry_interval来执行重试策略
#raise Exception('haha')
Content type
Image
Digest
sha256:15cc2f5a2…
Size
49.2 MB
Last updated
5 months ago
docker pull bncfbb/natmap-manager