Webhook.site Open Source¶
About the Open Source version¶
There are two separate editions of Webhook.site:
-
The code for the completely open-source, MIT-licensed version described on this page is available on https://github.com/webhooksite/webhook.site, and can be self-hosted using e.g. Docker, is great for testing Webhooks, but doesn't include Webhook.site Pro features like Custom Actions.
-
The cloud version of Webhook.site at https://webhook.site which has more features, some of them requiring a paid subscription.
You can choose to run the Open Source version of Webhook.site either via Docker, or install it on any Web server with PHP7 support.
Realtime updates¶
laravel-echo-server or Pusher can be used to enable realtime updates. Take a look at the .env.example
to see the environment variables required to configure it.
For laravel-echo-server
, the app expects socket.io to be available at the /socket.io
path relative to the index page. This can be done with nginx like so:
location /socket.io {
proxy_pass http://127.0.0.1:6001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
Installation¶
Docker (Recommended)¶
The provided Docker Compose file sets up a complete environment that runs the Webhook.site image and all dependencies (Redis, Laravel Echo Server, etc.). Note that if running this in production, you should probably run a Redis server that persists data to disk. The Docker image is also not tuned for large amounts of traffic.
Installation Guide¶
- Run
docker-compose up
- The app will be available on http://127.0.0.1:8084.
Kubernetes¶
A set of Helm configuration files can be found in the helm
subfolder.
Web Server¶
Requirements¶
- PHP 7
- Redis
- Composer
- Web server – e.g. nginx, apache2
DigitalOcean has a guide on how to configure nginx.
Installation Guide¶
- Run the following commands:
composer install
cp .env.example .env
- adjust settings as neededphp artisan key:generate
- Setup virtual host pointing to the
/public
folder.