Files

44 lines
935 B
Bash
Executable File

#!/usr/bin/env sh
set -eu
compose_file="${MAGENT_COMPOSE_FILE:-compose.yml}"
project_name="${MAGENT_PROJECT_NAME:-magent}"
usage() {
echo "Usage: ./setup.sh check|install|status|token|logs"
echo "Run this script from a directory containing the public compose.yml."
}
compose() {
docker compose -f "$compose_file" -p "$project_name" "$@"
}
case "${1:-}" in
check)
docker version >/dev/null
docker compose version >/dev/null
compose config --quiet
echo "Docker and compose.yml are ready."
;;
install)
compose config --quiet
compose pull
compose up -d --wait --wait-timeout 120
compose ps
echo "Open http://SERVER_IP:3000/setup, then run: ./setup.sh token"
;;
status)
compose ps
;;
token)
compose exec --user magent magent python -m app.container_bootstrap setup-token
;;
logs)
compose logs --tail=150 magent
;;
*)
usage
exit 2
;;
esac