docker 搭建小型的node开发环境。

选择daocloud的镜像源----快。不多说

镜像的准备:
docker pull docker.io/node 下载node镜像
docker pull daocloud.io/nginx 下载nginx的镜像

项目的位置:
思路:
    项目放到宿主机的某个目录下
    挂载这个目录到node容器内部。
    
    nginx的配置文件放到宿主机的某个目录下。
    挂载目录到某个nginx容器内部。
开始:

(1、启动服务容器(node项目服务---node容器)
cd 进入paasos项目所在的目录下 :app.js所在的目录

docker run \
--name paasos \容器的别名,即 服务名
-d \后台运行
-p 3000:3000 \容器端口到宿主机端口的映射
-v "$(pwd)":/nodepro/paasos \挂载当前目录到容器内的数据卷,
-w /nodepro/paasos  \将此目录设为工作目录
f87e18404481  \镜像的ID

npm start \启动paasos项目

访问:主机名字:3000----paasos

(2、nginx的 安装
cd 宿主机的mynginx目录(自己建立哈)

docker run \

--name paasos-nginx \nginx的服务名
-p 80:80  \映射nginx的端口号 到容器
-link pasos:localhost  \ 连接??
-v `pwd`/config:/etc/nginx/conf.d   \挂载主机目录到nginx内部的配置目录
-v `pwd`/logs:/var/log/nginx  \挂载日志目录
f6c12cb14ebc \镜像的ID

(3、修改配置文件:
·修改配置文件:我这里就做一台,只是为了用上nginx,如我按上面的你启动多个容器,可以通过各个容器的ID:3000来设置负载均衡。
server {
        listen 80;

        #root /nodepro/pnginx/www/nodepro/pnginx/www

        #index index.html index.htm;

        server_name localhost;

        location / {
            proxy_pass  http://localhost:3000;#反向代理主机。
        }
}




问题:
我第一次安装的时候,在nginx安装的时候,按照网上的总是弄不好。
最后还是自己琢磨明白了。

你需要先起一个测试的容器看看,这版的nginx镜像容器的配置文件里面的include 所在的位置,然后 挂载到哪个目录;在宿主机上修改
server {
        listen 80;

        #root /nodepro/pnginx/www/nodepro/pnginx/www

        #index index.html index.htm;

        server_name localhost;

        location / {
            proxy_pass  http://localhost:3000;
        }
} 

OK:
很简单的一个node工程。没有连接数据库。后续继续研究把数据库也搞上

posted @ 2016-04-15 18:51  三人行{必有我师}  阅读(871)  评论(0编辑  收藏  举报