docker-compose安装nodejs
使用Docker-Compose安装Node.js
为了使用docker-compose
来部署Node.js应用,需准备项目所需的文件和目录结构。通常情况下,在Linux服务器上已经预先安装好了Docker与Docker-Compose环境[^2]。
创建一个新的工作目录用于放置Node.js应用程序及其关联的配置文件:
mkdir -p /mnt/docker/nodejs-app && cd /mnt/docker/nodejs-app
在此路径下初始化一个简单的Node.js项目并编写必要的构建脚本:
创建package.json
通过执行以下命令快速生成默认设置下的package.json
文件:
npm init -y
编辑此JSON文件以适应具体的应用需求,比如指定依赖项版本号等信息。
编写简易入口程序app.js
作为示例目的,可以简单定义如下JavaScript代码片段保存至同级目录中的app.js
:
const express = require('express');
const app = express();
const port = process.env.PORT || 3000;
app.get('/', (req, res) => {
res.send('Hello from Node.js with Docker!');
});
app.listen(port, () => console.log(`Server is listening on ${port}`));
确保安装Express框架以便于搭建Web服务端口监听功能正常运作:
npm install express --save
配置Dockerfile
在同一层级新建名为Dockerfile
的文字档,其内部描述了基于官方Node.js镜像定制化容器映像的过程:
FROM node:alpine
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["node", "app.js"]
上述指令集指定了运行时的工作空间位置、复制宿主机上的包管理清单到目标环境中、仅下载生产环境下必需库、同步其余源码资源最后暴露对外提供HTTP请求处理能力的服务接口地址[^4]。
构建docker-compose.yml
最终一步是在根目录添加docker-compose.yml
文档,用来声明多层架构里各个组件之间的协作关系及参数设定:
version: '3'
services:
web:
build: .
ports:
- "3000:3000"
environment:
NODE_ENV: production
volumes:
- ./data:/usr/src/app/data
这里设定了单个名为web
的服务实例,它会依据当前上下文中找到的Dockerfile
来进行本地编译打包动作;同时开放外部访问权限给定为3000端口号,并传递环境变量指示处于正式上线模式之下;另外挂载了一个持久化的数据卷方便日后维护升级操作[^1]。
完成以上准备工作之后就可以利用下面这条语句一键启动整个集群体系了:
docker-compose up -d
这将会以前台守护进程的方式激活所有被定义过的微服务体系成员节点,包括但不限于刚刚所提及的那个Node.js Web Server。
相关推荐

















