init: 羚牛车辆数据中心原型 + 部署配置
All checks were successful
ci/woodpecker/manual/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/manual/woodpecker Pipeline was successful
- React 18 + Babel-in-browser SPA 原型,覆盖 8 个画板: 实时地图 / 车辆详情 / 历史查询 / 轨迹回放 / 事件规则 / 通知中心 / ESG 碳减排 / 移动端 - 设计系统:IBM Plex Sans + JetBrains Mono,亮/暗双主题,羚牛绿 #007143 - 数据模型:12 + 40 辆车,TBOX (T) / JT808+1078 (JT) / 双源 (B) - 部署:nginx 静态托管,Dockerfile + woodpecker.yml + docker-compose.yml - 镜像:harbor.lnh2e.com/lingniu-v1/ln-vdc:<branch>-<VERSION> - 容器端口 80,宿主映射 8112,含 /healthz 探活
This commit is contained in:
30
Dockerfile
Normal file
30
Dockerfile
Normal file
@@ -0,0 +1,30 @@
|
||||
# 第一阶段:准备静态资源(与 ln-bi 保持两阶段结构对称,便于后续接入构建工具)
|
||||
FROM alpine:3.20 AS builder
|
||||
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
|
||||
# 清理不需要进镜像的本地开发产物(.dockerignore 已过滤大头,这里再兜底一次)
|
||||
RUN rm -rf screenshots .design-canvas.state.json .DS_Store \
|
||||
&& find uploads -name 'pasted-*.png' -delete 2>/dev/null || true \
|
||||
&& find uploads -name '472ff2cd-*.png' -delete 2>/dev/null || true
|
||||
|
||||
# 第二阶段:nginx 静态托管
|
||||
FROM nginx:1.27-alpine
|
||||
|
||||
# 拷贝 nginx 配置
|
||||
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||
|
||||
# 拷贝静态资源
|
||||
WORKDIR /usr/share/nginx/html
|
||||
RUN rm -rf ./*
|
||||
COPY --from=builder /app/ ./
|
||||
|
||||
# 创建 index.html 软链 → 羚牛车辆数据中心.html(避免中文 URL 编码问题)
|
||||
RUN ln -sf "羚牛车辆数据中心.html" index.html
|
||||
|
||||
EXPOSE 80
|
||||
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
|
||||
CMD wget -qO- http://127.0.0.1/healthz || exit 1
|
||||
|
||||
CMD ["nginx", "-g", "daemon off;"]
|
||||
Reference in New Issue
Block a user