שרת Git מתארח עצמאית: פריסת Forgejo/Gitea עם CI/CD ו-LDAP

GitLab CE צורך משאבי שרת גם עבור צוות קטן, וההתקנה והתחזוקה שלו גוזלות זמן. אנחנו פורסים שרת Git עצמאי וקל משקל על Forgejo או Gitea עם CI/CD ו-LDAP. הצוות שלנו מספק את הפרויקט במפתח מלא—החל מהעברת מאגרים ועד הגדרת pipelines ותמיכה שוטפת, תוך הבטחת פעילות יציבה ללא פספוס מועדים.

היכולות שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1359
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1330
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    776
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1077
  • פיתוח לוגו חברת AIDER
    פיתוח לוגו חברת AIDER
    1022
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1113

שרת Git באירוח עצמי: Forgejo/Gitea, CI/CD, LDAP והעברה

אם אתם משתמשים ב-GitLab CE עבור צוות של 10–15 מפתחים, אתם יודעים כמה הוא צורך משאבים: לפחות 4 GB RAM כדי להתחיל, ובסביבת ייצור 8–16 GB בנוסף ל-Postgres, Redis ו-Sidekiq נפרדים. עבור פרויקטים קטנים זה מוגזם ויקר. אנו מציעים חלופה קלת משקל — Forgejo או Gitea. קובץ בינארי אחד, 1 GB RAM, 50 MB דיסק — ומקבלים שרת git מלא עם ממשק אינטרנט, מערכת מעקב אחר בעיות, ועכשיו גם CI מובנה דרך Forgejo Actions. הצוות שלנו פרס למעלה מ-50 התקנות כאלה עבור פינטק, מסחר אלקטרוני ו-SaaS במהלך השנים. לא הייתה אף תקלה שנגרמה על ידי הפלטפורמה. בניגוד ל-GitLab, Forgejo אינו דורש שרת ייעודי — VPS עם 1 GB RAM מספיק. החיסכון בשרתי ענן הוא פי 3–5, מה שמפחית עלויות חודשיות מ-$500 ל-$150.

אילו בעיות Forgejo פותר?

Forgejo פותר שלוש בעיות עיקריות: משאבים, מורכבות ו-CI/CD. בואו נבחן כל אחת:

  • משאבים: GitLab CE צורך עד 8 GB RAM אפילו עם 10 משתמשים. Forgejo רץ על 1 GB ללא ירידה בביצועים, ומפחית עלויות שרתי ענן פי 3–5.
  • מורכבות: GitLab דורש Postgres, Redis ו-Sidekiq נפרדים. Forgejo הוא קובץ בינארי אחד או Docker Compose עם שני קונטיינרים (אפליקציה + DB).
  • CI/CD: GitLab CI דורש GitLab Runner. Forgejo Actions משתמש בתחביר של GitHub Actions ואינו דורש שירותים חיצוניים.

למה Forgejo משתלם יותר מ-GitLab?

השוואת משאבים:

פרמטר Forgejo GitLab CE
RAM מינימלי 1 GB 4 GB
RAM מומלץ (50 משתמשים) 2 GB 8 GB
דיסק 50 MB 1 GB+
תלותים Postgres Postgres, Redis, Sidekiq
זמן פריסה 30 דקות 2–4 שעות

Forgejo הוא פיצול של Gitea שנוצר לאחר סכסוך קהילתי. טכנית הם תואמים: תצורות ו-API מועברים ללא שינוי. Forgejo מקבל תיקונים 30% מהר יותר (לפי נתוני OpenHUB). לפרויקטים חדשים אנו ממליצים על Forgejo.

אפשרויות פריסה

שיטה מורכבות זמן גמישות
Docker Compose נמוכה 30 דקות בינונית
קובץ בינארי בינונית שעה גבוהה
Helm chart (Kubernetes) גבוהה שעתיים מקסימלית

איך להקים Forgejo עם CI/CD בשעה?

  1. פריסה דרך Docker Compose – צרו docker-compose.yml:

    ---
    version: "3"
    services:
      forgejo:
        image: codeberg.org/forgejo/forgejo:8
        container_name: forgejo
        environment:
          - USER_UID=1000
          - USER_GID=1000
          - FORGEJO__database__DB_TYPE=postgres
          - FORGEJO__database__HOST=db:5432
          - FORGEJO__database__NAME=forgejo
          - FORGEJO__database__USER=forgejo
          - FORGEJO__database__PASSWD=secret
        volumes:
          - ./data:/data
        ports:
          - "3000:3000"
          - "222:22"
        restart: unless-stopped
      db:
        image: postgres:16
        environment:
          - POSTGRES_USER=forgejo
          - POSTGRES_PASSWORD=secret
          - POSTGRES_DB=forgejo
        volumes:
          - ./postgres:/var/lib/postgresql/data
    

    הריצו: version: "3" services: forgejo: image: codeberg.org/forgejo/forgejo:8 container_name: forgejo environment: - USER_UID=1000 - USER_GID=1000 - FORGEJO__database__DB_TYPE=postgres - FORGEJO__database__HOST=db:5432 - FORGEJO__database__NAME=forgejo - FORGEJO__database__USER=forgejo - FORGEJO__database__PASSWD=secret volumes: - ./data:/data ports: - "3000:3000" - "222:22" restart: unless-stopped db: image: postgres:16 environment: - POSTGRES_USER=forgejo - POSTGRES_PASSWORD=secret - POSTGRES_DB=forgejo volumes: - ./postgres:/var/lib/postgresql/data .

    הגדירו דרך ממשק האינטרנט – קבעו דומיין, אימייל, השבתת הרשמה. פרמטרים מרכזיים ב-docker-compose up -d:

    [server]
    DOMAIN = git.company.com
    ROOT_URL = https://git.company.com/
    SSH_DOMAIN = git.company.com
    SSH_PORT = 22
    DISABLE_SSH = false
    
    [service]
    DISABLE_REGISTRATION = true
    REQUIRE_SIGNIN_VIEW = true
    REGISTER_EMAIL_CONFIRM = true

    /data/gitea/conf/app.ini הוא חובה עבור צוות סגור. הגדירו Forgejo Actions – הוסיפו קובץ workflow [server] DOMAIN = git.company.com ROOT_URL = https://git.company.com/ SSH_DOMAIN = git.company.com SSH_PORT = 22 DISABLE_SSH = false [service] DISABLE_REGISTRATION = true REQUIRE_SIGNIN_VIEW = true REGISTER_EMAIL_CONFIRM = true :

    on: [push] jobs: test: runs-on: docker steps: - uses: actions/checkout@v4 - name: Run tests run: go test ./... 

    רשמו act runner:

    act_runner register \
      --instance https://git.company.com \
      --token <runner_token> \
      --name my-runner \
      --labels docker:docker://node:20-bookworm

    ה-Runner מבצע משימות בקונטיינרים מבודדים של Docker. כל התהליך אורך 30–60 דקות.

    דוגמה לתצורת ייצור

    לסביבת ייצור, אנו ממליצים להוסיף שכפול מסד נתונים וחידוש אוטומטי של תעודות SSL דרך Let's Encrypt. השתמשו ב-Postgres חיצוני עם שכפול וגיבויים קבועים של המאגרים. כמו כן, הגדירו ניטור עם Prometheus והתראות ב-Slack.

    איך להעביר מאגרים מ-GitHub או GitLab?

    Forgejo תומך בייבוא עם בעיות, pull requests, אבני דרך ו-wiki intact. להעברה בכמות גדולה השתמשו ב-API:

    for repo in $(gh repo list myorg --json name -q '.[].name'); do
      curl -X POST https://git.company.com/api/v1/repos/migrate \
        -H "Authorization: token $FORGEJO_TOKEN" \
        -H "Content-Type: application/json" \
        -d "{\"clone_addr\":\"https://github.com/myorg/$repo\",\"repo_name\":\"$repo\",\"mirror\":false,\"private\":true}"
    done

    אוטומציה של העברת 50 מאגרים אורכת לא יותר מ-2–3 ימים.

    מה כלול

    • התקנה והגדרה של Forgejo (או Gitea) עם HTTPS ו-LDAP.
    • אינטגרציה עם LDAP/SSO (Active Directory, OpenLDAP, Keycloak).
    • הגדרת Forgejo Actions ורישום act runner.
    • העברת מאגרים מ-GitHub, GitLab, Bitbucket עם שמירת היסטוריה.
    • תיעוד והדרכת צוות.
    • חודש של תמיכה באחריות.

    מהנדסי ה-DevOps שלנו מחזיקים בהסמכות CKA ויש להם ניסיון של 5+ שנים ב-Kubernetes ו-GitOps. השלמנו למעלה מ-50 פרויקטים של העברת והגדרת שרתי Git עבור פינטק ומסחר אלקטרוני.

    לוחות זמנים משוערים

    • התקנת Forgejo/Gitea בסיסית עם HTTPS ו-LDAP – מ-4 עד 8 שעות.
    • הוספת Forgejo Actions והעברה – מיום עד 3 ימים.
    • פרויקט מלא כולל הכל – מ-3 עד 5 ימים.

    העלות מחושבת באופן אישי לאחר ביקורת של התשתית שלכם. הזמינו פריסת Forgejo מלאה עם CI/CD ו-LDAP — קבלו שרת git מוכן תוך 4 שעות. צרו קשר לביקורת תשתית. קבלו ייעוץ ממהנדס DevOps להגדרת Forgejo.

    Forgejo היא פלטפורמת ניהול מאגרי git בקוד פתוח.