linux下Docker部署nodejs应用
2017-10-20 10:52
676 查看
1. 拉取node镜像
在“/”目录下运行:
网上有如下代码:
拉取的node版本过低,给我第一次部署环境带来了bug,因此最好使用第一种方法。
2. Git代码
选定存放代码的文件夹后,运行如下代码,可将git上的项目clone到当前文件夹下:
3. 创建Dockerfile蓝本
然后找到之前运行”npm install”的目录下,运行如下代码,创建Dockerfile文件:
在Dockerfile文件中输入如下代码,然后退出保存(Esc、Shift+:、wq、Emter):
我来逐行解释一下:
FROM node
FROM是构建镜像的基础源镜像,node这个是镜像的名称,也就是开始我们拉下来的那个node镜像。如果本地没有Docker 会自己pull镜像。
RUN mkdir -p/home/Service
RUN 用于在镜像里创建一个文件夹,将来用于保存我们的项目代码。
WORKDIR/home/Service
WORKDIR是将我们创建的文件夹做为工作目录。
COPY ./home/Service
COPY是把本机当前目录下的所有文件拷贝到Image的/home/Service文件夹下。
RUN npm install
在当前目录下执行npm install
EXPOSE 3000
我们将程序里的3000端口暴露给主机,用来进行外部访问。
CMD ["npm", "start" ]
在当前目录下执行npm start也就是运行nodeserver.js
4. 构建Image
在Dockerfile文件所在的目录下运行如下命令,来构建一个镜像:
然后系统就会按照Dockerfile里面的内容来生成Image了
运行结束后,我们可以执行以下命令就可以看到我们的镜像了
5. 运行镜像
接下来就是通过镜像orderimage创建一个容器并运行。
我们可以通过如下命令查看我们的容器:
4000
至此,我们就部署完毕了,此时我们打开服务器地址就可以看到我们的程序了:
参考资料:http://www.cnblogs.com/li-peng/p/5827104.html、https://onbing.com/first-blog/
在“/”目录下运行:
docker pull node:latest
网上有如下代码:
docker pull hub.c.163.com/nce2/nodejs:0.12.2
拉取的node版本过低,给我第一次部署环境带来了bug,因此最好使用第一种方法。
2. Git代码
选定存放代码的文件夹后,运行如下代码,可将git上的项目clone到当前文件夹下:
git clone URL
3. 创建Dockerfile蓝本
然后找到之前运行”npm install”的目录下,运行如下代码,创建Dockerfile文件:
vi Dockerfile
在Dockerfile文件中输入如下代码,然后退出保存(Esc、Shift+:、wq、Emter):
FROM node # Create appdirectory RUN mkdir -p/home/Service WORKDIR/home/Service # Bundle appsource COPY ./home/Service RUN npm install EXPOSE 3000 CMD ["npm", "start" ]
我来逐行解释一下:
FROM node
FROM是构建镜像的基础源镜像,node这个是镜像的名称,也就是开始我们拉下来的那个node镜像。如果本地没有Docker 会自己pull镜像。
RUN mkdir -p/home/Service
RUN 用于在镜像里创建一个文件夹,将来用于保存我们的项目代码。
WORKDIR/home/Service
WORKDIR是将我们创建的文件夹做为工作目录。
COPY ./home/Service
COPY是把本机当前目录下的所有文件拷贝到Image的/home/Service文件夹下。
RUN npm install
在当前目录下执行npm install
EXPOSE 3000
我们将程序里的3000端口暴露给主机,用来进行外部访问。
CMD ["npm", "start" ]
在当前目录下执行npm start也就是运行nodeserver.js
4. 构建Image
在Dockerfile文件所在的目录下运行如下命令,来构建一个镜像:
docker build -t orderimage .
然后系统就会按照Dockerfile里面的内容来生成Image了
运行结束后,我们可以执行以下命令就可以看到我们的镜像了
docker images
5. 运行镜像
接下来就是通过镜像orderimage创建一个容器并运行。
docker run --name ordercontainer -d -p 3000:3000 orderimage
我们可以通过如下命令查看我们的容器:
docker ps
4000
至此,我们就部署完毕了,此时我们打开服务器地址就可以看到我们的程序了:
参考资料:http://www.cnblogs.com/li-peng/p/5827104.html、https://onbing.com/first-blog/
相关文章推荐
- Docker部署基于Nodejs的Web应用-实战篇
- Docker实践--部署Nodejs应用
- Docker实战--部署简单nodejs应用
- Docker:利用Linux容器实现可移植的应用部署
- docker - 从安装到部署一个web应用(go、java)
- Linux应用server搭建手冊—Weblogic服务域的创建与部署
- docker 集群(单主机)部署web 应用入门(Nginx)
- Docker实践-使用maven插件自动部署web应用至Docker容器的tomcat
- 关于docker部署javaweb应用的问题
- linux上部署应用
- 云主机-生产环境下离线安装Docker部署应用
- 将web应用部署到Linux下面的tomcat服务器
- 在 Linux 上创建虚拟机规模集和部署高度可用的应用
- Nodejs在Linux的部署和配置
- Linux下安装Tomcat服务器和部署Web应用
- Linux下部署weblogic应用
- 【Docker】(3)---linux部署Docker、Docker常用命令
- 关于docker部署的一个简单应用(入门级别)
- Linux下部署应用例子
- linux下nginx+uwsgi部署python应用