一、配置docker-compose.yml文件,内容如下:
version: '3'
services:
openvpn:
image: kylemanna/openvpn
container_name: openvpn
volumes:
- ./volume/openvpn-data/conf:/etc/openvpn
ports:
- "1194:1194/udp"
cap_add:
- NET_ADMIN
restart: always
其中volumes指明容器内指向外部的路径,能够持久化容器数据
二、初始化OPENVPN配置
首次启动openvpn前,需要初始化其相关配置
docker-compose run --rm openvpn ovpn_genconfig -u udp://<your-server-domain-or-ip>
docker-compose run --rm openvpn ovpn_initpki
这里的 <your-server-domain-or-ip>
应该替换为你服务器的域名或 IP 地址。
你会被要求设置一个 CA 密码,密码需要满足复杂性等要求,否则生成失败。
三、启动容器
docker-compose up -d
这将以守护进程模式启动容器,你可以通过 docker-compose logs -f
查看运行日志,确保 OpenVPN 正常启动。
四、生成客户端配置文件
生成客户端配置文件(.ovpn 文件),供客户端使用:
docker-compose run --rm openvpn easyrsa build-client-full <client-name> nopass
docker-compose run --rm openvpn ovpn_getclient <client-name> > <client-name>.ovpn
这里的 <client-name>
可以是你选择的任意名称,比如 client1
。生成的 .ovpn
文件将保存在你运行命令的目录下。
五、下载和使用客户端配置文件
将生成的 .ovpn
文件下载到你的 VPN 客户端设备上,并导入到 OpenVPN 客户端中即可使用。