docker 图片中的 openVPN
openVPN inside docker image
我正在尝试创建一个 docker 图像,其中有一个 python 脚本,该脚本使用 openVPN 通过 VPN 连接到 API,但是,我似乎无法使用 openVPN正在工作。
我有我的 docker 文件
# Install openVPN and get confi files
RUN mkdir /config
ADD ./config/. /config
RUN apt-get install -y openvpn
# Run openvpn and script
CMD openvpn --config config/fremsyn.ovpn --auth-user-pass config/login.txt --askpass config/password.conf && python3 src/cli/getStatus.py
但我一直收到错误消息:
ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)
这个问题有解决办法吗?
附带说明一下,我需要 运行 将容器作为 Azure 中的容器实例。
尝试 运行 您的容器具有名为 NET_ADMIN
的额外功能。同时安装 /dev/net/tun
设备。
docker run --cap-add NET_ADMIN -v /dev/net/tun:/dev/net/tun …
- 运行 ovpn 与 Dockerfile 中的守护进程
CMD openvpn --daemon --config config/fremsyn.ovpn --auth-user-pass config/login.txt --askpass config/password.conf && python3 src/cli/getStatus.py
- 对于 运行 服务使用 docker-compose.yml 像这样:
docker-compose.yml
version: "3.3"
services:
name_of_your_service:
image: your_image_from_Dockerfile_build
restart: always
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun
volumes:
- /etc/timezone:/etc/timezone:ro
运行 命令
$ docker-compose up -d
我正在尝试创建一个 docker 图像,其中有一个 python 脚本,该脚本使用 openVPN 通过 VPN 连接到 API,但是,我似乎无法使用 openVPN正在工作。
我有我的 docker 文件
# Install openVPN and get confi files
RUN mkdir /config
ADD ./config/. /config
RUN apt-get install -y openvpn
# Run openvpn and script
CMD openvpn --config config/fremsyn.ovpn --auth-user-pass config/login.txt --askpass config/password.conf && python3 src/cli/getStatus.py
但我一直收到错误消息:
ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)
这个问题有解决办法吗?
附带说明一下,我需要 运行 将容器作为 Azure 中的容器实例。
尝试 运行 您的容器具有名为 NET_ADMIN
的额外功能。同时安装 /dev/net/tun
设备。
docker run --cap-add NET_ADMIN -v /dev/net/tun:/dev/net/tun …
- 运行 ovpn 与 Dockerfile 中的守护进程
CMD openvpn --daemon --config config/fremsyn.ovpn --auth-user-pass config/login.txt --askpass config/password.conf && python3 src/cli/getStatus.py
- 对于 运行 服务使用 docker-compose.yml 像这样:
docker-compose.yml
version: "3.3"
services:
name_of_your_service:
image: your_image_from_Dockerfile_build
restart: always
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun
volumes:
- /etc/timezone:/etc/timezone:ro
运行 命令
$ docker-compose up -d