2024/8/22测试qnap nas docker支持内网ipv4访问,不支持外网ipv6访问,现寻求解决办法
安装包管理器
下载链接github
将下载好的安装包通过nas web管理器安装
安装端口转发工具
以socat为例
#更新包
opkg update
#安装socat
opkg install socat
#启动socat 示例中设置ipv6的8097端口转发到ipv4的8096端口 根据需要自行修改
socat TCP6-LISTEN:8097,reuseaddr,fork TCP4:127.0.0.1:8096 &
NAS终端关闭后进程消失?
安装screen
opkg install screen
进入screen
screen
后台运行socat
socat TCP6-LISTEN:8097,reuseaddr,fork TCP4:127.0.0.1:8096 &
分离screen
按 ctrl+A 然后按 D
测试
finalshell断开连接后重连
ps aux | grep socat
检查进程运行情况
————————————————————————————————————————————
另起炉灶
docker network inspect bridge 查看docker桥接网络情况
ps aux |grep dockerd 查看docker进程和启动命令
系统级docker
6968 admin 51396 S container-station/dockerd -H unix:///var/run/system-docker.sock –bridge=docker0 –storage-driver=overlay2 –dns 10.0.5.1 –data-root=/var/lib/system-docker –exec-root=/var/run/system-docker –pidfile=/var/run/system-docker.pid -D –userland-proxy=false –config-file /share/CACHEDEV1_DATA/.qpkg/container-station/etc/system-docker.json用户级docker
7476 admin 61168 S container-station/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock –bridge=lxcbr0 –tlsverify –tlscacert=/etc/docker/tls/ca.pem –tlscert=/etc/docker/tls/server.pem –tlskey=/etc/docker/tls/server-key.pem –storage-driver=overlay2 –dns 10.0.3.1 –data-root=/var/lib/docker –exec-root=/var/run/docker –pidfile=/var/run/docker.pid -D –userland-proxy=false –config-file /share/CACHEDEV1_DATA/.qpkg/container-station/etc/docker.json
启动命令分析
- 可执行文件:
container-station/dockerd
- 主机套接字:
-H tcp://0.0.0.0:2376
-H unix:///var/run/docker.sock
- 网络桥接:
--bridge=lxcbr0
- TLS 验证:
--tlsverify
- TLS CA 证书:
--tlscacert=/etc/docker/tls/ca.pem
- TLS 服务器证书:
--tlscert=/etc/docker/tls/server.pem
- TLS 服务器密钥:
--tlskey=/etc/docker/tls/server-key.pem
- 存储驱动:
--storage-driver=overlay2
- DNS:
--dns 10.0.3.1
- 数据根目录:
--data-root=/var/lib/docker
- 执行根目录:
--exec-root=/var/run/docker
- PID 文件:
--pidfile=/var/run/docker.pid
- 调试模式:
-D
- 用户代理:
--userland-proxy=false
- 配置文件:
--config-file /share/CACHEDEV1_DATA/.qpkg/container-station/etc/docker.json
总结
- 进程 1:这是一个
system-docker
实例,使用的是docker0
网络桥接,配置文件位于/share/CACHEDEV1_DATA/.qpkg/container-station/etc/system-docker.json
。- 进程 2:这是一个标准的 Docker 实例,使用的是
lxcbr0
网络桥接,启用了 TLS 验证,配置文件位于/share/CACHEDEV1_DATA/.qpkg/container-station/etc/docker.json
。
tail -n 30 /share/CACHEDEV1_DATA/.qpkg/container-station/var/log/container-station/docker.log
vi /share/CACHEDEV1_DATA/.qpkg/container-station/etc/docker.json 这个文件加了ipv6
/etc/init.d/container-station.sh start
————————————————————————————————————————————
确实不行
直接搞反代吧
域名+端口反代localhost+端口 无语