前端如何使用Docker部署Oinone
1.什么是Oinone
数式Oinone是一款企业级产品化引擎:用低代码驱动标准化研发与敏捷交付的一体化平台。
[官网地址] www.oinone.top/
2.基础介绍
2.1 ss-front-modules中工程分层说明
ss-boot: 不做业务研发,只做包的组装和依赖
ss-oinone: 与Oinone结合层,这个工程结构可以把数式Oinone的改造收口,也是业务工程依赖的核心层
ss-admin-widget: 与界面设计器无代码的结合工程,在这个工程结构里可以把组件放在无代码平台上使用
ss-project: 模拟的项目工程,做某个项目的个性化开发
2.2 lerna
Lerna 是一个用于管理包含多个包(package)的 JavaScript 项目的工具。它帮助开发者处理多包仓库(monorepo)的工作流,简化了包之间的版本管理和发布流程
2.3 快速上手
-
初始化安装依赖
pnpm install -
清理所有依赖
pnpm run clean pnpm run clean:win -
构建生产 sdk 包
# mac 环境 pnpm run build # windows 环境 pnpm run build-win
3.如何使用docker部署
3.1 创建 Dockerfile文件
# 基于nginx官方alpine镜像制作
FROM nginx:alpine
# 维护者信息
LABEL maintainer = "bcht"
# 复制构建好的项目到nginx默认目录
COPY dist/ /usr/share/nginx/html/
# 复制当前项目nginx配置文件到默认位置
COPY /nginx.conf /etc/nginx/nginx.conf
3.2 nginx配置
# 在nginx.conf中include本配置文件
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
client_header_buffer_size 16k;
# 开启gzip,防止全局未开启
gzip on;
gzip_disable “MSIE [1-6].(?!.*SV1)”;
gzip_http_version 1.1;
gzip_vary on;
gzip_proxied any;
gzip_min_length 5k;
gzip_buffers 16 8k;
gzip_comp_level 2;
gzip_types text/css text/xml text/plain application/json application/javascript application/xml application/rss+xml application/xhtml+xml;
server {
listen 9099;
charset utf-8;
server_name 127.0.0.1;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
}
3.2 docker-compose.yaml
version: "3"
services:
synthetic-combat-platform:
container_name: synthetic-combat-platform
build:
context: ./
dockerfile: Dockerfile
ports:
- 9099:9099
volumes:
- ./dist:/usr/share/nginx/html