1. 生成配置文件
bash
docker run -v ./volumes:/etc/openvpn --rm kylemanna/openvpn ovpn_genconfig -u udp://xx.xx.xx.xx
将 xx.xx.xx.xx 替换为你的服务器的公共 IP 地址或域名。
2. 初始化密钥文件
bash
docker run -v ./volumes:/etc/openvpn --rm -it kylemanna/openvpn ovpn_initpki
3. 生成客户端证书
bash
docker run -v ./volumes:/etc/openvpn --rm -it kylemanna/openvpn easyrsa build-client-full {客户端名称} nopass
4. 导出客户端证书
bash
docker run -v ./volumes:/etc/openvpn --rm kylemanna/openvpn ovpn_getclient {客户端名称} > ./volumes/{客户端名称}.ovpn
导出的 {客户端名称} 需要与生成证书的 {客户端名称} 一致。
5. 创建 docker-compose 启动配置
yml
services:
openvpn:
container_name: openvpn
image: kylemanna/openvpn
ports:
- 1194:1194/udp
volumes:
- ./volumes:/etc/openvpn
cap_add:
- NET_ADMIN
- NET_RAW
restart: unless-stopped
6. 启动 OpenVPN 服务
bash
docker compose up -d