Aller au contenu

Aide-mémoire — EPIDOCS Frontend

Référence rapide pour le frontend Next.js de EPIDOCS.

Accès rapides

Élément Lien
Frontend prod mydocs.epitools.bj
API prod api.mydocs.epitools.bj
Repo GitHub

Ports et conteneurs

Service Port hôte Port conteneur Container name
Frontend (Next.js) 127.0.0.1:7012 3000 epidocs_frontend_container

Réseau Docker dédié : epidocs-network

Chemins VPS

/root/projects/epidocs/epidocs-frontend/
/root/projects/epidocs/epidocs-frontend/docker-compose.prod.yml
/root/projects/epidocs/epidocs-frontend/.env
/root/projects/nginx/conf.d/epidocs.conf

Commandes essentielles

Vérification santé

# HTTP
curl -s -o /dev/null -w "%{http_code}" http://127.0.0.1:7012
# 200 = OK

# État conteneur
docker inspect epidocs_frontend_container --format='{{.State.Health.Status}}'

Logs

docker logs epidocs_frontend_container --tail 50
docker logs epidocs_frontend_container -f
docker logs epidocs_frontend_container --tail 100 -t

Diagnostics

# Variables d'environnement injectées
docker exec epidocs_frontend_container env | grep NEXT_PUBLIC

# Réseau Docker
docker network inspect epidocs-frontend_epidocs-network

# Connectivité vers le backend
docker exec epidocs_frontend_container wget -q -O- http://127.0.0.1:7010/ 2>/dev/null

# Azure AD accessible
curl -s -o /dev/null -w "%{http_code}" \
  https://login.microsoftonline.com/common/v2.0/.well-known/openid-configuration
# 200 = OK

# Nginx
docker exec nginx-proxy nginx -t
curl -s -o /dev/null -w "%{http_code}" https://mydocs.epitools.bj

Rollback

cd /root/projects/epidocs/epidocs-frontend

# Lister les images disponibles
docker images ghcr.io/epitechafrik/epidocs-frontend --format "table {{.Tag}}\t{{.CreatedAt}}"

# Modifier le tag dans docker-compose.prod.yml puis :
docker compose -f docker-compose.prod.yml down
docker compose -f docker-compose.prod.yml up -d

Pipelines CI/CD

gh run list --repo EpitechAfrik/epidocs-frontend
gh run view RUN_ID --repo EpitechAfrik/epidocs-frontend --log-failed

Stack résumée

Composant Technologie
Framework Next.js 16 (App Router)
Runtime Node.js 20
UI React 19 + Chakra UI 2.8 + Tailwind CSS 3.4
Data fetching TanStack React Query 5
HTTP Axios
Formulaires React Hook Form 7
Animations Framer Motion 11
Package manager pnpm 10

Variables d'environnement

Variables NEXT_PUBLIC_* = build-time

Un changement de ces variables nécessite un rebuild complet de l'image Docker.

Variable Description
NEXT_PUBLIC_WEB_URL https://mydocs.epitools.bj
NEXT_PUBLIC_API_URL https://api-mydocs.epitools.bj
NODE_ENV production