| # Используем легковесный образ Alpine Linux | |
| FROM alpine:3.19 | |
| # Устанавливаем необходимые пакеты | |
| # wireguard-go: userspace-реализация WireGuard | |
| # wireguard-tools: утилиты wg и wg-quick | |
| # bash: для нашего скрипта запуска | |
| # iptables: для NAT (правила PostUp/PostDown) | |
| # coreutils: для утилиты `tr` в скрипте | |
| RUN apk add --no-cache wireguard-go wireguard-tools bash iptables coreutils | |
| # Копируем шаблон конфигурации и скрипт запуска | |
| COPY wg0.conf.template /etc/wireguard/wg0.conf.template | |
| COPY run.sh /usr/local/bin/run.sh | |
| # Делаем скрипт исполняемым | |
| RUN chmod +x /usr/local/bin/run.sh | |
| # Команда для запуска контейнера | |
| CMD ["/usr/local/bin/run.sh"] |