This covers the production operations checklist for Phoenix apps: releases, runtime configuration in config/runtime.exs, libcluster strategies for multi-node PubSub and Presence, telemetry setup with OpenTelemetry, and endpoint hardening (HTTPS, rate limiting, CORS). It walks through asset deployment with mix assets.deploy, Oban for background jobs, and deployment patterns for containers and systemd. The health check and observability sections are practical. Most useful when you're moving a Phoenix app from development to production or debugging clustering issues. The common pitfalls list at the end is worth reading first, especially the note about PHX_SERVER=true and avoiding compile-time secrets.

skills.sh installs
341
GitHub stars
79
last updated
Aug 21, 2026

Install

$ npx -y skills add bobmatnyc/claude-mpm-skills --skill phoenix-ops --agent claude-code

Installs into .claude/skills of the current project.

Files

Phoenix Operations and Deployment (Elixir/BEAM)

Production-ready Phoenix apps rely on releases, runtime configuration, telemetry, clustering, and secure endpoints. The BEAM enables rolling restarts and supervision resilience when configured correctly.

Releases and Runtime Config

MIX_ENV=prod PHX_SERVER=true mix assets.deploy
MIX_ENV=prod mix release
_build/prod/rel/my_app/bin/my_app eval "IO.puts(:os.type())"
_build/prod/rel/my_app/bin/my_app start

config/runtime.exs for env-driven settings:

config :my_app, MyApp.Repo,
  url: System.fetch_env!("DATABASE_URL"),
  pool_size: String.to_integer(System.get_env("POOL_SIZE", "10")),
  ssl: true

config :my_app, MyAppWeb.Endpoint,
  url: [host: System.fetch_env!("PHX_HOST"), port: 443, scheme: "https"],
  http: [ip: {0,0,0,0}, port: String.to_integer(System.get_env("PORT", "4000"))],
  secret_key_base: System.fetch_env!("SECRET_KEY_BASE"),
  server: true

Secrets

  • Prefer env vars or secret stores (AWS/GCP KMS, Vault); avoid embedding in configs.
  • Generate SECRET_KEY_BASE with mix phx.gen.secret.

Clustering and PubSub/Presence

Sponsors

Details

Repository
github.com/bobmatnyc/claude-mpm-skills
Categories
Security, DevOps & CI/CD
First seen
Jun 3, 2026

More from bobmatnyc/claude-mpm-skills

All 158

Recommended

More Security
1mhattingpete avatarcode-auditormhattingpete/claude-skills-marketplacePerforms comprehensive codebase analysis covering architecture, code quality, security, performance, testing, and maintainability. Use when user wants to audit 341skills.sh installs
2pproenca avataraudio-voice-recoverypproenca/dot-skillsAudio forensics and voice recovery guidelines for CSI-level audio analysis. This skill should be used when recovering voice from low-quality or low-volume audio340skills.sh installs
3syncfusion avatarsyncfusion-angular-commonsyncfusion/angular-ui-components-skillsCommon utilities and features for Syncfusion Angular components. Use this skill when the user needs to implement animations, drag-and-drop, state persistence, R338skills.sh installs
4dchuk avatarunderstanding-tauri-architecturedchuk/claude-code-tauri-skillsTeaches Claude about Tauri's core architecture, including the Rust backend, webview integration, Core-Shell design pattern, IPC mechanisms, and security model f334skills.sh installs
5dirien avatarpulumi-typescriptdirien/claude-skillsScaffolds Pulumi TypeScript infrastructure-as-code projects, writes IaC code with proper resource configuration, manages Pulumi ESC environments for centralized329skills.sh installs
6bobmatnyc avataremergency-release-workflowbobmatnyc/claude-mpm-skillsEmergency release workflow for critical bug fixes and security patches. Use when production issues require fast-track deployment.328skills.sh installs