之前寫過這個碉克,可讀性不高菩彬,我現(xiàn)在重新寫一下。
1沼溜、先拉取node
docker pull node:latest
2平挑、在nodejs項目根目錄下創(chuàng)建Dockerfile文件,并進行配置
FROM node:latest
RUN mkdir -p /usr/src/school
WORKDIR /usr/src/school
COPY . /usr/src/school
WORKDIR /usr/src/school/website
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 3000
CMD ["npm", "run", "dev-win"]
3系草、創(chuàng)建docker鏡像
docker build -t schoolnode .
(最后這個小數(shù)點不能忘了)
4通熄、拉取mongo
docker pull mongo:latest
5、運行mongo
docker run --name mongo -v /usr/src/mongo:/data/db -d -p 27017:27017 mongo --auth
6找都、因為運行mongo時加了--auth
唇辨,所以需要配置mongo用戶信息:
a、先進入mongo
docker exec -it mongo /bin/bash
b能耻、連接到admin
mongo admin
c助泽、創(chuàng)建manager user
db.createUser({user:"root", pwd:"root",roles:[{role:"root",db:"admin"}]})
d、可以通過admin
登錄mogno
嚎京,然后去創(chuàng)建其他數(shù)據(jù)庫,并為其創(chuàng)建manager user
隐解,然后就可以通過創(chuàng)建的user
登錄相應(yīng)的數(shù)據(jù)庫了鞍帝。(可以通過工具mongoChef Core完成)
7、運行nodejs鏡像
docker run -d -p 3000:3000 --name schoolnode --link mongo:mongo schoolnode
注意:必須要加--link煞茫,不然連接不到mongo數(shù)據(jù)庫(當然帕涌,也有其他辦法,此處暫時不講)续徽,--link后面的mongo:mongo
是指將mongo
容器連接到此容器蚓曼,別名也叫mongo