PHPackages                             pierotto/supervisor - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. pierotto/supervisor

ActiveSymfony-bundle

pierotto/supervisor
===================

Symfony extension for generating configuration of supervisor programs.

2.2.0(1y ago)155MITPHPPHP &gt;=8.1

Since May 11Pushed 1y ago2 watchersCompare

[ Source](https://github.com/pierotto/supervisor)[ Packagist](https://packagist.org/packages/pierotto/supervisor)[ RSS](/packages/pierotto-supervisor/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (7)Versions (7)Used By (0)

Supervisor Bundle
=================

[](#supervisor-bundle)

The Supervisor Bundle is a Symfony extension that simplifies the generation of supervisor program configurations.

Requirements
------------

[](#requirements)

- PHP 8.1+
- Symfony 6.0+

About
-----

[](#about)

This bundle takes your configuration and generates a supervisor.conf file containing the specified programs, along with their settings. You have the flexibility to choose the path and filename for this file.

Installation
------------

[](#installation)

To get started, require the bundle and its dependencies using Composer:

```
composer require pierotto/supervisor
```

Then, register the bundle in your Symfony application:

```
// bundles.php
return [
    Pierotto\SupervisorBundle\Infrastructure\Symfony\SupervisorBundle::class => ['all' => true],
];
```

Usage
-----

[](#usage)

You can add this configuration to your Symfony project under `config/packages/supervisor.yaml`.

To configure programs that you want to run via supervisord, follow these steps:

1. In your Symfony configuration, define all the programs you wish to manage with Supervisor.
2. Use the console command to generate the supervisor.conf file:

```
php bin/console supervisor:generate path/to/supervisor.conf
```

This will generate a flat `supervisor.conf` file that can be directly included in your system's Supervisor configuration. It is recommended to run this command as part of your deployment process to ensure the generated configuration is always up to date.

Here's an example configuration in YAML format:

```
supervisor:
    prefix: '' # Prefix for all program names (optional)
    programs:
        program_name: # Custom unique program name
            command: 'php %kernel.project_dir%/bin/console your_custom_command'
            numprocs: 1 # Number of process instances (optional, default: 1)
            autostart: true # Automatically start the program on Supervisor startup (optional, default: true)
            autorestart: true # Automatically restart the program if it exits or fails (optional, default: true)
            killasgroup: true # Kill the program's process group when stopping (optional, default: true)
            startretries: 10 # Number of retries to start the program in case of failure (optional, default: 3)
            user: 'www-data' # User under which the program should run (optional)
            directory: '/path/to/working/directory' # Working directory of the program (optional)
            stdout_logfile: '/path/to/stdout.log' # File for standard output (optional)
            stderr_logfile: '/path/to/stderr.log' # File for error output (optional)
            environment: KEY1="value1",KEY2="value2" # Environment variable definitions (optional)
            stopsignal: 'TERM' # Signal for program termination (optional)
            stopwaitsecs: 10 # Time limit for program termination (optional)
            priority: 999 # Program priority (optional)
            startsecs: 1 # Defines the duration, in seconds, a program must run after starting to be considered successful (optional)
```

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance47

Moderate activity, may be stable

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~141 days

Recently: every ~170 days

Total

6

Last Release

391d ago

Major Versions

1.2.0 → 2.0.02023-09-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/62ab7f818b246d72b9ffc8426be8de58a55e0ec1243c6e5e77c2c4cd845d7618?d=identicon)[pierotto](/maintainers/pierotto)

---

Top Contributors

[![pierotto](https://avatars.githubusercontent.com/u/46345782?v=4)](https://github.com/pierotto "pierotto (13 commits)")

---

Tags

symfonysupervisor

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/pierotto-supervisor/health.svg)

```
[![Health](https://phpackages.com/badges/pierotto-supervisor/health.svg)](https://phpackages.com/packages/pierotto-supervisor)
```

###  Alternatives

[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[php-flasher/flasher-symfony

Integrate flash notifications into Symfony projects effortlessly with PHPFlasher. Improve user experience and application feedback loops easily.

141.3M20](/packages/php-flasher-flasher-symfony)[cmsig/seal-symfony-bundle

An integration of CMS-IG SEAL search abstraction into Symfony Framework.

15195.8k5](/packages/cmsig-seal-symfony-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
