📘 Base de Connaissances

Base de Connaissances MYPacôme

L'infrastructure, les accès et les procédures courantes.

🗺️ Étudie le schéma avant de toucher à quoi que ce soit
🗺️

Architecture

Le schéma montre les services principaux et leurs connexions.

DNS VPS OVH — 51.68.127.181 CentOS — Docker Compose — Nginx Nginx Reverse proxy / SSL WordPress mypacome-vitrine-site PHP — MySQL — Thème custom mypacome.fr API PM1 Container api2 Express — MongoDB api2.mypacome-manager.fr MySQL WordPress — wp_* — CPT properties MongoDB API — Réservations, Propriétaires Sites et Apps mypacome-immobilier.fr app.mypacome.fr (HM) cm.mypacome.fr (CM) pm2.mypacome-manager.fr Apps externes au VPS API PM2 Staging : my-pacome.knpnet.net Prod : planning-manager.knpnet.net Backups Backblaze B2 — Rclone Légende : Flux réseau Infrastructure Base de données Externe / Tiers
🔑

Accès & Identifiants

SSH — VPS

VPS Principal
ssh centos@51.68.127.181
Mot de passe
zFSZPjZDaDs9
VPS Franchises
ssh ubuntu@5.135.149.114
Mot de passe
zFSZPjZDaDs9
Clé SSH
~/.ssh/mypacome_id_rsa
Depuis FileZilla
SFTP sur 51.68.127.181, port 22, clé SSH

Apps internes

Home Manager (HM)
https://app.mypacome.fr
Conciergerie (CM)
https://cm.mypacome.fr
PM2 Manager
https://pm2.mypacome-manager.fr
Les trois apps utilisent le compte informatique@mypacome.fr. Mot de passe HM/CM : asd. PM2 : InformatiqueTest!?

WordPress Admin

mypacome.fr
mathieu@mypacome.fr / R0m)&GcX3X3JKWDa98SKX3FT
mypacome-immobilier.fr
mathieu@mypacome.fr / tC2Leie9sK^<#827579021189185546>Dny72gr2SSC
URL Admin
https://mypacome.fr/wp-admin/

Email

Adresse
informatique@mypacome.fr
Mot de passe
MypacomeInformatiqueGMAIL2026!?&@
Email hello
hello@mypacome.fr

MongoDB

URI
mongodb://admin:WtWnRLLaVFpvy6zC@mypacome-manager.fr:27017/

Interface CRON

URL
http://51.68.127.181:8383/
Login
admin / mypacomeCronUi!?

Rclone WebUI

URL
http://51.68.127.181:8384/#/dashboard
Login
admin / YourSecretPassword

Grafana

URL
https://mypacome.grafana.net/
🌐

Sites web

API — Environnements

EnvironnementURLStatut
PM1 — API principalehttps://api2.mypacome-manager.fr/Production
PM1 — Preprodhttps://preprod.api2.mypacome-manager.fr/Test
PM2 — Staginghttps://my-pacome.knpnet.net/api/v1/Test
PM2 — Productionhttps://planning-manager.knpnet.net/api/v1/Production
PM2 — Preprodhttps://preprod.pm2.mypacome-manager.fr/Test
Doc APIhttps://my-pacome.knpnet.net/api/v1/doc.jsonPM2 Staging

L'API

Plusieurs API existent. Chacune sert un environnement.

APIURLContainer
PM1 (ancienne)https://api2.mypacome-manager.fr/api2
PM1 Preprodhttps://preprod.api2.mypacome-manager.fr/Preprod
PM2 Staginghttps://my-pacome.knpnet.net/api/v1/Externe
PM2 Productionhttps://planning-manager.knpnet.net/api/v1/Externe

Endpoints PM1

MéthodeCheminDescription
GET/api/v1/landlordsListe des propriétaires
GET/api/v1/realty-listingsListe des biens
POST/api/v1/reservationsCréer une réservation
GET/api/v1/unavailabilitiesDates indisponibles
GET/api/v1/landlords/{id}/billingFacturation propriétaire
📄 PM2 : La doc complète est au chemin /api/v1/doc.json. Importe-la dans Postman ou Swagger pour explorer tous les endpoints.

📄 PM1 : Documentation générée à partir du code source → Swagger UI PM1 (94 endpoints)

Code source

Sur le VPS
/home/centos/container/nodejs/API (dans le container api2)
Clone local
/root/mypacome/API-2

PM2 Bearer Tokens

PM2 API
Wc3d4kaMvCFtURiIh67idDsMuC5VIPES2kOy3Mp62Uk
PM2 Staging (BILLING_ROLE)
9xiqo930DTisOpSQsYktlMJ18gicnDveyDi2ebqm8Wf
🗄️

Bases de données

Deux bases stockent les données. Chacune a son rôle.

MongoDB — la base API

CollectionContenu
reservationsToutes les réservations
landlordsPropriétaires bailleurs
realty-listingsAnnonces de biens
unavailabilitiesDates bloquées
pm2_propertyBiens synchronisés depuis PM2

MySQL — la base WordPress

Elle se trouve dans le container WordPress.

Accès MySQL
docker exec -it mypacome-vitrine-site mysql -u root -p
Tables clés
wp_posts, wp_postmeta, wp_options, wp_properties (CPT)
Fais une sauvegarde avant toute modification de base. Une requête peut tout casser en une seconde.
🐳

Docker & VPS

Gestion des containers

Tous les containers
docker ps -a
En cours seulement
docker ps
Docker Compose
docker compose up -d
Rebuild + restart
docker compose up -d --build <service>
Container API
docker exec -it api2 bash
Container WordPress
docker exec -it mypacome-vitrine-site bash

Logs

Suivre les logs
docker logs -f --tail 100 <container>
Logs API
docker logs api2 --tail 50 -f
Logs WordPress
docker logs mypacome-vitrine-site --tail 50 -f
Espace disque
df -h
Nginx config
cat /etc/nginx/conf.d/*.conf
Tester Nginx
nginx -t

Emplacements

CheminContenu
/home/centos/container/nodejs/APICode source de l'API
/root/mypacome/API-2Clone local / Git
/var/www/Racines web (WordPress)
/etc/nginx/Config Nginx
/var/log/Logs système
📝

WordPress (mypacome.fr)

Le site principal utilise un thème customisé. Les équipes métier gèrent le contenu. Tu gères la technique.

Custom Post Types (CPT)

CPTUtilitéDéclaré dans
properties_post_typeBiens immobiliersTheme functions.php
pm2_propertyBiens synchronisés PM2Code custom / plugin

Plugins

PluginRôle
Yoast SEOOptimisation SEO (meta, sitemap)
ComplianzCookies et consentement RGPD
WP Super CacheCache de performance
Stripe GatewayPaiements en ligne
PMS IntegrationSync avec le logiciel de gestion locative

Thème

Dossier du thème
/var/www/html/wp-content/themes/mypacome-theme/
Éditer via SSH
docker exec -it mypacome-vitrine-site bash
N'édite pas les fichiers WordPress via l'éditeur de thème du panneau d'admin. Passe par Docker Exec ou Git. L'éditeur admin n'a pas de versionning.

Tâches courantes

Vérifier si le site est down

  1. Ouvre https://mypacome.fr. Est-ce qu'il charge ?
  2. Connecte-toi au VPS : ssh centos@51.68.127.181
  3. Lance docker ps. Les containers tournent-ils ?
  4. Regarde les logs WordPress : docker logs mypacome-vitrine-site --tail 20
  5. Vérifie l'API PM1 : curl https://api2.mypacome-manager.fr/
  6. Vérifie Nginx : nginx -t puis systemctl status nginx

Mettre à jour un plugin WordPress

  1. Connecte-toi sur https://mypacome.fr/wp-admin/
  2. Va dans Plugins → Plugins installés
  3. Clique sur "Mettre à jour" pour le plugin concerné
  4. Vérifie le site après la mise à jour
  5. Si cassé, restaure la sauvegarde ou rétrograde la version

Corriger un bug sur l'API

  1. Identifie le bug. Vérifie les logs d'abord
  2. Modifie le fichier source (local ou VPS)
  3. Redémarre le container : docker restart api2
  4. Vérifie la correction avec un curl

Ajouter un bien immobilier

Les biens viennent du système PM2 via synchronisation automatique.

  1. Le moteur PM2 pousse les données vers l'API
  2. L'API stocke dans MongoDB (collection pm2_property)
  3. WordPress lit depuis l'API via du code custom
  4. Si un bien manque, vérifie les logs de sync d'abord

Vérifier les sauvegardes

  1. Regarde les logs CRON : grep backup /var/log/cron
  2. Vérifie que les fichiers de backup existent sur le VPS
  3. Vérifie Backblaze B2 pour les copies offsite

Activer le mode debug WordPress

Éditer wp-config.php
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Les erreurs vont dans wp-content/debug.log.

Tâches automatiques (CRON)

Ces tâches tournent en fond. Elles gardent le système en vie.

TâchePlanificationEmplacement
Sauvegardes BDDCRON + WP-CronVPS + WordPress
Sync PM2 → APIAu changement / CRONMoteur PM2
Renouvellement SSLAuto (Certbot)VPS
Monitoring GrafanaContinuVPS

Voir les CRON existants

CRON utilisateur
crontab -l
CRON système
ls /etc/cron.d/ && cat /etc/crontab
Vérifie les CRON existants avant d'en ajouter un. Deux tâches sur la même ressource peuvent se bloquer.
💾

Stockage & Sauvegardes

Backblaze B2

InfoValeur
Mot de passe compteInformatiqueMypacomeBackBlazeMdp!?@
keyID003bb9657c7d4520000000001
keyNamemainMYPACOMEkey
applicationKeyK003KQLkFNlfTzWuwnpuY7FCkfuvvJc

Restaurer les sites

1. Restaurer les fichiers

Commande Rclone
rclone copy b2-backup:mypacome-bucket-main/wordpress_backup/site-vitrine /path/to/restore

2. Restaurer la base de données

Commande MySQL
docker exec -i [DB_CONTAINER_NAME] mysql -u [USER] -p[PASS] [DB_NAME] < /path/to/db_backup.sql

Accès Rclone & CRON

Rclone WebUI
http://51.68.127.181:8384/#/dashboard
CRON UI
http://51.68.127.181:8383/
🔌

Services Tiers

Stripe

Stripe gère les paiements des réservations. Les clés API sont dans les variables d'environnement des containers.

Airbnb — Application

InfoValeur
Clé API6342b08729f0769b27ab7b6bb8c39d74
Secretdf4e986487d7de7eedbff561b4bd3794

Grafana

URL
https://mypacome.grafana.net/

Grafana expose les métriques et les alertes du système.

AWS

Compte
MypacomeInformatiqueAWS&
🚨

Dépannage

Règle n°1 : ne redémarre rien au hasard. Lis les logs d'abord. Tout problème laisse une trace.
ProblèmePremière chose à vérifier
Site en 502 Bad Gateway Vérifie docker ps. Le container tourne ? Puis docker logs mypacome-vitrine-site --tail 30
API PM1 ne répond pas curl -I https://api2.mypacome-manager.fr/ Puis docker logs api2 --tail 50 (Preprod : curl -I https://preprod.api2.mypacome-manager.fr/)
API PM2 ne répond pas Staging : curl -I https://my-pacome.knpnet.net/api/v1/ Prod : curl -I https://planning-manager.knpnet.net/api/v1/ Preprod : curl -I https://preprod.pm2.mypacome-manager.fr/
WordPress écran blanc Active WP_DEBUG dans wp-config.php. Regarde wp-content/debug.log
Certificat SSL expiré certbot renew. Ou vérifie le log auto-renew
Erreur MongoDB docker logs api2. Cherche "MongoNetworkError". Vérifie si le container MongoDB tourne
Biens qui n'apparaissent pas Vérifie les logs sync PM2. Puis /api/v1/realty-listings. Puis le CPT WordPress
Page 404 sur le site Va dans Réglages → Permaliens → Clique "Enregistrer". Ça regénère le .htaccess

Redémarrage d'urgence

# Seulement si tout est cassé et que les logs sont vérifiés :
docker compose down && docker compose up -d

# Si ça ne suffit pas, reboot du VPS :
sudo reboot
Ne reboots pas le VPS pendant les heures de pointe. Planifie la maintenance quand le trafic est faible.
📖

Glossaire

TermeDéfinition
VPSServeur privé virtuel. La machine qui héberge tout
ContainerBoîte Docker. Un mini-ordinateur dans le serveur
CPT (Custom Post Type)Type de contenu WordPress custom (ex : "Biens")
PM2Logiciel de gestion locative. Source externe des biens
PMSProperty Management System. Le terme métier pour la gestion locative
MongoDBBase NoSQL utilisée par l'API
MySQLBase SQL utilisée par WordPress
NginxServeur web + proxy inverse. Aiguille le trafic vers le bon container
RGPDRèglement Général sur la Protection des Données
YoastPlugin SEO. Rend les sites trouvables sur Google
ComplianzPlugin de consentement cookies. Conformité RGPD
SSHSecure Shell. Connexion au VPS à distance
StagingEnvironnement de test avant la production
Côte FleurieZone principale de MYPacôme (Deauville, Trouville…)