← Accueil · Stacks & langages · Toute la doc

bige-ops Gratuit

Phoenix + PostgreSQL sur Outscale

Phoenix et LiveView tiennent énormément de connexions temps réel sur peu de machines, et Oban fait de PostgreSQL ta file de jobs. bige-ops pose ta release sur Outscale derrière un LBU, PostgreSQL en subnet privé, et chiffre l’ensemble.

En bref. Topologie multi-vm : VM app tinav6.c4r8p2 (release Phoenix, port 4000) derrière un LBU, PostgreSQL 17 privé, backups OOS, NAT. Estimation bige-ops : 368,30 € HT par mois.
flowchart LR
  U["Internet"] -->|"HTTPS 443 · WebSocket"| LBU["LBU internet-facing"]
  subgraph NET ["Net 10.0.0.0/16"]
    APP["VM app-app · tinav6.c4r8p2
Phoenix / LiveView :4000
Oban"] PG[("VM app-postgres
PostgreSQL 17")] end LBU --> APP APP -->|"5432"| PG PG -.->|"pg_dump"| OOS[("OOS · backups")]
LiveView en WebSocket via le LBU ; Oban s’appuie sur PostgreSQL.

Pourquoi cette stack tourne bien sur Outscale

Architecture sur Outscale

Coût mensuel estimé

Calculé avec bige-ops estimate --json sur le catalogue public Outscale synchronisé le 17 septembre 2026, Région eu-west-2, en € HT par mois (730 heures). Estimation indicative, sur la grille publique ; le trafic sortant est à 0 € HT au catalogue public de cette Région.

Ligne bige-opsCe que c’est€ HT / mois
LBU app-webentrée publique (HTTP + WebSocket)21,90 €
OOS phoenix-app-backups — 50 GiBsauvegardes PostgreSQL1,25 €
VM app-app — tinav6.c4r8p2release Phoenix + Oban135,80 €
VM app-postgres — tinav6.c4r8p2PostgreSQL 17, disque io1169,20 €
NAT gatewaysortie du subnet privé36,50 €
EIP VM app-app (attachée — 1ʳᵉ offerte / Net)IP de la VM app (1ʳᵉ offerte)0,00 €
EIP NAT (attachée supplémentaire)IP publique du NAT3,65 €
Total estimé368,30 €

Le projet utilisé, à reproduire chez toi :

bige-ops init -n stack-phoenix-postgresql
bige-ops add layout custom --name app --runtime elixir --web none --no-worker \
  --db postgres --topology multi-vm --lbu
# puis project.yaml ajusté comme ci-dessous
bige-ops validate
bige-ops estimate --json
name: stack-phoenix-postgresql
region: eu-west-2
enable_nat: true
components:
- type: stack
  name: app
  topology: multi-vm
  services: [api, postgres]
  images: {postgres: 'postgres:17'}
  sizing: {app_vm: tinav6.c4r8p2, postgres_vm: tinav6.c4r8p2}
  service_config:
    postgres:
      backup: {enabled: true, oos_bucket: phoenix-app-backups}
- type: load_balancer
  name: app-web
  scheme: internet-facing
  backend_vms: [app-app]
- {type: oos_bucket, name: phoenix-app-backups, bucket: phoenix-app-backups, size: 50, purpose: backups}

Bases de données : versions, backups, failles connues

BaseImage épingléeBackup vers OOSFailles connues
PostgreSQLpostgres:17pg_dump → gzip → bucket OOSfiche OpenCVE

PostgreSQL. PostgreSQL 18 (supporté jusqu’en novembre 2030), 17 (novembre 2029), 16 (défaut bige-ops, novembre 2028) et 15 (novembre 2027) sont maintenus ; 14 sort du support le 12 novembre 2026. La simulation épingle postgres:17. Source : politique de versions PostgreSQL. Côté durcissement : un rôle applicatif dédié (jamais le superutilisateur), des règles pg_hba.conf limitées au CIDR du Net en scram-sha-256, et des mises à jour mineures régulières (la majeure reste celle que tu épingles).

Ecto gère le pool de connexions (pool_size) : dimensionne-le avec max_connections côté PostgreSQL. Doc : Ecto · Oban.

Le backup est activé dans la simulation (backup.enabled + bucket OOS) : bige-ops crée le bucket, protégé contre la destruction, et prépare backup.sh (bucket, endpoint, planning) où tu branches le dump. Sans backup, Visual, preflight et plan te le signalent. Détail : OOS & backups.

Exposition : ce qui est ouvert, et à qui

Rappel Outscale : deux VMs d’un même subnet se parlent sans passer par les security groups ; séparer l’app (public) et la data (privé) les remet dans le chemin. Détail : réseau · ouvrir ou non, security groups Outscale.

Vulnérabilités : ce que bige-ops vérifie

Des failles, il y en aura toujours : l’important est de voir d’abord celles qui sont exposées. Avec ta clé OpenCVE, bige-ops compare les composants de ta stack, y compris les images de tes Dockerfile et docker-compose, au registre mondial des vulnérabilités (CVE), puis classe tout par urgence : ce qui est exposé à Internet d’abord. Pourquoi le refaire toi-même ? C’est chez toi, sur ton poste, et c’est gratuit. La méthode complète : ce que bige-ops vérifie.

Avec ta clé API OpenCVE (Settings), l’onglet Vulnérabilités lit ta simulation : chaque composant reconnu, image Docker ou paquet installé, est rapproché de sa fiche éditeur / produit, à raison d’une requête par produit. Les failles connues qui remontent sont classées par risque :

Le rapprochement se fait au niveau du produit, pas de la version : à toi de recouper avec la version que tu as épinglée. Une image en latest ressort en plus comme « version non épinglée ». Le résultat est mis en cache dans la simulation et se rafraîchit à la demande.

ComposantFiche OpenCVEDans bige-ops
PostgreSQLPostgreSQLreconnu automatiquement depuis l’image postgres:17 · exposition : privée
Elixir, Erlang/OTP, PhoenixElixir · Erlang/OTP · Phoenixfiche de référence (pas encore reconnu automatiquement)

L’analyse du code Elixir arrive ; ta stack est déjà couverte : PostgreSQL et les images de tes Dockerfile et docker-compose comparés aux failles connues avec OpenCVE, exposition et coût. Détail : Elixir et Phoenix sur Outscale.

Ce que bige-ops vérifie avant le deploy

OpenCVE, la source des failles connues

Pour savoir quelles failles connues touchent les briques de ta stack, bige-ops s’appuie sur OpenCVE. OpenCVE rassemble les failles publiées dans le registre mondial des vulnérabilités (CVE) et ses sources officielles (NVD, MITRE, liste KEV des failles déjà exploitées tenue par la CISA, l’agence américaine de cybersécurité…), donne à chacune sa note de gravité sur 10 (CVSS) et sa probabilité d’être exploitée (EPSS), et les range par éditeur et par produit, consultables dans son explorateur. Le projet est open source : son code, ses issues et les contributions de sa communauté vivent sur GitHub, et il s’installe aussi chez toi. Merci à ses mainteneurs et à tous ceux qui font vivre ce référentiel : c’est grâce à eux que chaque composant de ta simulation a sa fiche de failles à jour.

Docs officielles

Langages : Elixir · OCaml.

Pour aller plus loin : layouts & topologies, VMs, OKS, volumes BSU, OOS, LBU, réseau, régions, bases de données, catalogue de prix. Toutes les stacks : stacks & langages.