add docker in tailscale in wsl2

This commit is contained in:
Your Name
2024-10-29 15:15:24 +08:00
parent 7e3cb6cc21
commit 7fc64628f8

View File

@@ -0,0 +1,35 @@
services:
tailscaled:
container_name: tailscaled
image: tailscale/tailscale:unstable-v1.77.41
network_mode: host # 直接使用主机网络
privileged: true # 需要权限访问 TUN 设备
restart: always
cap_add:
- net_admin
- sys_module
devices:
- /dev/net/tun:/dev/net/tun
volumes:
- ./lib/:/var/lib/tailscale # 使状态路径挂载为 tailscaled 使用的状态目录
- /dev/net/tun:/dev/net/tun # 访问 TUN 设备
- shared-tailscale:/var/run/tailscale # 共享 Tailscale 运行时目录
- /var/run/dbus:/var/run/dbus
environment:
- TS_AUTHKEY=21c768657ba8aa6c0436eba69d28fa8d626da767a44f055d # 使用认证密钥
- TS_STATE_DIR=/var/lib/tailscale # 状态保存路径
- TS_USERSPACE=false # 使用内核的 TUN 设备
- TS_EXTRA_ARGS=--login-server=https://headscale.jmsu.top # 指定 Headscale 登录服务器
command: /bin/sh -c "/usr/local/bin/containerboot && tailscaled && tailscale up --authkey=${TS_AUTHKEY} && tailscale funnel 48080"
webapp:
container_name: webapp
image: python:3.9-slim # 使用 Python 镜像
ports:
- "48080:48080" # 本地端口 48080 映射到容器内的 48080 端口
restart: always
command: python -m http.server 48080 # 启动 Python HTTP 服务器
volumes:
shared-tailscale:
driver: local