身為一個(gè)后端程序員,有時(shí)不得已也要擺弄一下前端的東西。這不,老大讓我把前端項(xiàng)目打個(gè)docker 包。好了,廢話不多說(shuō)。打docker 包首先得有dockerfile 那就先編寫(xiě)docker吧
dockerfile
from 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 編寫(xiě)好了執(zhí)行 打鏡像命令。
myeppweb 為我打成鏡像的名字
docker build -t myeppweb .
// 注意 . 不能忘。啟動(dòng)
此時(shí)執(zhí)行 docker images 就可以查看到打包成功的鏡像
執(zhí)行啟動(dòng)命令:
docker run -d -p 3001:3001 myeppweb分析
好了講解一下dockerfile 的命令
基于daocloud.io/node:7 的鏡像進(jìn)行打包鏡像
from daocloud.io/node:7這個(gè)是維護(hù)者的信息
maintainer abel.yang <527515025@qq.com>
label descripttion=”this image is build for web”
創(chuàng)建一個(gè) 文件夾并將當(dāng)前文件夾下的 所有文件放到 新建的文件夾下。(我當(dāng)前的文件夾下的文件是 前端可運(yùn)行的代碼。直接輸入npm run start 就能運(yùn)行的代碼哦)
run mkdir -p /opt/apps/epp
copy . /opt/apps/epp設(shè)置當(dāng)前路徑,也就是下面所有命令的執(zhí)行都是在這個(gè)路徑
workdir /opt/apps/epp/epp-web/server設(shè)置鏡像時(shí)間和時(shí)區(qū)
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啟動(dòng)node
cmd [ npm, start ]好了這篇文章也就是記錄一下打包的過(guò)程。