This repository provides a simple way to deploy Beszel, a lightweight and open-source monitoring tool, on a Dokku host.
Dokku acts as a mini-PaaS on top of Docker, making deployment and management straightforward.
Note: This project is a wrapper that adds an extra deployment layer on top of Beszel, primarily created as a hobby/tinkering project. You can also deploy Beszel directly using the official Docker image via dokku git:sync.
This project is not affiliated with Beszel.
# Create the app
dokku apps:create beszel
# Setup persistent storage
dokku storage:ensure-directory beszel_data
dokku storage:mount beszel /var/lib/dokku/data/storage/beszel_data:/beszel_data
# Set domain
dokku domains:set beszel beszel.example.com
# Map internal port 8090 to external port 3022 (adjust as needed)
dokku ports:set beszel http:3022:8090
dokku ports:set beszel https:3022:8090
# Deploy via git:sync
dokku git:sync --build beszel https://github.com/chilian/beszel_on_dokku.gitAccess your instance at: 👉 http://beszel.example.com:3022
Before proceeding, ensure you have the following:
- A working Dokku host
- (Optional) The Let's Encrypt plugin for HTTPS
dokku git:sync --build beszel https://github.com/chilian/beszel_on_dokku.git# Clone this repository
git clone https://github.com/chilian/beszel_on_dokku.git
cd beszel_on_dokku
# Add your Dokku server as remote
git remote add dokku [email protected]:beszel
# Push to deploy
git push dokku main# Add HTTPS port
dokku ports:add beszel https:443:8090
# Install Let's Encrypt plugin
dokku plugin:install https://github.com/dokku/dokku-letsencrypt.git
# Set contact email
dokku letsencrypt:set beszel email [email protected]
# Enable SSL
dokku letsencrypt:enable beszelTo upgrade to the latest Beszel version with git:sync:
dokku git:sync --build beszel https://github.com/chilian/beszel_on_dokku.gitThis will rebuild and restart your container with the latest version. Persistent data in /beszel_data will be preserved.
Your Beszel instance should now be running on your Dokku host 🎉 Happy monitoring!