回覆列表
-
1 # 程式碼人生
-
2 # zone774
不邀自來。
首先你的這種情況就只能透過 Dockerfile 來構建了。
我自己這邊是可以透過構建映象來完成的,所以這裡就可以回答題主所說的被 qing 的問題了。
那麼第一步還是拉取 nodejs 的映象;
docker pull node接下來是新建檔案
vim Dockerfile下面開始編寫 Dockerfile:
基於 node 映象:
FROM node指定維護者資訊:
MAINTAINER your_name your_email指定下一條命令的工作目錄:
WORKDIR /your/work/path執行命令列命令:這裡看你情況安裝,如果你是 koa ,那就安裝 koa
RUN npm install express安裝 pm2 :
RUN npm install pm2 -g複製你的專案檔案到 Dockerfile :其中 . (點) 表示當前路徑下的檔案
COPY . /your/work/path安裝模組依賴:
RUN npm install執行專案:
pm2 start your_project暴露 3000 埠:
EXPOSE 3000最後,構建你的映象:
以下是基於jenkins映象中增加nodejs的Dockerfile,如果不行就看能不能手動的下載http://nodejs.org/dist/v8.7.0/node-v8.7.0-linux-x64.tar.gz。然後安裝一個cnpm來利用阿里的倉庫來進行安裝具體的元件。
FROM jenkinsci/jenkins:ltsMAINTAINER topsec "xxxxxxxxx"USER root# basic packagesRUN apt-get update -qq && apt-get install -qqy \ pythonENV NODEJS_VERSION 8.7.0RUN mkdir /nodejs && curl http://nodejs.org/dist/v${NODEJS_VERSION}/node-v${NODEJS_VERSION}-linux-x64.tar.gz | tar xvzf - -C /nodejs --strip-components=1ENV PATH=$PATH:/nodejs/binRUN npm install -g cnpm RUN cnpm install -g node-sass @angular/cli@latestRUN node -v && npm -v && python -V && ng -v