在Docker中使用GUI环境,解决cannot connect to X server问题

Docker 因为其部署、迁移方便而广为受到关注。我们使用 DockerFile 进行环境搭建与配置,用户只需要下载 Docker 并安装,下拉镜像docker pull TheImage即可仿佛下载了一个已经配置好的虚拟环境,然后docker run 即可实现程序。
可当它处理GUI程序的时候就不那么方便,如果直接执行GUI程序会得到“cannot connect to X server”错误。因为 Docker 程序也像在另一个虚拟机一样,无法直接输出图像到宿主的显示器,而是需要在某个隧道下进行 X 传输。

Read More

使用Python-RQ 构建前后端分离的任务队列应用

故事的起因是想要做一个有排队任务系统的webserver。
初步想的架构是这样,前端用一个web页面用来新建、查看任务,通过php存至MySQL数据库,并向Worker(用Python实现的一个程序)发起一个signal,如果Worker停止工作了,则开启工作,如果已经正在跑任务,则什么事都没有。Worker启动后会跑下一个state为0的任务,完成后将结果保存到result,并进行下一个任务,若没任务则进入休眠状态。然后web可以通过id查看任务状态和任务结果。

Read More

使用Cython实现斐波那契数列并与Python比较

Cython 是用 Python 的语法写C语言,原理其实就是解释器将 python 语言翻译成C语言然后再用编译器(比如 gcc 或者 vc++ )编译成可被 python 调用的动态链接库。是用 Cython 的好处自然就是快。最近想到一个问题,斐波那契数列可以用两种方法实现,一种是用迭代方法,即根据定义当前值等于前两个值的和。另一种是使用数列知识中的求通式法直接算出。哪种更快?

Read More

Loopback自动添加ShowDoc文档及API测试

Showdoc API loopback (项目地址:https://coding.net/u/zealseeker/p/showdoc-api-loopback/git )是一款用于 Loopback (基于Express的RESTful 框架)中的 API 测试以及基于 ShowDoc 文档自动上传的工具。通过写测试脚本,用户可以方便的进行有上下文的接口测试,并且同时将需要写成文档的接口上传至ShowDoc自动进行文档维护。主要依赖于Nodejs中的Request包以及ShowDoc的文档接口。

Read More

Git clone 失败:Unable to find remote helper for 'https' 解决方法

碰到问题:

无论是使用 CentOS 6 自带的 Git 1.7.1 还是自己根据教程安装的 Git 2.2.1 都无法从Coding中以https协议克隆版本库。百度了很多也未能找到合适的解决方法。

Read More

初试TensorFlow,学习深度神经学习

前言

最近深度学习是比较火的,在theano和tensorflow之间做了个抉择,还是觉得google维护的项目靠谱点。而从另一个角度,theano是个更强大的数学工具,所以对于我们这些门外汉来说,可能更希望直接上手网络的构建和预测,从这个角度来说,TensorFlow兴许更适合。

Read More

Matplotlib 图例与标注

用Matplotlib作图相比于使用Origin这种商业软件更为程序化,当熟练了以后还是非常方便的。参考官方文档以及一些教程,不难做出一些比较好看的散点、柱状图等,这些也是在学术研究中比较常见的chart。
但是,常常我们需要在柱状图或者散点图上增加一些图例以及标注以增加图表的可读性,那么该怎么做呢?此处介绍两处笔者用到的增加图例与标注的方法:

Read More

我和Coding这两年

上一次冒泡 并不知道这是个活动,无意中得到好多赞,让我有写一篇完整版,发表一篇博文,聊聊不为人知的情结。此文同步到我的博客

Read More

利用docker搭建linux下的apache-mysql-php环境(xampp)

在mac下配置amp环境虽然有简单的xampp,但是仍然会出现一些奇奇怪怪的错误,所以我想到利用docker来下载别人构建的环境,一来省力,而来通过这样的配置以了解对docker的一些了解。
以往配置lamp(其实比起apache我更喜欢nginx,感觉更简单),基本上就是百度,然后各种教你如何从源码下载、编译,然后如何配置他们。尽管从中能学到很多东西,可到头来每次配置环境仍然要百度他们,然后按照他们的介绍来,实在麻烦。
有一种好点的解决方法是利用package manager,比如ubuntu的apt-get,CentOS的yum,mac下有bower,windows嘛就各种下载就行了。但下载后依然可能会出现各种问题,可能也要自己修改配置文件,手动开启一些服务。
有一种更好的解决方案就叫xampp,对于只需要一个测试,开发环境的php程序员来说,xampp绝对是福音。然而身边仍然有小伙伴会出现错误,比如php_mysql函数无法使用等等,试了各种方法也解决不了。
docker可以说是更好的“打包”,想要什么环境很容易找到别人的镜像,学了会用它后,配置什么环境都相对要容易很多,而自己搭建的环境也容易分享给别人。

Read More

在安装Theano, scipy以及jupyter,matplotlib时碰到的问题

安装Theano时出现Memory error(实验虚拟机为Aliyun 1G 1CPU)解决方法是pip --no-cache-dir install Theano 参考 http://stackoverflow.com/questions/29466663/memory-error-while-using-pip-install-matplotliblotlib
这个问题同样在安装matplotlib时也会出现。

Read More