准备工作
准备db.json,这里我直接用的json-server官网的数据
vim db.json
{
"posts": [
{ "id": 1, "title": "json-server", "author": "typicode" }
],
"comments": [
{ "id": 1, "body": "some comment", "postId": 1 }
],
"profile": { "name": "typicode" }
}
准备node环境包,因为dockerfile的ADD方法无法解压网上二次压缩文件,所以我用ADD复制了本地的一份,如果有解决办法请告诉我
wget https://nodejs.org/dist/v12.16.2/node-v12.16.2-linux-x64.tar.xz
准备Dockerfile
#选择元镜像debian
FROM debian
#设置维护人
MAINTAINER lishuo
#设定工作目标
WORKDIR /opt
#把本地压缩包文件复制过来 ADD自动解压
ADD node-v12.16.2-linux-x64.tar.xz /opt
#配置环境变量
ENV PATH=$PATH:/opt/node-v12.16.2-linux-x64/bin
#用npm安装json-server
RUN npm install -g json-server --registry=https://registry.npm.taobao.org
#在根目录创建data目录
RUN mkdir /data
#把db.json复制到data目录下
ADD db.json /data/
#把工作目录设置成根
WORKDIR /
#指定docker run后执行的命令
CMD json-server /data/db.json --port 3000 --host 0.0.0.0
#生成镜像
docker build -t lsnode .
#启动镜像
docker run -d --name chome1 -p 3001:3000 lsnode
运行成功