This commit is contained in:
2025-11-11 12:14:13 +01:00
parent 73e227ee46
commit 484b8e47a6
2 changed files with 62 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
services:
gitea:
image: gitea/gitea:latest
container_name: gitea
restart: unless-stopped
ports:
- "3000:3000"
- "2222:22" # SSH port, host port can be changed if 22 is in use
volumes:
- gitea_data:/data
volumes:
gitea_data:

View File

@@ -0,0 +1,50 @@
#!/usr/bin/env bash
set -euo pipefail
if ask_to_install "Gitea Server"; then
echo "=== GITEA SERVER INSTALLATION ==="
ensure_root
detect_pkg_manager
install_docker
$SUDO mkdir -p /srv/docker/gitea
cd /srv/docker/gitea
# Funktion, die den nächsten freien Port sucht
find_free_port() {
local START_PORT=$1
PORT=$START_PORT
while ss -lnt | awk '{print $4}' | grep -q ":$PORT$"; do
PORT=$((PORT + 1))
done
echo "$PORT"
}
FREE_HTTP_PORT=$(find_free_port 3000)
echo "✅ Freier HTTP-Port gefunden: $FREE_HTTP_PORT"
FREE_SSH_PORT=$(find_free_port 2222)
echo "✅ Freier SSH-Port gefunden: $FREE_SSH_PORT"
$SUDO tee docker-compose.yml >/dev/null <<EOF
services:
gitea:
image: gitea/gitea:latest
container_name: gitea-$FREE_HTTP_PORT
restart: unless-stopped
ports:
- "$FREE_HTTP_PORT:3000"
- "$FREE_SSH_PORT:22"
volumes:
- gitea_data:/data
volumes:
gitea_data:
EOF
$SUDO docker compose up -d
echo "Gitea Server läuft auf HTTP-Port $FREE_HTTP_PORT und SSH-Port $FREE_SSH_PORT"
echo "✅ Fertig! URL: http://<server-ip>:$FREE_HTTP_PORT"
else
log "${YELLOW}⏭ Gitea Server übersprungen.${NC}"
fi