77 lines
2.0 KiB
Bash
Executable File
77 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
COMPOSE_FILE="${ROOT_DIR}/docker-compose.openhands-colima.yml"
|
|
|
|
export OPENHANDS_WORKSPACE="${OPENHANDS_WORKSPACE:-${ROOT_DIR}}"
|
|
export OPENHANDS_DOCKER_SOCK="${OPENHANDS_DOCKER_SOCK:-/Users/john/.colima/default/docker.sock}"
|
|
export OPENHANDS_CONFIG_DIR="${OPENHANDS_CONFIG_DIR:-/Users/john/.openhands}"
|
|
export OPENHANDS_PORT="${OPENHANDS_PORT:-3000}"
|
|
export OPENHANDS_SANDBOX_UID="${OPENHANDS_SANDBOX_UID:-$(id -u)}"
|
|
export OPENHANDS_DB_NAME="${OPENHANDS_DB_NAME:-openhands}"
|
|
export OPENHANDS_DB_USER="${OPENHANDS_DB_USER:-openhands}"
|
|
export OPENHANDS_DB_PASS="${OPENHANDS_DB_PASS:-openhands_dev_password}"
|
|
|
|
if ! command -v docker >/dev/null 2>&1; then
|
|
echo "docker not found in PATH" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -S "${OPENHANDS_DOCKER_SOCK}" ]; then
|
|
echo "docker socket not found: ${OPENHANDS_DOCKER_SOCK}" >&2
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "${OPENHANDS_CONFIG_DIR}"
|
|
|
|
usage() {
|
|
cat <<EOF
|
|
Usage: scripts/openhands-colima.sh <pull|up|down|restart|logs|status>
|
|
|
|
Environment:
|
|
OPENHANDS_WORKSPACE Workspace mounted into /workspace
|
|
OPENHANDS_DOCKER_SOCK Docker socket mounted into the service container
|
|
OPENHANDS_CONFIG_DIR Legacy host config directory (kept for CLI wrappers)
|
|
OPENHANDS_PORT Host port published for the GUI server
|
|
OPENHANDS_DB_NAME Postgres database name for OpenHands
|
|
OPENHANDS_DB_USER Postgres user for OpenHands
|
|
OPENHANDS_DB_PASS Postgres password for OpenHands
|
|
EOF
|
|
}
|
|
|
|
cmd="${1:-status}"
|
|
shift || true
|
|
|
|
compose() {
|
|
docker compose -f "${COMPOSE_FILE}" "$@"
|
|
}
|
|
|
|
case "${cmd}" in
|
|
build)
|
|
compose build openhands
|
|
;;
|
|
pull)
|
|
compose pull postgres
|
|
;;
|
|
up)
|
|
compose up -d postgres openhands
|
|
;;
|
|
down)
|
|
compose down
|
|
;;
|
|
restart)
|
|
compose up -d --force-recreate postgres openhands
|
|
;;
|
|
logs)
|
|
compose logs -f --tail=200 postgres openhands
|
|
;;
|
|
status)
|
|
compose ps
|
|
;;
|
|
*)
|
|
usage
|
|
exit 1
|
|
;;
|
|
esac
|