# πŸš€ Headscale + Headplane Docker Setup Tailscale을 μ™„μ „νžˆ λŒ€μ²΄ν•˜λŠ” 자체 ν˜ΈμŠ€νŒ… μ†”λ£¨μ…˜ ## πŸ“ 파일 ꡬ쑰 ``` headscale-setup/ β”œβ”€β”€ docker-compose.yml # Docker Compose μ„€μ • β”œβ”€β”€ .env # ν™˜κ²½λ³€μˆ˜ (볡사 ν•„μš”) β”œβ”€β”€ .env.example # ν™˜κ²½λ³€μˆ˜ ν…œν”Œλ¦Ώ β”œβ”€β”€ start.sh # μžλ™ μ„€μΉ˜ 슀크립트 β”œβ”€β”€ README.md # 이 λ¬Έμ„œ β”œβ”€β”€ .gitignore # Git μ œμ™Έ 파일 β”œβ”€β”€ config/ β”‚ └── config.yaml # Headscale μ„€μ • β”œβ”€β”€ data/ # λ°μ΄ν„°λ² μ΄μŠ€ 및 ν‚€ 파일 (μžλ™ 생성) └── run/ # λŸ°νƒ€μž„ 파일 (μžλ™ 생성) ``` ## πŸš€ Git Repository - **μ €μž₯μ†Œ**: https://git.0bin.in/thug0bin/headscale-tailscale-replacement - **κ΄€λ¦¬μž**: μ‹œκ³¨μ•½μ‚¬ (thug0bin@gmail.com) ## πŸš€ λΉ λ₯Έ μ‹œμž‘ ### 1. ν™˜κ²½λ³€μˆ˜ μ„€μ • ```bash # .env.example을 .env둜 볡사 cp .env.example .env ``` ### 2. μžλ™ μ„€μΉ˜ (ꢌμž₯) ```bash # μ‹€ν–‰ κΆŒν•œ λΆ€μ—¬ 및 μ‹€ν–‰ chmod +x ./start.sh ./start.sh ``` ### 3. μˆ˜λ™ μ„€μΉ˜ ```bash # 1. Headscale μ‹œμž‘ docker-compose up -d headscale # 2. API ν‚€ 생성 docker-compose exec headscale headscale apikeys create # 3. .env νŒŒμΌμ— API ν‚€ μž…λ ₯ (HEADSCALE_API_KEY κ°’ μˆ˜μ •) vi .env # 4. Headplane μ‹œμž‘ docker-compose up -d headplane ``` ## πŸ“‹ 접속 정보 - **Headscale API**: http://localhost:8070 - **Headplane UI**: http://localhost:3000 ## πŸ‘€ μ‚¬μš©μž 관리 ### μ‚¬μš©μž 생성 ```bash docker-compose exec headscale headscale users create myuser ``` ### Pre-auth ν‚€ 생성 ```bash docker-compose exec headscale headscale preauthkeys create --user myuser --reusable --expiration 24h ``` ## πŸ“± ν΄λΌμ΄μ–ΈνŠΈ μ—°κ²° ### Linux/macOS ```bash # Tailscale ν΄λΌμ΄μ–ΈνŠΈ μ„€μΉ˜ ν›„ tailscale up --login-server=http://localhost:8080 ``` ### Windows ```cmd tailscale up --login-server=http://localhost:8080 ``` ## πŸ”§ μœ μš©ν•œ λͺ…λ Ήμ–΄ ### μƒνƒœ 확인 ```bash docker-compose ps docker-compose logs -f ``` ### λ…Έλ“œ λͺ©λ‘ 확인 ```bash docker-compose exec headscale headscale nodes list ``` ### μ‚¬μš©μž λͺ©λ‘ 확인 ```bash docker-compose exec headscale headscale users list ``` ## πŸ› οΈ νŠΈλŸ¬λΈ”μŠˆνŒ… ### μ»¨ν…Œμ΄λ„ˆ μž¬μ‹œμž‘ ```bash docker-compose restart ``` ### 둜그 확인 ```bash docker-compose logs headscale docker-compose logs headplane ``` ### μ™„μ „ μ΄ˆκΈ°ν™” ```bash docker-compose down sudo rm -rf data/* docker-compose up -d ``` ## πŸ”„ Git 관리 ν•„μš”μ‹œ μˆ˜λ™μœΌλ‘œ Git 컀밋을 μ§„ν–‰ν•˜μ„Έμš”: ```bash # ν˜„μž¬ μƒνƒœ 확인 git status # 변경사항 컀밋 git add . git commit -m "Update: μ„€λͺ…" git push origin main ``` ## ⚑ μƒˆ μ„œλ²„ 원클릭 등둝 μƒˆλ‘œμš΄ λ¦¬λˆ…μŠ€ μ„œλ²„λ₯Ό 팜큐 λ„€νŠΈμ›Œν¬μ— **ν•œ 번의 λͺ…λ Ή**으둜 등둝: ### λΉ λ₯Έ μ„€μΉ˜ (ꢌμž₯) ```bash curl -fsSL https://git.0bin.in/thug0bin/headscale-tailscale-replacement/raw/branch/feature/working-headscale-setup/quick-install.sh | sudo bash ``` ### λ˜λŠ” wget μ‚¬μš© ```bash wget -qO- https://git.0bin.in/thug0bin/headscale-tailscale-replacement/raw/branch/feature/working-headscale-setup/quick-install.sh | sudo bash ``` ### κΈ°μ‘΄ Tailscale 연결이 μžˆλŠ” 경우 (κ°•μ œ μž¬λ“±λ‘) ```bash curl -fsSL https://git.0bin.in/thug0bin/headscale-tailscale-replacement/raw/branch/feature/working-headscale-setup/quick-install.sh | sudo bash -s -- --force ``` ### 지원 OS - Ubuntu, Debian, CentOS, RHEL, Rocky Linux, Fedora, Arch Linux - μžλ™ Tailscale μ„€μΉ˜ + Headscale 등둝 - λ°©ν™”λ²½ μžλ™ μ„€μ • + μ—°κ²° 검증 **30초 λ§Œμ— 팜큐 λ„€νŠΈμ›Œν¬ μ—°κ²° μ™„λ£Œ!** πŸŽ‰