Files
dockerfile_dp/tailscale/docker-compose_inside_network.yml
Your Name f1e0d142f1 update
2024-10-29 16:34:36 +08:00

54 lines
2.1 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
version: '3.5'
services:
tailscaled:
container_name: tailscaled
image: tailscale/tailscale:unstable-v1.77.41
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 登录服务器
- TS_HOSTNAME=pysi # 指定主机名
- TS_ACCEPT_DNS=false # 默认不接受来自管理员控制台的 DNS 配置
- TS_AUTH_ONCE=false # 默认每次启动强制重新登录
- TS_DEST_IP= # 未指定目标 IP保持默认
- TS_KUBE_SECRET=tailscale # Kubernetes 中状态存储的密钥名称,默认值
- TS_OUTBOUND_HTTP_PROXY_LISTEN= # 未设置 HTTP 代理监听地址,保持默认
- TS_ROUTES= # 未声明子网路由,保持默认
- TS_SOCKET=/var/run/tailscale/tailscaled.sock # Unix 套接字路径,默认值
- TS_SOCKS5_SERVER= # 未设置 SOCKS5 代理地址,保持默认
command: /bin/sh -c "/usr/local/bin/containerboot && tailscaled && tailscale up --authkey=${TS_AUTHKEY} && tailscale funnel 8980"
networks:
- tailscale-net
webapp:
container_name: webapp
image: python:3.9-slim # 使用 Python 镜像
ports:
- "8980:8980" # 本地端口 8980 映射到容器内的 8980 端口
restart: always
command: python -m http.server 8980 # 启动 Python HTTP 服务器
networks:
- tailscale-net
networks:
tailscale-net:
driver: bridge # 自定义桥接网络
volumes:
shared-tailscale:
driver: local