Envault is a tool to share .env secrets.
It lets you manage and sync your entire team’s local .env files, across all your projects, so you’re all kept up to date with the latest changes.
Simply install Envault onto your own web server and you're ready to sync all your projects.
- PHP 7.4 or higher
- HTTP server with PHP support (e.g.: Apache, Nginx, Caddy)
- A database
- A mail provider
Envault is built on the Laravel PHP framework. This makes installation very simple.
- Clone this repository onto your server.
- Copy the
- Generate a new
php artisan key:generatein the terminal.
- Ensure that the
.envmatches the address of your Envault server.
- Create a new database. For more details on the databases supported, please refer to the Laravel documentation. Fill out any appropriate connection details in your
php artisan migrateto prepare your database.
- Configure outgoing mail from your Envault server. For more details on the mail drivers supported, please refer to the Laravel documentation. Fill out any appropriate connection details in your
- Set up a scheduled task to run
php artisan schedule:runevery minute. For more details, please refer to the Laravel documentation.
- Visit your Envault server URL and setup your owner account.
After you update Envault from this repository, please run the following commands on your server. If you're using a platform like Laravel Forge, these can be added to your deploy script:
composer install php artisan migrate php artisan view:cache php artisan queue:restart
- Creating a new app
- Creating a new variable
- Syncing to your local .env
- Update a variable
- Importing variables from .env format
- Rolling back a variable to a previous version
- Managing Slack notifications
- Update an app
Users and Permissions
- Creating a new user
- Managing a user's permissions
- Managing an app's collaborators
- Updating a user's details
- Multiple environments per app.
- Granular user permissions system.
- Bidirectional syncing.
- Docker image.