Node.js LoopBack Docker化 – パート1: MongoDBのコンテナを作成する
LoopBack是一个基于Node.js的开源MBaaS(移动后端即服务)平台。开发者StrongLoop为企业提供了基于Node.js的API平台。最近我调研了一下MBaaS服务,发现有几个开源的MBaaS平台。LoopBack作为一个功能全面的MBaaS平台,同时也是一个基于Express和符合Swagger 2.0标准的Node.js开发框架。它的特点是可以自动生成REST API,只需要定义模型即可。客户端SDK包括Android、iOS和AngularJS。尤其是AngularJS SDK是同构的,所以可以在服务器和客户端共享同一个模型。
创建MongoDB容器
我们决定将MongoDB作为LoopBack的后端数据存储使用。首先,在创建LoopBack容器之前,我们需要进行准备工作。在Docker Hub Registry上搜索时,dockerfile/mongodb的可信映像看起来很不错。
在Docker主机上创建一个卷目录,并启动一个Small大小的Docker容器。
$ sudo mkdir -p /opt/mongo/db
$ docker run -d -p 27017:27017 \
-v /opt/mongo/db:/data/db \
--name mongodb \
dockerfile/mongodb \
mongod --smallfiles
用于运行Mongo命令的容器
为了执行mongo命令,我们将启动一个Docker容器。我们将链接到MongoDB容器并进行操作验证。使用Docker非常方便地准备开发用的MongoDB服务器,非常方便。
$ docker run -it --rm \
--link mongodb:mongodb \
dockerfile/mongodb \
bash -c 'mongo --host mongodb'
MongoDB shell version: 2.6.6
connecting to: mongodb:27017/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
> show databases;
admin (empty)
local 0.031GB