1.准备工作
将开发好的前端项目和后端项目提交到github上去(后台数据库地址要对应线上的地址)
将前端打包好的文件放到express的静态文件夹public中去
准备好一台ubuntu服务器(ubuntu版本要19.10以下 否则安装docker会失败)
准备远程连接工具:推荐Xshell或SecureCRT(后者需要收费)
前端项目地址:https://github.com/77tao/online-shopping-mall
前端后台管理系统项目地址:https://github.com/77tao/online-shopping-admin
后台地址:https://github.com/77tao/online-mall-node
2.安装docker
具体安装步骤请移至https://www.yuque.com/zhangjiarui-4omjz/fz52t3/drtqgi
3.安装mongodb
拉取官方镜像(docker提供了一个公共仓库dockerhub)
$ docker pull mongo:latest
查看镜像
$ docker images

创建容器并运行
$ docker run -itd --name mongo -p 27017:27017 mongo --auth

4.安装node
拉取node镜像,为以后的自定义镜像做准备
$ docker pull node:latest
5.部署express
将github上的项目克隆到 /home下
$ git clone https://github.com/77tao/online-mall-node.git
在项目根目录下 新建Dockerfile文件
$ vim Dockerfile
在Dockerfile文件中编写内容(注意项目的存放目录根据自己的情况而定)
# 基础镜像node
FROM node:latest
# 镜像作者,可以附加联系信息
MAINTAINER zjr
# 创建容器内的项目存放目录
RUN mkdir -p /home/online-mall-node
WORKDIR /home/online-mall-node
# 将Dockerfile当前目录下所有文件拷贝至容器内项目目录并安装项目依赖
COPY . /home/online-mall-node
RUN npm install
# 容器对外暴露的端口号,要和node项目配置的端口号一致
EXPOSE 3000
# 容器启动时执行的命令
CMD node bin/wwww
生成镜像
$ docker build -t online-mall-node .
创建容器并运行
$ docker run -d --name nodecontainer -p 80:3000 online-mall-node
6.打开浏览器并访问

