44 lines
935 B
Bash
Executable File
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
|