- 初始化npm项目
- 初始化npm项目, 并安装express
npm init -y
npm i express --save
- 在package.json的scripts里添加dev启动命令
{
"scripts": {
"dev": "node ./src/app.js"
}
}
- 实现express应用的功能
- 在项目根目录创建src/app.js文件, 作为express应用的入口
- 实现项目功能, 这里只实现简单的demo.
const express = require('express')
const app = express()
app.get('/', (req, res) => {
res.send('Hello Express!')
})
app.listen(3000, () => {
console.log('App listening on port 3000.')
})
- 创建 Dockerfile文件
在根目录下创建一个名为 Dockerfile的文件
# 设置基础镜像
FROM node:latest
# 在容器中切换搞工作目录
WORKDIR /usr/src/app
# 将项目的 package.json 和 package-lock.json 复制到工作目录
COPY package*.json ./
# 安装项目依赖
RUN npm install
# 将代码复制到工作目录
COPY . .
# 暴露容器的端口
EXPOSE 4000
# 定义启动命令
CMD ["npm", "run", "dev"]
- 构建 Docker 镜像
docker image build -t my-express .
- 运行 Docker 容器
docker container run -p 4000:4000 my-express
此时, express应用已经在Docker容器中运行了, 可以在浏览器访问 http://localhost:4000 来访问应用.