Hər şey sərhədin içində qalır: kod, panel, tapıntılar.
Tənzimlənən sektorlar və qapalı şəbəkələr üçün: panel, analiz və verilənlər bazası öz serverlərinizdə işləyir. Çölə yalnız iki qapı açılır: imaj deposu və lisenziya faylı; internetə qapalı (air-gapped) quraşdırmada ikisi də içəri əl ilə daşına bilər.
Bir məhsul, bir buraxılış xətti
Hər quraşdırma eyni imicləri işlədir, tək teq ilə versiyalanır. Nə çəngəl, nə də geridə qalan buraxılış.
Bütün modullar daxildir
ArchPilot-dan Archito-ya bütün modullar serverlərinizdə işləyir. Hər funksiya hər quraşdırmaya eyni imiclərlə çatır.
İdarəetmə paneli daxildir
Quraşdırmanın öz idarəetmə sahəsi var: lisenziya, istifadəçilər və e-poçt bir yerdə; ilk açılışda sehrbaz sizi quraşdırmadan keçirir.
Kimlik və süni intellekt
Google və ya GitHub ilə giriş yoxdur: kimlik perimetrinizdə qalır, e-poçt və parol və ya LDAP / Active Directory ilə. AI funksiyaları isteğe bağlıdır və yalnız onlar operatorun seçdiyi təchizatçıya internet tələb edir.
Quraşdırmada nə işləyir?
İstinad quraşdırması bir serverdə dörd konteynerdir. Analiz isə həmin serverdə deyil, CI işlərinizin içində işləyir.
| Komponent | Vəzifəsi | Kim çatır |
|---|---|---|
| Panel (app-ui) | İstifadəçilərinizin açdığı veb interfeys. Hər sorğunu istifadəçinin öz kimliyi ilə API-yə ötürür. | Brauzerlər; standart port 8080 |
| API (api) | Analiz hesabatlarını qəbul edir, balları hesablayır, Git sinxronlaşdırması və hesabatlar kimi planlı işləri icra edir. Verilənlər bazasına yalnız o qoşulur. | Panel və CI runner-ləriniz; standart port 5000 |
| PostgreSQL 16 | Tapıntılar, hesabatlar, istifadəçilər və idarəetmə ayarları. | Yalnız API |
| Redis 7 | Sessiyalar, keş və nüsxələrin paylaşdığı sessiya açarları. | Panel və API |
| Analiz imicləri (collector) | CI işinizdə kodu tarayır və hesabatı öz API-nizə göndərir. Doqquz dilin hər biri üçün ayrıca imic. | CI işləriniz; serverdə daimi heç nə işləmir |
TLS-i qarşısındakı əks proksi (nginx, traefik) və ya ingress təmin edir. Brauzerlərə yalnız panel portu, CI runner-lərinə yalnız API portu lazımdır.
Quraşdırma üç addımdır
Kubernetes məcburi deyil; Docker compose yetər. Bələdçi ekran şəkilləri ilə docs.apparch.io-dadır.
- 01
Lisenziya + quraşdırma açarı
Satış komandası quraşdırma kimliyinizi və açarınızı göndərir; açar yalnız bir dəfə ötürülür. İlk açılışda quraşdırma lisenziyasını onlayn alır. İnternetə qapalı quraşdırmada quraşdırma sehrbazının göstərdiyi quraşdırma kodunu göndərirsiniz və ona bağlı .lic faylı alırsınız.
- 02
İmajları çəkin
docker login hub.apparch.io: quraşdırma kimliyi istifadəçi adı, açar paroldur. İnternetə qapalı (air-gapped) şəbəkədə imajlar bir dəfə çöldə çəkilib içəri daşınır.
- 03
compose up + sehrbaz
Compose faylı paneli, analizi və baza miqrasiyalarını qaldırır; ilk açılışda quraşdırma sehrbazı admin hesabını və lisenziyanı bağlayır.
Tələb: Docker Engine 24+ və compose plagini. Vəssalam.
İnternetə qapalı şəbəkədə quraşdırma
Nə quraşdırma, nə də iş zamanı şəbəkənizdən kənara bağlantı lazım deyil. Çöl ilə yeganə mübadilə əl ilə daşınan iki fayldır.
- 01
İmicləri içəri gətirin
Panel və API imicləri tək arxiv faylı kimi təqdim olunur; onu serverə daşıyıb docker load ilə yükləyirsiniz. Analiz imiclərini öz daxili registry-nizə qoyursunuz, CI işləriniz onları oradan çəkir.
- 02
Sirləri serverdə yaradın
gen-secrets.sh verilənlər bazası və Redis parollarını, sessiya imza açarını və şifrələmə əsas açarını serverin özündə təsadüfi yaradır. Heç biri bizə çatmır, heç biri imiclərdə yoxdur.
- 03
Quraşdırma kodunu göndərin
Xidmətləri işə salın və quraşdırma sehrbazının lisenziya addımında görünən quraşdırma kodunu AppArch-a göndərin. Gələn .lic faylı yalnız bu quraşdırmaya bağlıdır; onu ./license/apparch.lic yoluna qoyur və ya sehrbaza yapışdırırsınız.
- 04
Çölə sorğu getmir
Satıcı və yeniləmə ünvanlarını boş buraxın: lisenziya lokal yoxlanılır, versiya yoxlanışı edilmir, şəbəkədən heç bir sorğu çıxmır. Yeni versiyalar da fayl kimi gəlir.
İdarəsi sadə, vəziyyəti görünən
Quraşdırmadan sonra komandanızın bilməli olduqları dörd başlıqda.
Sağlamlıq ucları
/health/live prosesin işlədiyini, /health/ready verilənlər bazası və Redis-in cavab verdiyini (paneldə: API-nin) bildirir. Compose onları konteyner sağlamlıq yoxlaması kimi istifadə edir; Kubernetes-də liveness və readiness yoxlamalarına bağlanır.
Yeniləmə
.env-dəki imic versiyasını dəyişin, sonra docker compose pull və up. Gözləyən verilənlər bazası miqrasiyaları açılışda, neçə versiya atlanmasından asılı olmayaraq ardıcıl tətbiq olunur. Miqrasiyalar yalnız irəli gedir; əvvəlcə pg_dump ilə ehtiyat nüsxə alın.
Özünü izah edən açılış
API açılışı addım-addım jurnala yazır: verilənlər bazası, miqrasiyalar, istinad məlumatları, lisenziya. Bir addım uğursuz olarsa, xəta sətri harada dayandığını deyir; bağlantı xətasında host və port görünür, kimlik məlumatları heç vaxt.
Birdən çox nüsxə
Eyni PostgreSQL və Redis-i paylaşan nüsxələr bir quraşdırmadır: miqrasiyalar verilənlər bazası kilidi altında bir dəfə işləyir, planlı işlər klasterli planlayıcı ilə bir nüsxədə işə düşür, sessiyalar Redis vasitəsilə paylaşılır.
Təhlükəsizlik, standart olaraq
Quraşdırma ilə gələn və əlavə konfiqurasiya tələb etməyən tədbirlər.
- Sirlər sizdədir. Parollar və açarlar quraşdırma zamanı serverinizdə yaradılır; imiclərdə yalnız gizli olmayan standart dəyərlər var.
- Git kimlik məlumatları şifrəlidir. Qoşduğunuz təchizatçıların giriş tokenləri verilənlər bazasında quraşdırmanızın əsas açarı ilə AES-GCM istifadə olunaraq şifrələnir.
- Shell-siz, root olmayan imiclər. Konteynerlər yalnız .NET icra mühitini daşıyır, shell daxil etmir və imtiyazsız istifadəçi ilə işləyir.
- Dəyişdirilə bilməyən lisenziya. Lisenziya imiclərin içindəki AppArch imza açarı ilə yoxlanılır; faylı əl ilə redaktə etmək imzanı pozur.
- Giriş şəbəkənizdə qalır. E-poçt və parol (istəyə bağlı iki addımlı doğrulama ilə) və ya LDAP / Active Directory. Google və ya GitHub ilə giriş yoxdur.
Lisenziya necə davranır?
Gözlənilməz sönmə yox: hədlər bəllidir, aşımın da qaydası var.
İmzalı fayl, oflayn doğrulama
Lisenziya RS256 ilə imzalı .lic faylıdır; quraşdırma onu lokal doğrulayır və bir lisenziya yalnız bir quraşdırmada işləyir. İşləmək üçün lisenziya serverinə zəng etmir. Eyni verilənlər bazasını paylaşan bir neçə pod bir quraşdırma sayılır.
Təqvim ayı sayğacları
İstifadə hədləri təqvim ayına görə sayılır və hər ayın əvvəlində sıfırlanır - sürüşən pəncərə sürprizi yoxdur.
Əvvəl yumşaq, sonra sərt hədd
Həddi aşmaq işi dayandırmır: yeddi gün və 10% tolere edilir, panel xəbərdarlıq edir. Sərt dayanma yalnız bu bufer bitəndə gəlir.
Tez-tez soruşulanlar
Yeniləmələri necə alıram?
Hansı kimlik doğrulama seçimləri var?
Tam air-gap-də nə işləyir, nə işləmir?
Məlumatları kim görür?
Qiymətləndirmə necə işləyir?
Kubernetes-də işləyirmi?
Nəyin ehtiyat nüsxəsini almalıyam?
Serveri dəyişsəm lisenziyaya nə olur?
Sərhədinizin içində sınayın
Quraşdırma kimliyinizi istəyin; compose faylı ilə bir günortadan sonra ayaqda olursunuz.