Initial commit: Tailscale Docker deployment with Headscale
Docker Compose 部署 Tailscale 連線至自架 Headscale 控制伺服器, 包含子網路由、出口節點、iptables NAT 設定及完整中文文件。 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
67
README.md
Normal file
67
README.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# Tailscale Docker 部署(Headscale)
|
||||
|
||||
使用 Docker Compose 部署 Tailscale,連線至自架的 Headscale 控制伺服器。
|
||||
|
||||
## 功能
|
||||
|
||||
- 透過 Docker 容器執行 Tailscale,使用 host 網路模式
|
||||
- 連線至 `https://headscale.lotimmy.com`
|
||||
- 子網路由廣播(192.168.88.0/24)
|
||||
- 出口節點(Exit Node)支援
|
||||
- iptables NAT/轉送自動設定
|
||||
- 透過 Watchtower 自動更新容器映像
|
||||
|
||||
## 檔案結構
|
||||
|
||||
| 檔案 | 說明 |
|
||||
|------|------|
|
||||
| `docker-compose.yml` | Docker 服務定義 |
|
||||
| `.env` | 環境變數(TS_AUTHKEY) |
|
||||
| `run.sh` | 啟動容器 |
|
||||
| `stop.sh` | 停止容器 |
|
||||
| `docker_exec_tailscale_up.sh` | 連線至 Headscale(含路由與出口節點設定) |
|
||||
| `docker_exec_tailscale_status.sh` | 查看連線狀態 |
|
||||
| `docker_exec_tailscale_ip.sh` | 查詢 Tailscale IP |
|
||||
| `tailscale` | Tailscale CLI 包裝腳本 |
|
||||
| `iptables_reset_and_configure.sh` | 防火牆與 NAT 設定 |
|
||||
|
||||
## 快速開始
|
||||
|
||||
```bash
|
||||
# 1. 設定 .env 中的 TS_AUTHKEY
|
||||
# 2. 啟動
|
||||
./run.sh
|
||||
|
||||
# 3. 連線至 Headscale
|
||||
./docker_exec_tailscale_up.sh
|
||||
|
||||
# 4. 設定防火牆(如需路由功能)
|
||||
sudo ./iptables_reset_and_configure.sh
|
||||
|
||||
# 5. 驗證
|
||||
./docker_exec_tailscale_status.sh
|
||||
```
|
||||
|
||||
## 網路架構
|
||||
|
||||
```
|
||||
Tailscale 節點 ──► Headscale (headscale.lotimmy.com)
|
||||
│
|
||||
▼
|
||||
tailscale0 介面 (100.64.0.0/10)
|
||||
│
|
||||
NAT MASQUERADE
|
||||
│
|
||||
▼
|
||||
eth0 ──► LAN (192.168.88.0/24)
|
||||
```
|
||||
|
||||
## 主機名稱慣例
|
||||
|
||||
使用 `ip-192-168-88-XX` 格式,對應主機的區域網路 IP。
|
||||
|
||||
## 相關文件
|
||||
|
||||
- [QUICKSTART.md](QUICKSTART.md) — 快速開始指南
|
||||
- [OPERATIONS.md](OPERATIONS.md) — 維運操作手冊
|
||||
- [SUMMARY.md](SUMMARY.md) — 專案摘要
|
||||
Reference in New Issue
Block a user