#!/bin/bash set -euo pipefail sudo mkdir -p /srv/beszel sudo mkdir -p /run/beszel_socket sudo chown -R peon:peon /srv/beszel sudo chown -R peon:peon /run/beszel_socket sudo -u peon -s # https://beszel.dev/guide/getting-started # https://beszel.dev/guide/hub-installation podman run -d \ --name beszel \ --restart=unless-stopped \ -v /srv/beszel:/beszel_data \ -v /run/beszel_socket:/beszel_socket \ -p 8090:8090 \ docker.io/henrygd/beszel # https://beszel.dev/guide/agent-installation read -p "Agent public key: " pub_key podman run -d \ --name beszel-agent \ --userns=keep-id \ --network host \ --restart unless-stopped \ -v $XDG_RUNTIME_DIR/podman/podman.sock:$XDG_RUNTIME_DIR/podman/podman.sock:ro \ -v /run/beszel_socket:/beszel_socket \ -e KEY="$pub_key" \ -e LISTEN=/beszel_socket/beszel.sock \ docker.io/henrygd/beszel-agent:latest mkdir -p "$HOME/.config/systemd/user" cd "$HOME/.config/systemd/user" podman generate systemd --restart-policy=always --new --files --name beszel podman generate systemd --restart-policy=always --new --files --name beszel-agent podman stop beszel podman stop beszel-agent systemctl --user start container-beszel systemctl --user start container-beszel-agent systemctl --user status container-beszel systemctl --user status container-beszel-agent systemctl --user enable container-beszel systemctl --user enable container-beszel-agent