使用Pritunl和Docker Compose设置OpenVPN环境。


简介

在这篇文章中,当我尝试在Docker上构建Pritunl时,似乎使用的Docker Image不支持最新版本的Pritunl,因此我再次使用Docker Compose构建了环境。

施工图

对于

网络,如上一篇文章中所述,创建一个专用容器来打开端口,并将专用容器的网络用于其他容器。
对于Mongodb,我使用官方图像,对于Pritunl,我使用fridus / pritunl,它的构建频率相对较高。

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
network:
  image: busybox
  ports:
    - "127.0.0.1:9700:443"
    - "1194:1194/udp"
    - "1194:1194/tcp"
  restart: always
  tty: true
mongo:
  image: mongo
  volumes:
    - ./mongo:/data/db
  restart: always
  net: container:network
pritunl:
  image: fridus/pritunl
  privileged: true
  environment:
    - MONGO_URI=mongodb://127.0.0.1:27017/pritunl
  restart: always
  net: container:network

如何使用

在与docker-compose.yml具有相同层次结构的mongo目录中创建
docker-compose up -d
站起来。
请注意,管理控制台仅限于从本地主机访问。

末尾

学习后,我尝试使用Pritunl设置OpenVPN,但我想知道如何在仅管理一个VPS的环境中使用它????
而且,我不知道如何从Docker内置的OpenVPN访问Docker主机本身或另一个容器,因此我还无法使用任何东西。

(如果可能的话,我想使用在另一个容器中运行的代理,但是我应该怎么办????如果我以相同的方式共享网络容器,那没关系,但是docker-compose.yml变成了blo肿。我讨厌这样做???)

请让我知道是否有人可以通过仅设置一个VPS且不一直运行其他计算机的VPN来进行设置