Files
caddy/scripts/autorun.sh

42 lines
1.1 KiB
Bash

#!/bin/bash
set -e
# Idempotent Caddy installation
install_caddy() {
if command -v caddy &>/dev/null; then
echo "caddy already installed: $(caddy version)"
return 0
fi
echo "Installing Caddy..."
# Install dependencies
apt-get update
apt-get install -y debian-keyring debian-archive-keyring apt-transport-https curl
# Add Caddy GPG key and repository
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
# Install Caddy
apt-get update
apt-get install -y caddy
echo "Caddy installed: $(caddy version)"
}
# Create data directory and snippets folder
setup_dirs() {
local data_dir="${CADDY_DATA_DIR:-/data/caddy}"
local skill_dir="$(dirname "$(dirname "$0")")"
mkdir -p "$data_dir"
mkdir -p "$skill_dir/snippets.d"
echo "Caddy data directory: $data_dir"
echo "Caddy snippets directory: $skill_dir/snippets.d"
}
install_caddy
setup_dirs