Upload files to "/"
This commit is contained in:
54
setup.sh
Normal file
54
setup.sh
Normal file
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
ENV_FILE="$SCRIPT_DIR/.env"
|
||||
|
||||
if [ -f "$ENV_FILE" ]; then
|
||||
set -a
|
||||
# shellcheck disable=SC1090
|
||||
. "$ENV_FILE"
|
||||
set +a
|
||||
fi
|
||||
|
||||
: "${GITEA_UID:=1000}"
|
||||
: "${GITEA_GID:=1000}"
|
||||
: "${GITEA_DATA_DIR:=./data}"
|
||||
: "${GITEA_CONFIG_DIR:=./config}"
|
||||
: "${NGINX_CONFIG_DIR:=./nginx}"
|
||||
|
||||
resolve_path() {
|
||||
case "$1" in
|
||||
/*) printf '%s\n' "$1" ;;
|
||||
*) printf '%s/%s\n' "$SCRIPT_DIR" "$1" ;;
|
||||
esac
|
||||
}
|
||||
|
||||
DATA_DIR="$(resolve_path "$GITEA_DATA_DIR")"
|
||||
CONFIG_DIR="$(resolve_path "$GITEA_CONFIG_DIR")"
|
||||
NGINX_DIR="$(resolve_path "$NGINX_CONFIG_DIR")"
|
||||
|
||||
mkdir -p "$DATA_DIR" "$CONFIG_DIR" "$NGINX_DIR"
|
||||
|
||||
chown_cmd=(chown -R "${GITEA_UID}:${GITEA_GID}" "$DATA_DIR" "$CONFIG_DIR")
|
||||
if [ "$(id -u)" -ne 0 ]; then
|
||||
if command -v sudo >/dev/null 2>&1; then
|
||||
sudo "${chown_cmd[@]}"
|
||||
else
|
||||
echo "Need ownership change to ${GITEA_UID}:${GITEA_GID}; re-run as root or with sudo" >&2
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
"${chown_cmd[@]}"
|
||||
fi
|
||||
|
||||
if docker compose version >/dev/null 2>&1; then
|
||||
COMPOSE_CMD=(docker compose)
|
||||
elif command -v docker-compose >/dev/null 2>&1; then
|
||||
COMPOSE_CMD=(docker-compose)
|
||||
else
|
||||
echo "docker compose not found" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
(cd "$SCRIPT_DIR" && "${COMPOSE_CMD[@]}" up -d)
|
||||
Reference in New Issue
Block a user