mirror of
https://github.com/gadgethd/ukmesh.git
synced 2026-09-09 08:43:45 +00:00
www.ukmesh.com (website-ukmesh container, port 3004):
- UKLayout, UKHomePage, UKInstallPage, UKMqttPage components
- VITE_SITE=ukmesh build arg routes to UK pages in main.tsx
- Stats fetched via relative /api path (proxied by Nginx)
app.ukmesh.com (app-ukmesh container, port 3003):
- Same dashboard build with VITE_APP_HOSTNAME=app.ukmesh.com
- VITE_NETWORK=ukmesh for future API filtering
MQTT:
- node-ukmesh Mosquitto user for ukmesh observer nodes
- ACL updated: backend reads meshcore/# and ukmesh/#
- ukmesh nodes publish to ukmesh/{IATA}/{PUBKEY}/packets
Cloudflare routes to add in Zero Trust:
www.ukmesh.com -> http://website-ukmesh:80
app.ukmesh.com -> http://app-ukmesh:80
mqtt.ukmesh.com -> http://mosquitto:9001
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
17 lines
497 B
Docker
17 lines
497 B
Docker
# App frontend — React SPA served via Nginx, proxies /api and /ws to backend
|
|
FROM node:20-alpine AS frontend-builder
|
|
WORKDIR /build/frontend
|
|
COPY frontend/package.json ./
|
|
RUN npm install
|
|
COPY frontend/ ./
|
|
ARG VITE_APP_HOSTNAME
|
|
ARG VITE_NETWORK=teesside
|
|
ENV VITE_APP_HOSTNAME=$VITE_APP_HOSTNAME
|
|
ENV VITE_NETWORK=$VITE_NETWORK
|
|
RUN npm run build
|
|
|
|
FROM nginx:alpine
|
|
COPY --from=frontend-builder /build/frontend/dist /usr/share/nginx/html
|
|
COPY nginx.app.conf /etc/nginx/conf.d/default.conf
|
|
EXPOSE 80
|