docker 这么好玩,不妨在win10 上跑跑,我们首先安装dockerdesktop
如图:顺带按照官网示例跑一个demo 容器
image.png
下面开始node 服务之旅
在桌面上创建我们的工程目录docker
然后创建这四个文件
![](https://img.haomeiwen.com/i14942961/467e18f9836c844f.png)
.dockerignore
写上
# /usr/src/nodejs/dockerstudy/.dockerignore
.git
node_modules
Dockerfile 这是重点!!!
# /usr/src/nodejs/hello-docker/Dockerfile
FROM node:10.0
# 在容器中创建一个目录
RUN mkdir -p /usr/src/nodejs/
# 定位到容器的工作目录
WORKDIR /usr/src/nodejs/
# RUN/COPY 是分层的,package.json 提前,只要没修改,就不会重新安装包
COPY package.json ./package.json
RUN cd /usr/src/nodejs/
RUN npm i
# 把当前目录下的所有文件拷贝到 Image 的 /usr/src/nodejs/ 目录下
COPY . /usr/src/nodejs/
EXPOSE 3000
CMD node app.js
package.json
{
"name": "docker",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {},
"author": "",
"license": "ISC",
"dependencies": {
"cors": "^2.8.5",
"express": "^4.17.1"
}
}
app.js
var express = require("express")
var cors=require('cors')
var app = express()
app.use(cors())
//设置允许跨域访问该服务.
app.get('/',cors(), (req, respon) => {
respon.send('hello world')
})
app.listen(3000)
然后在当前目录cmd 运行吧
1、打包镜像
docker build -t dockerstudy .
![](https://img.haomeiwen.com/i14942961/b16bdf4c354e4039.png)
2、运行容器
docker run --name dockerstudycontainer -d -p 3001:3000 dockerstudy
这里我们映射容器的3000端口到本机的3001端口
![](https://img.haomeiwen.com/i14942961/69a93f274b7e2e15.png)
看,已经在愉快的跑了,打开浏览器看下
![](https://img.haomeiwen.com/i14942961/e00850897c2b22e1.png)
docker 面板上也多了我们运行的容器
![](https://img.haomeiwen.com/i14942961/e317523a7a1c92df.png)
网友评论