暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Docker小白之路1

R和SVG的较量 2020-07-23
208
最近课题组使用的基于docker的网络数据库出现了问题,这一块是属于我来负责管理的,早期的使用仅限于数据管理,比较简单,碰到问题以后,我就傻眼了。主要是由于我是docker跟网页部署方便的小白一个,所以完全呆萌的手脚无措。

下边体讲一下碰到的问题,以及最终的解决方法:

问题:

(1)一开始是打开速度过慢(这是一直存在的问题),通过合作单位的技术人员协助检查,发现是‘有可能’是因为该网页访问了境外的对应的jQuery库文件所致。

技术人员告知需要咨询部署或者写这个网页的人修改这个问题。但是对于小白的我来说,唯一能想到的解决办法就是,把访问的这个链接改成境内对应的库应该就可以了吧?但是,本人一开始并不懂这个文件是啥?干啥用的?是建网页特异写的么,还是本身就存在的?【感受到自己内心的惊慌失措】

(2)然后上升到第二阶段,整个网页 打-不-开。只能打开一个头,告诉你,它还活着

对于小白如我,只能求助于老板们,老板说应该是跟javascript有关系的,给了我一些提示。

但是,这个是基于docker封装后的容器运行的网页,一个不懂的网页,一个不懂的docker,我一直单方面以为docker封装以后,封装的软件就无法修改了,除非把代码拿出来,重新修改,再封装才可以【自我鄙视一下】

解决办法:

随后,请教了做过类似工作的同事,同事说,这个就是网络访问受限制了。由于网络访问受限,导致本身在开启这个网络的时候,访问的js库无法读取,所以网页就打不开,直接进入到docker容器中,把对应网页的html中这几个js库改成境内对应的库的路径即可,然后重启docker容器即可。如下图:

由于这个网页之前是境外课题组使用的,所以应该在编码的时候,设置的是境外的js库访问地址,最近几天国内网路访问被限制访问境外的一些网页,因此导致这一情况的出现。


随后,我就临时学会了几招docker的命令:

docker  ps  #可以获取集群中最近正在运行的容器name或者容器id;
docker exec -it docker的容器name/id均可   bash{路径}
#使用这个命令进入容器以后,退出容器,不会导致容器的停止


Vim templates/common/base.html
复制

然后修改下图中红框部分的信息:

有两种方法:

方法①:将这两个文件下载到对应的集群对应的static/js/min/ 文件夹下(也可以放在其他任意位置,放在这里,是为了方便查找管理),然后使用下图的语法格式修改之前的地方;
这个方法的好处:便于自己管理,且下次再出现相似的问题,就知道是自己集群可能出现问题,直接修改对应文件夹下js库即可;
不好的地方:下载下来可能出错。
复制



我们这个直接下载后,使用这个方法,就报错了,报错如下:

可能下载下来以后,文件跟在线文件不同么?这个问题最后也没有解决。

方法②:直接使用这两个库的在线路径替换上述图中的地址。
这个方法的好处:不用下载js库,直接访问境内的js库在线路径,国内访问速度还是挺快的。
不好的地方:境外访问就会出现我们一开始的那种情况;
复制



使用第二个方法,最终没有报错,也解决了一开始的两个问题。

修改完了以后,退出容器(exit),然后重启容器:

Docker restart 容器id/name
复制

最终网页正常运行。

PS:

推荐一个罗列了完整的JS库以及JSui库的网址:

https://www.jb51.net/zt/cdn.htm

jQuery文件库和jQuery ui文件库的地址合集 这里感谢LY和HZF同学的协助学习


编辑:Vickymemo

校对:Vickymemo



往期回顾:

新专栏没有往期回顾!!

文章转载自R和SVG的较量,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论