Docker离线部署Node.js

在离线环境中使用 Docker 部署 Node.js 项目,可以按照以下步骤操作:

1. 准备 Node 镜像

在装好有网络的环境中,先拉取所需的镜像并保存为node.tar文件

bash 复制代码
docker pull node  # 拉取最新的node
docker save -o node.tar node

2. 在 Node.js 项目根目录创建 Dockerfile 文件

Dockerfile 复制代码
# 使用官方 Node.js 镜像作为基础镜像
FROM node

# 设置工作目录
WORKDIR /usr/src/app

# 先安装依赖,避免每次更改源代码时都重新安装
# COPY package*.json ./
# RUN npm install

# 将当前目录的内容复制到容器中的工作目录
COPY . .

# 暴露容器的 3000 端口
EXPOSE 3000

# 启动应用
CMD ["node", "app.js"]

创建好 Dockerfile 后的项目目录结构如下:

3. 打包 Node.js 项目

bash 复制代码
tar -czvf my-nodejs-project.tar.gz my-nodejs-project/

4. 传输文件到 Linux 离线环境

node.tarmy-nodejs-project.tar.gz 文件传输到 Linux 离线环境

5. 在离线环境中加载 Node 镜像

bash 复制代码
docker load -i node.tar

6. 解压 Node.js 项目文件

bash 复制代码
tar -xzvf my-nodejs-project.tar.gz

7. 构建 Docker 镜像

bash 复制代码
docker build -t my-nodejs-app .
docker images # 查看镜像

8. 后台运行 Docker 容器

注意: 端口需要与项目中的端口和Dockerfile文件暴露端口保持一致。

bash 复制代码
docker run -d -p 主机端口:容器端口 my-nodejs-app
docker ps # 查看容器状态
docker exec -it my-nodejs-app /bin/bash # 进入容器
相关推荐
在云端易逍遥43 分钟前
nextjs项目部署阿里云实践
docker·next.js
yzzzzzzzzzzzzzzzzz2 小时前
node.js之Koa框架
node.js
ID_云泽2 小时前
多架构镜像整合全攻略:在Docker中实现单一镜像支持同时支持amd64和arm64架构
docker·容器·架构
Java陈序员3 小时前
轻松设计 Logo!一款 Pornhub 风格的 Logo 在线生成器!
vue.js·node.js·vite
kfepiza3 小时前
Dockerfile详解 笔记250801
docker·容器
行星0084 小时前
centos7安装Docker
docker·容器
gongzemin5 小时前
使用Node.js开发微信第三方平台后台
微信小程序·node.js·express
HeXDev5 小时前
【Docker】部署Docker可视化管理面板Dpanel
docker·容器·dpanel
吃不胖没烦恼8 小时前
Docker 初学者需要了解的几个知识点 (五):建容器需要进一步了解的概念
运维·docker·容器
kfepiza9 小时前
安装 docker compose v2版 笔记250731
docker·容器