docker安装花生壳实现内网穿透
花生壳是一款内网穿透软件,可实现内网穿透功能,为了实现家庭nas能在公网进行访问,我打算采用docker来进行安装花生壳。故在此记录安装过程和遇到的问题。
花生壳官网:https://hsk.oray.com/
一、docker容器创建
1.1、创建并运行容器
直接基于ubuntu启动容器,或者你也可以创建Dockerfile来创建镜像后再运行。
docker run -it -d --name ssh --mac-address 42:29:83:81:C0:FD --restart on-failure -v /media/work/ssh/:/workplace ubuntu
由于docker容器内的服务没法设置自启,所以最好在容器创建的时候新增入口脚本,随容器启动而运行,这里建议新建一个start.sh脚本,然后在该脚本中启动服务(最好在脚本内写个死循环,然后sleep,否则docker容器内无服务运行的时候,将会自动退出),然后在上诉的命令中再加上--entrypoint /workplace/start.sh 参数。
还有一点需要注意的是,需要设置容器的mac地址(网上搜索随机mac地址生成或者其他途径获取),这是因为花生壳的SN码和mac地址有关,mac地址相同时,SN码一致,部署多台主机时会出现问题的,所以这里我们需要指定一个MAC地址,防止产生冲突。
1.2 、修改mac地址
如果容器已经启动了怎么办?是否能修改其对应的mac地址呢?这里建议:将已经运行的容器打包成镜像,然后再参考上诉的命令进行运行容器。
docker stop ssh # 停止需要打包的容器
docker commit --author "youname" --message "something" -p ssh ssh:img # docker commit --help 可查看帮助文档
容器打包完成后再进行创建新的容器即可。
还有一种方法就是直接修改对应的容器信息(不知道是否会有其他的影响): 该方法无效,启动容器后,配置文件恢复,忽略下方代码
docker inspect ssh # 查看对应容器的信息
# 查看ResolvConfPath对应的路径,cd 到对应的文件的上级目录 可能需要root权限
docker stop ssh # 停止对应的容器
# 更改目录下的config.v2.json 中的 MacAddress地址,保存
docker start ssh # 启动对应的容器
1.3、进入启动的容器
容器启动成功后,我们执行命令进入容器开始安装
docker exec -it ssh bash
二、花生壳安装
我是基于docker Ubuntu的镜像进行安装的,首先我们下载花生壳(我这里下载的是5.1版本),在容器内运行
wget -c "https://down.oray.com/hsk/linux/phddns_5_1_amd64.deb" -O phddns_5_1_amd64.deb
dpkg -i phddns_5_1_amd64.deb # 安装
apt-get install -y openssh-server # 安装ssh服务,以便进行远程访问
安装完成后会输出对应的SN号,你到花生壳(需要花生壳账号)的控制台的设备列表进行绑定即可。
版权声明:本文转载请注明出处!
最新评论:
发表评论
电子邮件地址不会被公开。 必填项已用*标注