#!/bin/bash # ============================================================ # Gitea (Git 서버) + SMTP (Postfix) 설치 스크립트 # Oracle Cloud Ubuntu 22.04 ARM (Ampere A1) # 실행: bash 10_gitea_smtp_setup.sh [도메인] # ============================================================ set -e DOMAIN=${1:-"$(curl -s ifconfig.me)"} GITEA_DOMAIN="git.${DOMAIN}" GREEN='\033[0;32m'; CYAN='\033[0;36m'; YELLOW='\033[1;33m'; NC='\033[0m' info() { echo -e "${GREEN}[OK]${NC} $1"; } section() { echo -e "\n${CYAN}════════════════════════════════${NC}"; echo -e "${CYAN} $1${NC}"; echo -e "${CYAN}════════════════════════════════${NC}"; } # ──────────────────────────────────────────────── # PART 1: Gitea 설치 # ──────────────────────────────────────────────── section "1. Gitea 사용자 생성" sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' \ --group --disabled-password --home /home/git git 2>/dev/null || true info "git 사용자 준비 완료" section "2. Gitea 바이너리 다운로드 (ARM64)" GITEA_VER="1.22.3" sudo mkdir -p /opt/gitea/bin sudo wget -q "https://dl.gitea.com/gitea/${GITEA_VER}/gitea-${GITEA_VER}-linux-arm64" \ -O /opt/gitea/bin/gitea sudo chmod +x /opt/gitea/bin/gitea sudo ln -sf /opt/gitea/bin/gitea /usr/local/bin/gitea gitea --version info "Gitea ${GITEA_VER} 다운로드 완료" section "3. Gitea 디렉터리 구조" sudo mkdir -p /var/lib/gitea/{custom,data,log} sudo mkdir -p /etc/gitea sudo chown -R git:git /var/lib/gitea /etc/gitea sudo chmod -R 750 /var/lib/gitea /etc/gitea info "Gitea 디렉터리 생성 완료" section "4. Gitea PostgreSQL DB 생성" sudo -u postgres psql </dev/null || true CREATE USER gitea WITH PASSWORD 'G1tea_2026!'; CREATE DATABASE gitea_db OWNER gitea; GRANT ALL PRIVILEGES ON DATABASE gitea_db TO gitea; PSQL info "Gitea DB 생성 완료" section "5. Gitea 설정 파일 생성" sudo tee /etc/gitea/app.ini > /dev/null < /dev/null < /dev/null < /dev/null < /dev/null <