- Dockerfile с multi-stage сборкой для linux/amd64 и linux/arm64 - Gitea Actions CI/CD для автоматической сборки и пуша в registry - docker-compose с поддержкой multi-arch образов - install.sh с автоопределением архитектуры и выбором: pull vs build - uninstall.sh обновлён для Docker-деинсталляции - README.md обновлён: multi-arch, CI/CD, Gitea registry
36 lines
1.2 KiB
YAML
36 lines
1.2 KiB
YAML
# =============================================================================
|
|
# docker-compose.client.yml — Клиент (домашний сервер / Raspberry Pi за NAT)
|
|
# Запуск: docker compose -f docker-compose.client.yml up -d
|
|
# =============================================================================
|
|
version: "3.8"
|
|
|
|
services:
|
|
wireguard-client:
|
|
image: git.softuniq.eu/opendoor/wireguard-vps-tunnel-client:latest
|
|
build:
|
|
context: ./client
|
|
platforms:
|
|
- linux/amd64
|
|
- linux/arm64
|
|
container_name: wireguard-client
|
|
restart: unless-stopped
|
|
cap_add:
|
|
- NET_ADMIN
|
|
- SYS_MODULE
|
|
network_mode: host
|
|
volumes:
|
|
- ./config:/etc/wireguard
|
|
- /lib/modules:/lib/modules:ro
|
|
environment:
|
|
- CLIENT_WG_IP=${CLIENT_WG_IP:-10.0.0.2}
|
|
- VPS_PUBLIC_IP=${VPS_PUBLIC_IP:?Укажите VPS_PUBLIC_IP в .env}
|
|
- VPS_WG_PORT=${VPS_WG_PORT:-51820}
|
|
- SERVER_PUBLIC_KEY=${SERVER_PUBLIC_KEY:?Укажите SERVER_PUBLIC_KEY в .env}
|
|
- SERVER_WG_IP=${SERVER_WG_IP:-10.0.0.1}
|
|
- PERSISTENT_KEEPALIVE=${PERSISTENT_KEEPALIVE:-21}
|
|
healthcheck:
|
|
test: ["CMD", "/healthcheck.sh"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s |