类型一

​ 由于本项目默认使用yarn(和npm类似都是包管理工具),因此需要先安装yarn(npm install -g yarn

Build

  • 打包前,保证项目包安装好了,且能运行
  • 首先执行build指令,编译出dist文件夹内容,本项目指令为:
1
yarn build
  • 编写Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 使用官方的 Node.js 镜像作为基础镜像
FROM node

RUN mkdir /app

# 设置工作目录
WORKDIR /app

# 复制 dist 文件夹到工作目录
COPY dist/ .

# 暴露端口(如果需要的话)
# EXPOSE 3000

# 定义容器启动命令,使用 yarn serve 启动项目
CMD ["yarn", "serve"]
  • 将dist目录和Dockerfile文件拷贝到linux对应目录下,如下
1
2
root@ubuntu:/home/xlh/estimate_web# ls
dist Dockerfile
  • 编译生成镜像
1
docker build -t estimate_web .
  • 创建实例
1
docker run -d -p 3333:33 --restart=always --name estimate_web_v1.0 estimate_web

防火墙问题

  • 若其他网络的主机无法访问相关接口,使用如下命令:
1
iptables -A INPUT -p tcp --dport <your_port> -j ACCEPT