一、重启宿主机后docker容器死掉~
指令:docker ps(查看容器)
docker ps -a(查看死掉的容器)
原因:(1)在docker中只要所有的命令执行完成后,会自动关闭容器。也许有读者会反应docker搭建堡垒机的时候不是已经设置systemctl enable docker(开机自启),为什么还不行?
(2)centos系统中存在selinux安全模块把docker容器的权限禁止掉了。(源头)
临时解决办法:systemctl restart docker ---重启docker服务,即可将容器回复;
长久解决原因:(1)在运行容器的时候,给容器加特权:
###~示例:docker run -i -t --privileged=true -v/home/docs:/src waterchestnut/nodejs:0.12.0
(2)临时关闭selinux:
###~示例:su -c "setenforce 0",之后执行:docker run -i -t -v /home/docs:/srcwaterchestnut/nodejs:0.12.0
注意:之后要记得重新开启selinux,命令:su -c "setenforce 1"
(3)添加selinux规则,将要挂载的目录添加到白名单:
###~示例:chcon -Rt svirt_sandbox_file_t/home/docs,之后执行:docker run -i -t -v /home/docs:/srcwaterchestnut/nodejs:0.12.0
以上就是关于宿主机重启后解决docker容器死掉的原因。结合这一点原因又引出下面的事情~
二、读者是否疑问?为什么需要安装旧版本的防火墙服务呢?以下报错信息将回复您
具体为什么会用这个服务还是不知道?但是安装此服务可以保证带有映射端口的docker容器不会启动失败。
三、docker封装安装堡垒机~映射数据库,进行授权的时候,建议修改为
mysql -e"grant all on jumpserver.* to'jumpserver'@'192.168.%.%' identified by'5Lov@wife';"(不必固定死IP)
原因:不明?
其一:基于网络资源关于centos6.X版本的安装过程,起初就是各种包的安装,期间遇到问题也可以通过百度解决,一直到了切换目录到cd/opt/jumpserver/install中通过 pip install -r requirements.txt;后才发现这个目录中根本就没有requirements.txt文件;那我~如何下载?不过仔细发现返回到上一层目录中会发现存在此文件,这个时候嘴角扬起莫名的微笑;继续执行后又一脸懵逼,报错信息完全看不懂。
###好吧!你赢了。后续过程这里咱们就不聊了,因为也没有操作。
其二:基于官网操作:(centos 7)前面过程还是没有问题,虽然有的都不知道执行了什么命令;一直到执行了pip install -r requirements.txt(这里有些记不清楚是否报错),后来有资料说如果报错可以直接通过访问网址下载pip install -r requirements.txt -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com果真是神创作,腻害。不过一直到最后服务就是起不来,显示等待时间(从秒/分钟一直延长);
###期间似乎自己还当了Python-3.6.1.tar和jumpserver.git的包自己安装的,照样报错服务起不来!
其三:还有一则信息还不错,技术含量很高的吆;本以为这次会成功,然后转身就是一脸呵呵哒。首先检查是否存在pip指令(pip -v),因为后续过程会用到这个指令。阿里云(centos 6.8)中安装了,但是虚拟机6.5中未安装;好了不纠结了。既然没有安装的话,那么就在官网当一份文件(ez_setup-0.9.tar和pip-7.1.2.tar),然后在虚拟机中安装即可,这不就完了吗?
###结果还是发现各种报错信息+上文中文件不存在问题;难道真的辣么难?
所以说综上所述不如看这篇博客吧~Centos 7安装配置jumpserver堡垒机;一定会带来不一样的视觉效果。此篇博客也有问题没有解决:随笔附赠自己搜索的结果图片~
其一:配置jumpserver.conf文件中的信息后,web端创建用户无法通过邮件推送信息(登录、密钥密码等等信息);
还有一些疑问的地方:
其一:配置好jumpserver.conf文件后需要重启配置文件./jumpserver.conf restart等等格式,然后就报错,类似于不存在此指令的意思;
其二:重启虚拟机后jumpserver.conf文件中的信息都恢复修改前的信息了(竟然也可以访问web端);
总之整个过程的懵逼可想而知,不想多说了,多说都是泪啊!也许上面的过程描述的不够清晰和其他错误,欢迎在下方评论区交流谈论~期待.....