Whitebox Base Image for Docker
## MRs:
- https://gitlab.com/whitebox-aero/whitebox/-/merge_requests/229
- https://gitlab.com/whitebox-aero/whitebox-plugin-traffic-display/-/merge_requests/13
---
Context:
- https://gitlab.com/whitebox-aero/whitebox/-/merge_requests/84#note_2415183319
- https://gitlab.com/whitebox-aero/whitebox/-/merge_requests/90#note_2394955979
Create a base whitebox image based on ubuntu with all required utilities installed so that other services could use this as a base.
Then use the base image to build the frontend and backend, sharing the same version of node/npm for JSX compilation. Also use it to build all other containers images that exist by the time this task is worked on, such as nginx, etc.
Example:
```yml
# Stage 1: Base image
FROM ubuntu:24.04 AS base
# Install common dependencies
RUN apt-get update && apt-get install -y nodejs npm
# Stage 2: Frontend image
FROM base AS frontend
WORKDIR /app
COPY ...
CMD ["npm", "start"]
# Stage 3: Backend
FROM base AS backend
WORKDIR /app
COPY ...
CMD ["python", "manage.py", "runserver"]
```
docker-compose:
```yml
services:
frontend:
...
build:
dockerfile: Dockerfile
target: frontend
backend:
...
build:
dockerfile: Dockerfile
target: backend
depends_on:
- frontend
```
issue