在linux系统中用docker搭建ss
首先呢,你的先有一台自己的服务器把,这个就不多赘述了,我自己买了一台国外的VPS.
- 一、docker的安装
首先我们来看下服务器的版本信息:
- cat /etc/redhat-release //CentOS Linux release 7.6.1810 (Core)
1、docker安装
- yum install -y docker
安装完之后查看是否安装成功:
- yum list installed | grep docker
启动docker服务
- systemclt start docker
查看docker是否启动成功
- systemctl status docker
看到那个绿色的字体了嘛,OK,启动成功
查看docker中的所有容器:
- docker ps
默认应该是空的,但是我这里已经新增了一个容器。
- 二、在docker中安装ss服务端
直接上命令:
- docker run -dt --name ss-server -p : mritd/shadowsocks -s "-s 0.0.0.0 -p 6445 -m aes-256-cfb -k 123456test --fast-open" --restart=always
注意,-k后面是你后面再客户端使用的时候的密码。
参考文献:https://hub.docker.com/r/mritd/shadowsocks/
安装成功后,就已经启动了这个容器,可以再次使用`docker ps`来查看已经启动的容器
- 三、配置客户端
下载ss客户端,打开之后就是这样滴:没错,就是桌面右下角的小飞机图标
、
在图标上右键->服务器-》编辑服务器,输入配置信息:服务器地址即你的服务器的IP,端口,我上面安装的时候指定的是6445,也可以自己指定,密码也是安装ss的时候就设置的,加密选 aes-256-cfb,确定。
这样,就配置好了,再次右键小飞机,选择启动系统代理,就可以了
- 四、google一下,不能访问?
这一切好像太顺利了,google一下,发现的确不能访问,这种时候就很容易想到一件事,那就是防火墙,这里就用到文章最开始要去看看系统版本的原因了,因为centos7系统开始,使用firewalld服务替代了iptables服务
查看防火墙状态:
- systemctl status firewalld
发现时开着的,关了再试试呢?
- systemctl stop firewalld
再试试发现还是不能访问google...
重启下docker呢?
- systemctl restart docker
- docker start ss-server
这里的ss-server是你之前安装的时候--name后面的东西哦
再试试,bingo!!!成功了
现在知道问题所在了,如果我们需要打开防火墙仍然可以使用怎么办呢?那就开放端口咯
首先打开防火墙
- systemctl start firewalld
查看已经开放的端口:
- firewall-cmd --list-ports
发现没有6445,OK,开启端口:
- firewall-cmd --zone=/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重启防火墙:
- firewall-cmd --reload #重启firewall
重启docker:
- systemctl restart docker
- docker start ss-server
再试试google一下,成功了吧
- 五、其他
关闭docker中的容器:
- docker stop ss-server
删除docker中的容器:
- docker rm ss-server
如果您想临时关闭防火墙,输入命令
- systemctl stop firewalld
如果您想永久关闭防火墙,输入命令
- systemctl disable firewalld
在linux系统中用docker搭建ss的更多相关文章
- linux系统下本地搭建git服务器
linux系统下如何搭建本地git服务器,用于存放团队的开发代码,如下步骤: 1.先用一台服务器来安装git,安装好linux以后,在这里选用的是Ubuntu 14.04.然后配置静态IP:172.1 ...
- 在本机使用虚拟机安装一个linux系统,并搭建ftp服务器
一.Linux基础使用:linux服务器环境搭建(FTP服务器), 在本机使用虚拟机安装一个linux系统,并搭建ftp服务器,要求能使用ftp服务将本机文件到保存linux虚拟机上 资料: VMwa ...
- 孤荷凌寒自学python第六十一天在Fedora28版的linux系统上找搭建本地Mongodb数据服务
孤荷凌寒自学python第六十一天在Fedora28版的linux系统上找搭建本地Mongodb数据服务 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第七天.成功在本地搭建 ...
- ubuntu系统用docker搭建wordpress
目标:在docker中搭建wordpress 安装顺序: 首先要有一个云服务器---购买或者自己搭建(本人是自己在主机上装了虚拟机,搭建了一个ubuntu14.04,安装链接:https://www. ...
- Linux系统环境基于Docker搭建Mysql数据库服务实战
开放端口规划: mysql-develop:3407 mysql-test: 3408 mysql-release: 3409 ps: 1.不推荐使用默认端口-3306,建议自定义端口 2.如果采用阿 ...
- Linux系统中用DNW向ARM开发板下载程序
在Linux下通过dnw来给开发板发送程序.包括驱动程序代码:secbulk.c,应用程序代码:dnw.c.只能运行在32位系统上,在64位系统上提示错误:DNW download Data size ...
- Linux系统移植(1) ------搭建交叉编译环境
本人的开发环境是ubuntu12.05的64版本,运行在11.00的虚拟机上.首先说明为什么需要搭建交叉编译环境.我们知道,我们的开发一般在PC机上,是基于X86架构的,而我们的开发板却是基于ARM架 ...
- Linux系统zookeeper环境搭建(单机、伪分布式、分布式)
本人现在对zookeeper的环境搭建做一个总结,一般zookeeper的安装部署可以有三种模式,单机模式.伪分布式和分布式,这三种模式在什么时候应用具体看大家的使用场景,如果你只有一台机器且只是想自 ...
- linux系统centOS7下搭建redis集群中ruby版本过低问题的解决方法
问题描述: 在Centos7中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4... 那就有点麻烦了,譬如:我准备使用redis官方给的 ...
随机推荐
- 什么是J2EE
什么是J2EE 一.准备篇 1 什么是J2EE?它和普通的Java有什么不同? 答:J2EE全称为Java2 Platform Enterprise Edition. "J2EE平台本质上是 ...
- java中方法调用在内存中的体现
在java中,方法以及局部变量(即在方法中声明的变量)是放在栈内存上的.当你调用一个方法时,该方法会放在调用栈的栈顶.栈顶的方法是目前正在执行的方法,直到执行完毕才会从栈顶释放.我们知道,栈是一种执行 ...
- Android获取蓝牙地址
最近做一个项目,发现Android6.0以上的版本获取的蓝牙地址始终为02:00:00:00, Google一下发现Android早就封掉了相关接口,于是想到反射的方式去获取Mac地址,在此记录一下 ...
- 新建虚拟机,每次都提示无法连接虚拟设备 ide1:0
处理方式:看到了这个老哥http://www.cnblogs.com/dean-du/p/6888513.html的博客,发现问题是一样的,所以记录一下. 将虚拟机设置中的CD/DVD选项中的连接更改 ...
- Gitlab installtation
环境:Centos7 安装配置(安装开启http和sshd): 1 yum -y install curl openssh-server postfix 2 systemctl enable sshd ...
- 如何清除SQL 的登录名
复制路径 找到SqlStudio.bin 文件删除即可 SQL Server 2016 版本: C:\Users\%username%\AppData\Roaming\Microsoft\SQL Se ...
- 封装和 property方法
封装其实就是一个类用双下划线把自己的属性或者方法给限制住 不让其他的类直接调用或者修改 必须通过这个类来进行操作,这个类通过双下划线__把自己的属性和方法给限制住了 封装就是私有的过程 把父类中的属 ...
- 并发集合 System.Collections.Concurrent 命名空间
System.Collections.Concurrent 命名空间提供多个线程安全集合类. 当有多个线程并发访问集合时,应使用这些类代替 System.Collections 和 System.Co ...
- java 包(package)
package packageDemo2_5; public class packageDemo1 { String name;//同一个包里的类可以直接访问 //不同包里的类是不可以使用默认修饰符的 ...
- 【RabbitMQ】1、安装
1. 下载 下载地址:http://www.rabbitmq.com/download.html 2. windows下安装 2.1. 安装Erlang 下载:http://www.erlang. ...