docker打包项目到服务器,怎么在docker中对node项目进行打包

怎么在docker中对node项目进行打包

发布时间:2021-03-11 17:26:32

来源:亿速云

阅读:79

作者:Leah

栏目:服务器

怎么在docker中对node项目进行打包?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

DockerfileFROM daocloud.io/node:7

MAINTAINER abel.yang <527515025@qq.com>

LABEL Descripttion="This image is build for web"

RUN mkdir -p /opt/apps/epp

COPY . /opt/apps/epp

WORKDIR /opt/apps/epp/epp-web/server

ENV LANG C.UTF-8

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone

EXPOSE 3001

CMD [ "npm", "start" ]

好了 dockerfile 编写好了执行 打镜像命令。

7dfe81396cf51aa040f1cdd619eb560e.png

myeppweb 为我打成镜像的名字docker build -t myeppweb .

// 注意 . 不能忘。

启动

此时执行 docker images 就可以查看到打包成功的镜像

e6b5fab459b2cd69f7c9b9ef72d74a87.png

执行启动命令:docker run -d -p 3001:3001 myeppweb

分析

好了讲解一下dockerfile 的命令

基于daocloud.io/node:7 的镜像进行打包镜像FROM daocloud.io/node:7

这个是维护者的信息MAINTAINER abel.yang <527515025@qq.com>

LABEL Descripttion="This image is build for web"

创建一个 文件夹并将当前文件夹下的 所有文件放到 新建的文件夹下。(我当前的文件夹下的文件是 前端可运行的代码。直接输入npm run start 就能运行的代码哦)RUN mkdir -p /opt/apps/epp

COPY . /opt/apps/epp

设置当前路径,也就是下面所有命令的执行都是在这个路径WORKDIR /opt/apps/epp/epp-web/server

设置镜像时间和时区ENV LANG C.UTF-8

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone

暴露端口EXPOSE 3001

启动nodeCMD [ "npm", "start" ]

看完上述内容,你们掌握怎么在docker中对node项目进行打包的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!