今天试着用docker搭了一下pptpd服务器,感觉清爽不少(当然是踩坑之后的啦),特此记录。

 

使用的镜像

mmontagna/docker-vpn-pptp

 

由于是现成的镜像,所以我们只需要对其进行配置即可。

这里,由于我使用的是pptpd服务器,所以需要编辑/etc/ppp/chap-secrets文件(如果没有,创建之)。

 

添加如下内容:

# Secrets for authentication using PAP
# client server secret acceptable local IP addresses
username * password *

PS: username 和 password依据实际情况添加,这就是你登陆vpn时的账密。

PS++:server那里也可以填写pptpd,反正保证连接时,使用pptpd服务就好。如下:

# Secrets for authentication using PAP
# client server secret acceptable local IP addresses
username pptpd password *

 

然后,运行下列代码:

docker run -ti --name my_vpn \
--net=host --privileged \
-p 1723:1723 \
-e client=用户名 \
-e server=* \
-e password=用户密码 \
-e acceptable_local_ip_addresses=* \
-v /etc/ppp/chap-secrets:/etc/ppp/chap-secrets \
mmontagna/docker-vpn-pptp

这里指定了容器需要的各个参数,可根据实际情况进行修改。

这里有两点需要注意:

  1. 我在查阅docker hub之后,发现作者并未将client和password添加进参数列表。在经过测试后,我发现如果不加client和password两项参数,vpn的连接会非常慢,乃至连不上。所以我建议在将/etc/ppp/chap-secrets文件映射进去的同时,也指定client和password参数(当然,如果多用户使用,那就没必要了)。
  2. 如果不将宿主机的/etc/ppp/chap-secrets文件映射到容器中的话,此vpn只能连内网,无法连外网。

 

后记:大晚上被蚊子吵醒的感觉真糟糕[哭哭哭],赶紧补觉,今天还要上班啊~

docker 运行pptpd服务器的更多相关文章

  1. Docker运行Nginx服务器

    一.获取Docker容器的Nginx镜像 二.创建Docker容器宿主机挂载目录 # 创建挂载目录,-v 显示创建的目录名 [root@idclooknet ~]# mkdir -vp /opt/do ...

  2. 如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目

    如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目 #1:前提准备 1.1 首先请确认你的电脑是windows10专业版或企业版,只有这 ...

  3. 在Linux(Centos7)上使用Docker运行.NetCore

    在上一篇中我们写了如何在windows中使用docker运行.netcore,既然我们了解了windows下的运行发布,我们也可以试试linux下使用docker运行.netcore项目,那么今天我们 ...

  4. docker搭建gitlab服务器(Centos7)

    系统环境:CentOS Linux release 7.6.1810 (Core) git版本:gitlab/gitlab-ce 一.安装和启动docker 见HTTPRUNNERMANAGER安装部 ...

  5. Centos7使用docker搭建gitlab服务器

    了解到docker的优点,搭建快,运行要求资源低,最重要的是实现的功能和效果都能达到预期,于是决定使用docker来搭建gitlab服务器. 效果图如下: 系统环境:CentOS Linux rele ...

  6. Docker学习笔记之搭建Docker运行环境

    0x00 概述 既然 Docker 是一款实用软件,我们就不得不先从它的安装说起,只有让 Docker 运行在我们的计算机上,才能更方便我们对 Docker 相关知识和使用方式的学习.得益于与商业性的 ...

  7. 林帆:Docker运行GUI软件的方法

    继上周的“Kubernetes v1.0特性解析”分享之后,本周我们邀请到ThoughtWorks咨询师林帆为大家带来主题为“Docker运行GUI软件的方法”的分享. 嘉宾简介:林帆,Thought ...

  8. Docker 后台进程参数-------更改Docker运行根目录的方法

    参数 介绍 --api-enable-cors=false 远程API调用. -b, --bridge="" 桥接一个系统上的网桥设备到 Docker 容器里,当使用 none 可 ...

  9. Docker运行GUI软件的方法

    转自 https://www.csdn.net/article/2015-07-30/2825340 简介: Docker通过namespace将容器与主机上的网络和运行环境进行了隔离,默认情况下,在 ...

随机推荐

  1. 配置阿里yum源

    root@docker ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/epel-7.rep ...

  2. min-width

    min-width 语法: min-width:<length> | <percentage> 默认值:0 适用于:除非置换内联元素,table-row, table-row- ...

  3. 参数类型 (@Service层) impl

    @Override public List<Map<String, Object>> selectAdvListByPosition(String adStructure, P ...

  4. Ubuntu 14.04 64bit中永久添加DNS的方法

    第一种方法修改如下文件,默认是空的sudo vim /etc/resolvconf/resolv.conf.d/base在里面加入你想添加的DNS服务器,一行一个nameserver 114.114. ...

  5. webpack - 优化阻塞渲染的css

    随着浏览器的日新月异,网页的性能和速度越来越好,并且对于用户体验来说也越来越重要. 现在有很多优化页面的办法,比如:静态资源的合并和压缩,code splitting,DNS预读取等等. 本文介绍的是 ...

  6. Python学习日记(十)—— 杂货铺(全局变量补充、Python参数传递、字符串格式化、迭代器、生成器)

    全局变量补充 python自己添加了些全局变量 print(vars()) """结果: {'__name__': '__main__', '__doc__': None ...

  7. storm滑动窗口

    Window滑动方式: 没有数据不滑动windowLength:窗口的时间长度/tuple个数slidingInterval:滑动的时间间隔/tuple个数 withWindow(Duration w ...

  8. 谈谈Java对象的强引用,软引用,弱引用,虚引用分别是什么

    整体结构 java提供了4中引用类型,在垃圾回收的时候,都有自己的各自特点. 为什么要区分这么多引用呢,其实这和Java的GC有密切关系. 强引用(默认支持模式) 把一个对象赋给一个引用变量,这个引用 ...

  9. 算法的时间复杂度——"大O分析法"(转载)

    原文地址:https://my.oschina.net/gooke/blog/684026 一下为本人笔记:) 场景:在解决计算机科学领域的问题时,经常有好多个方法都可以,想找到最优的方法,就有了时间 ...

  10. Leetcode题目292.Nim游戏(脑筋急转弯)

    题目描述: 你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头. 拿掉最后一块石头的人就是获胜者.你作为先手. 你们是聪明人,每一步都是最优解. 编写一个 ...