如何用Docker建立一个Node.js的开发环境

本文介绍如何使用 Docker 构建和部署 Node.js 应用程序,包括创建 package.json 文件、编写 app.js 和 Dockerfile 的步骤,以及构建 Docker 镜像并运行应用程序的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

  1. 建立一个文件夹
  2. 用管理员身份打开powershell.
  3. 在文件夹下面运行npm init, 根据提示填入信息,以便产生一个package.json文件。
  4. 在文件中加入需要的dependencies,例如:
{
"name": "docker_web_app",
"version": "1.0.0",
"description": "Node.js on Docker",
"author": "First Last <first.last@example.com>",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"dependencies": {
"express": "^4.13.3"
}
}

 

4. 创建一个app.js文件,例如:

const express = require('express')

const app = express()

 

app.get('/', function (req, res) {

res.send('Hello World!')

})

 

app.listen(3000, function () {

console.log('Example app listening on port 3000!')

})

 

5. 创建一个空文件名字为Dockerfile,填入如下内容:

FROM node:boron

 

# Create app directory

WORKDIR /app

 

# Install app dependencies

COPY package.json .

# For npm@5 or later, copy package-lock.json as well

# COPY package.json package-lock.json ./

 

RUN npm install

 

# Bundle app source

COPY . .

 

EXPOSE 3000

CMD [ "node", "app.js" ]

 

6. 创建名为.dockerignore的文件,并输入如下的内容:

node_modules

npm-debug.log

 

这是为了防止本地的module和debug log被拷贝进docker image.

(我这一步无法做,因为没有办法创建这样的文件,总是要求必须有文件名。需要进一步调查)

7. Build image

docker build -t nodehello .

 

8. 运行image.

docker run -p 3000:3000 -d nodehello

 

如果运行成功,会出现Example app listening on port 3000的字样。

 

这时访问http://localhhost:3000 就可以访问app.js中定义的内容了。

 

参考文章:

https://nodejs.org/en/docs/guides/nodejs-docker-webapp/

https://www.distelli.com/docs/tutorials/build-and-deploy-nodejs-with-docker/

https://expressjs.com/en/starter/hello-world.html

https://docs.docker.com/get-started/part2/#build-the-app

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值