咨询热线:4006-75-4006
售前:9:00-23:30 备案:9:00-18:00 技术:7*24h
使用 Docker 部署 Node.js 应用实战教程
一、简介
Docker 是一种用于开发、交付和运行应用程序的开放平台。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时,广泛用于构建快速、可扩展的网络应用。在本教程中,我们将介绍如何使用 Docker 部署一个简单的Node.js应用。
二、环境准备
1. 安装 Docker
在 Ubuntu 系统上安装 Docker:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
2. 启动并验证 Docker 服务
3. sudo systemctl start docker
4. sudo systemctl enable docker
三、创建Node.js应用
1. 创建项目目录
2. mkdir my-node-app
3. cd my-node-app
4. 初始化Node.js项目
npm init -y
5. 安装 Express 框架
npm install express
6. 编写应用代码
创建一个 app.js 文件,内容如下:
const express = require('express');
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Hello, Docker!');
});
app.listen(port, () => {
console.log(`App running at http://www.landui.com:${port}`);
});
四、创建 Dockerfile
在项目根目录下创建一个 Dockerfile 文件,内容如下:
# 使用官方的 Node.js 运行时作为基础镜像
FROM node:14
# 创建应用目录
WORKDIR /usr/src/app
# 安装应用依赖
COPY package*.json ./
RUN npm install
# 复制应用代码
COPY . .
# 对外暴露端口
EXPOSE 3000
# 启动应用
CMD ["node", "app.js"]
五、构建 Docker 镜像
使用以下命令构建 Docker 镜像:
docker build -t my-node-app .
六、运行 Docker 容器
使用以下命令运行容器:
docker run -p 3000:3000 -d my-node-app
七、验证应用
1. 检查容器状态
2. docker ps
3. 访问应用
在浏览器中访问 http://www.landui.com:3000,你应该能够看到 “Hello, Docker!” 的信息。
八、推送 Docker 镜像到 Docker Hub
1. 登录 Docker Hub
2. docker login
3. 标记并推送镜像
4. docker tag my-node-app your_dockerhub_username/my-node-app
5. docker push your_dockerhub_username/my-node-app