项目链接:https://github.com/palark/ovpn-admin 做了些小调整,增加了自由选择协议
services:
ovpn: # OpenVPN 服务器(OpenVPN)
# build: # 使用 docker-compose up -d --build 可以强行构建(即便可以下载)
# context: . # 构建镜像,指向当前目录
# dockerfile: Dockerfile.openvpn # 指定使用的 Dockerfile 文件
# image: flant/ovpn-admin:openvpn-latest # 使用官方构建好的镜像(固定tcp协议)
image: 918178/ovpn-admin # 使用我编译好的镜像(DockerHub)
# image: ghcr.io/ai773203918/ovpn-admin # 使用我编译好的镜像(Ghcr.io)
container_name: ovpn # 自定义容器名称
restart: unless-stopped # 非停止总是自启
# command: bash /etc/openvpn/setup/configure.sh # 容器启动时执行的命令(修复未指定 bash 运行)
command: bash /etc/openvpn/setup/configure_zwzw.sh # 容器启动时执行的命令(使用我修改的启动脚本)
cap_add:
- NET_ADMIN # 添加 NET_ADMIN 权限
environment:
OVPN_SERVER_NET: "10.10.0.0" # ⭐VPN网段
OVPN_SERVER_MASK: "255.255.255.0" # ⭐VPN网段子网掩码
OVPN_PASSWD_AUTH: "true" # ⭐OpenVPN密码验证(VPN连接时需要输入密码)
# OVPN_SRV_PROTOCOL: "udp" # ⭐VPN协议(默认udp,我的镜像额外添加的功能,官方镜像无效)
# OVPN_LOCAL_NET: "192.168.1.0" # 允许访问的内部网段(仅可添加一个,多个需要修改启动脚本或配置文件)
# OVPN_LOCAL_MASK: "255.255.255.0" # 允许访问的内部网段
ports:
# - 1194:1194 # OpenVPN工作端口(官方镜像固定tcp)
- 1194:1194/udp # OpenVPN工作端口(udp需要指定协议,我的镜像可以切换协议)
# - 8080:8080 # ovpn-admin(直接开放不安全)(若是ovpn-admin接入该容器网络,则由该容器管理)
volumes:
- ./easyrsa:/etc/openvpn/easyrsa # 挂载 easyrsa 到容器的 /etc/openvpn/easyrsa 目录
- ./ccd:/etc/openvpn/ccd # 挂载 ccd 到容器的 /etc/openvpn/ccd 目录
# - ./openvpn.conf:/etc/openvpn/setup/openvpn.conf # OpenVPN 服务器-配置文件
# - ./configure.sh:/etc/openvpn/setup/configure.sh # 启动脚本(非特殊需求不用挂载)
ovpn-admin: # OpenVPN Web管理(OpenVPN-Admin)
# build: # 使用 docker-compose up -d --build 可以强行构建(即便可以下载)
# context: . # 构建镜像,指向当前目录
# dockerfile: Dockerfile.ovpn-admin # 指定使用的 Dockerfile 文件
# image: flant/ovpn-admin:latest # 使用官方构建好的镜像
image: docker.blynk.space/918178/ovpn-admin:admin # 使用我编译好的镜像(DockerHub)
# image: ghcr.io/ai773203918/ovpn-admin:admin # 使用我编译好的镜像(Ghcr.io)
restart: unless-stopped # 非停止总是自启
container_name: ovpn-admin # 自定义容器名称
command: /app/ovpn-admin # 容器启动时执行的命令
environment:
OVPN_MGMT: "openvpn:8989" # OpenVPN 管理地址(默认8989端口)
OVPN_NETWORK: "10.10.0.0/24" # ⭐VPN网段/掩码位数(同 OVPN_SERVER_NET/OVPN_SERVER_MASK)
OVPN_SERVER: "nas.918178.xyz:1194:udp" # ⭐外部连接 OpenVPN服务器的域名|IP,端口和协议要同openvpn配置一致
OVPN_AUTH: "true" # ⭐OpenVPN密码认证(同 OVPN_PASSWD_AUTH)
OVPN_INDEX_PATH: "/mnt/easyrsa/pki/index.txt" # OpenVPN 索引文件路径
OVPN_AUTH_DB_PATH: "/mnt/easyrsa/pki/users.db" # OpenVPN 用户认证数据库路径
EASYRSA_PATH: "/mnt/easyrsa" # Easy-RSA 路径
EASYRSA_CERT_EXPIRE: "3650" # 证书到期时间
OVPN_CCD: "true" # 启用 OpenVPN CDD(Client Config Dir)功能
OVPN_CCD_PATH: "/mnt/ccd" # CDD 配置路径
# OVPN_TEMPLATES_CC_PATH: "/app/client.conf.tpl" # OpenVPN 客户端配置文件生成模版
# OVPN_DEBUG: "true" # 启用 OpenVPN 调试模式
# OVPN_VERBOSE: "true" # 启用 OpenVPN 详细日志
# LOG_LEVEL: "debug" # 日志级别设为调试模式
# network_mode: service:openvpn # 网络模式设置为接入openvpn容器的网络(由接入容器管理)
ports:
- 8080:8080 # ovpn-admin(直接开放不安全,仅用于测试使用)
volumes:
- ./easyrsa:/mnt/easyrsa # 挂载 easyrsa 到容器的 /mnt/easyrsa 目录
- ./ccd:/mnt/ccd # 挂载 ccd 到容器的 /mnt/ccd 目录
# - ./client.conf.tpl:/app/client.conf.tpl # OpenVPN 服务器-配置文件
depends_on:
- ovpn # 等待 OpenVPN 启动后再启动
# nginx: # 使用 nginx 反向代理来增加 web认证(若不使用则要开放ovpn-admin端口)
# image: nginx
# restart: always # 自启
# ports:
# - '8080:8080' # 加密 ovpn-admin
# volumes:
# - ./nginx:/etc/nginx # 挂载本地文件(含有Nginx配置文件,SSL,密码文件)
# depends_on:
# - ovpn-admin # 等待 ovpn-admin 启动后再启动
Content type
Image
Digest
sha256:82428fd7f…
Size
11.3 MB
Last updated
10 months ago
docker pull 918178/ovpn-admin