# Docker Pull & Run Guide (Local Deployment)

This guide helps others run the system locally using prebuilt images.

## Prerequisites
- Docker Desktop (Windows) or Docker Engine + Compose
- Network access to the registry

## 1) Login to registry (private)
```bash
docker login docker.aizhangz.top
```

## 2) Create environment file
In the project root, create a `.env` file (example):
```
APP_BASE_URL=http://localhost:5173
TOKEN_SIGNING_KEY=please-change-me
JWT_SECRET=please-change-me
VOLCANO_API_KEY=
SPRING_MAIL_USERNAME=
SPRING_MAIL_PASSWORD=
```

## 3) Start with private registry images
```bash
docker compose -f docker-compose.private.yml up -d --pull always
```

## 4) Access
- Frontend: http://localhost:5173
- Backend:  http://localhost:8080

## Optional: Stop and remove
```bash
docker compose -f docker-compose.private.yml down
```

## Notes
- If login fails, verify registry URL and credentials.
- If API requests fail with 401/403 after a previous login, clear browser localStorage token:
  - Open DevTools → Application → Local Storage → remove `token`.
