JJourney AI

Kurulum

API, yönetim paneli ve site şablonunu yerelde kurma, ayarlama ve birbirine bağlama.

Son güncelleme: 27 Ekim 20267 dk okuma

Bu sayfada Journey AI'ın üç parçasını kendi bilgisayarında nasıl kuracağını, her birini nasıl ayarlayacağını ve birbirine nasıl bağlayacağını öğreneceksin.

ParçaDepoTeknolojiYerel adres
APIsameup-cms.NET 10, EF Core, SQL Serverhttp://localhost:5235
Yönetim panelijourney-v2React 19, Vite, npmhttp://localhost:5173
Site şablonuCms-Landing-CoreNext.js 16, pnpmhttp://localhost:3000

Kurulum sırası önemlidir: önce API, sonra panel, en son site. Panel ve site API'den okur; API çalışmadan ikisi de açılmaz.

Ön koşullar

AraçSürümHangi parça için
.NET SDK10.0.400 veya üstü (global.json)API
SQL ServerErişebildiğin herhangi bir SQL ServerAPI
DockerGüncel sürümAPI'nin yardımcı servisleri (dosya deposu, isteğe bağlı Redis)
Node.js24 veya üstüPanel
Node.js22 veya üstüSite şablonu
pnpmGüncel sürümSite şablonu (npm ve yarn engellenir)

SQL Server'ı sen sağlarsın

Depolardaki Docker dosyalarında SQL Server servisi yoktur. Yerel bir SQL Server kur ya da bir konteynerde çalıştır; API yalnızca bağlantı dizesini bekler.

1. API

Depoyu klonla ve derle

Terminal
git clone <sameup-cms> && cd sameup-cms
dotnet build

Çözüm dosyası sameup-cms.slnx'tir. Çalışan proje SameUp.CMS.API, veritabanı katmanı SameUp.CMS.Data'dır.

Yardımcı servisleri başlat

API dosyaları bir nesne deposunda tutar. Yerelde bunun için docker-compose.local.yml içindeki MinIO servisini kullan:

Terminal
export MINIO_ACCESS_KEY=<erişim-anahtarı> MINIO_SECRET_KEY=<gizli-anahtar>
docker compose -f docker-compose.local.yml up -d minio redis
ServisPortGerekli mi
minio9000, yönetim ekranı 9001Evet (ya da AWS S3 / Azure Blob)
redis6379Hayır; kapalıysa API bellek içi önbellek kullanır
kafka, kafka-ui9092, 8081Hayır; yalnızca log gönderimi için

MinIO yönetim ekranında (http://localhost:9001) API'nin kullanacağı kovayı (bucket) oluştur.

Ayarları gir

API ayarları SameUp.CMS.API/appsettings.json dosyasından ve ortam değişkenlerinden okunur. Ortam değişkenlerinde bölüm ayracı olarak __ kullan: ConnectionStrings:SqlConnection → ConnectionStrings__SqlConnection.

Zorunlu ayarlar:

AnahtarNe işe yarar
ConnectionStrings:SqlConnectionSQL Server bağlantı dizesi. Veritabanı yoksa ilk açılışta oluşturulur.
Documents:ActiveFileServerDosya deposu: MinIO, AWS ya da AzureBlobStorage. Başka bir değerle API açılmaz.
Documents:FileServers:MinIO:*Seçtiğin deponun ayarları: AccessKey, SecretKey, BucketName, Host, UseSSL, CDNUrl vb. AWS ve Azure için aynı yolda kendi blokları vardır.
Jwt:KeyOturum belirteçlerini imzalayan gizli anahtar. Her kurulumda kendine özgü, uzun ve rastgele bir değer ver. Jwt:Issuer ve Jwt:Audience da kuruluma göre ayarlanır.
OriginsPanelin adresi gibi, tarayıcıdan API'ye istek atmasına izin verilen adresler (CORS): Origins__0=http://localhost:5173. Boşsa panel API'ye bağlanamaz.
Operational:TokenBakım uçları için gizli anahtar. İlk yönetici kullanıcıyı oluşturmak için gerekir; boşsa bu uçlar kapalıdır.

Sık kullanılan isteğe bağlı ayarlar:

AnahtarNe işe yarar
Redis:Enabled, Redis:ConnectionStringRedis önbelleği.
Kafka:LoggingEnabledLogları Kafka'ya gönderir. Yerelde Kafka çalıştırmıyorsan false yap.
Auth:LocalLoginEnabledE-posta ve şifreyle giriş (varsayılan açık).
Auth:Sso:*Kurumsal SSO girişi. Yerel giriş kapalıysa SSO ayarlanmış olmalıdır; yoksa API açılmaz.
Admin:Cookie:*Panelin oturum çerezinin Domain, Secure ve SameSiteMode ayarları.
UseSwaggerSwagger arayüzü. Geliştirme ortamında her zaman açıktır.
DisableAutoMigrationtrue ise açılışta veritabanı geçişleri çalışmaz.

Depodaki geliştirme ayarlarını olduğu gibi kullanma

appsettings.Development.json belirli bir ortama ait değerler içerir. Kendi bağlantı dizeni, anahtarlarını ve adreslerini ortam değişkenleriyle ver; gizli değerleri depoya koyma.

Çalıştır

Terminal
dotnet run --project SameUp.CMS.API --urls "http://localhost:5235"

İlk açılışta API veritabanı geçişlerini kendisi çalıştırır ve varsayılan uygulama parametrelerini ekler. Veritabanı henüz hazır değilse beş dakika boyunca yeniden dener.

Kontrol için:

  • GET http://localhost:5235/health: sağlık durumu.
  • http://localhost:5235/: geliştirme ortamında Swagger arayüzü.

İlk yönetici kullanıcıyı oluştur

Boş bir veritabanında panele girecek kullanıcı yoktur. Depodaki betik, varsayılan rolleri (SuperAdmin, Admin, Editor) ve ilk yöneticiyi oluşturur:

Terminal
export Operational__Token=<api-ayarlarındaki-değer>
export ADMIN_EMAIL=[email protected] ADMIN_PASSWORD=<güçlü-bir-şifre>
SEED_ROLES=1 ./scripts/dev-admin.sh
  • Betik API'nin http://localhost:5235 adresinde çalıştığını varsayar; farklıysa API_URL ile değiştir.
  • Güvenlik için yalnızca yerel bir veritabanında çalışır.
  • SEED_ROLES=1 mevcut rolleri silip yeniden oluşturur; yalnızca boş bir veritabanında kullan.

2. Yönetim paneli

Depoyu klonla ve bağımlılıkları kur

Terminal
git clone <journey-v2> && cd journey-v2
npm install

API adresini gir

Depo kökünde .env.local dosyası oluştur:

.env.local
VITE_API_URL=http://localhost:5235
VITE_API_BASE_PATH=/api/v1
DeğişkenNe işe yarar
VITE_API_URLAPI'nin kök adresi. Zorunlu.
VITE_API_BASE_PATHAPI yol öneki. Varsayılan /api/v1.
VITE_API_PROXYYalnızca geliştirmede: /api isteklerini bu adrese yönlendirir. CORS ayarlamak istemezsen kullan.
VITE_ALLOWED_HOSTSPaneli localhost dışında bir alan adıyla açacaksan izin verilen adresler (virgülle).
VITE_DEV_LOGIN_EMAIL, VITE_DEV_LOGIN_PASSWORDYalnızca yerel geliştirmede giriş formunu doldurur.

Site adresleri panelde ortam değişkeni değildir; API'deki uygulama parametrelerinden okunur (bkz. Parçaları bağla).

Çalıştır

Terminal
npm run dev        # http://localhost:5173
npm run check      # tür, lint ve diğer kontroller

İlk yönetici kullanıcıyla giriş yap.

3. Site şablonu

Terminal
git clone <Cms-Landing-Core> my-site && cd my-site
cp .env.example .env.local
pnpm install
pnpm dev           # http://localhost:3000

.env.local içinde yerel kurulum için en az şunları ayarla:

.env.local
NEXT_PUBLIC_API_URL=http://localhost:5235
NEXT_PUBLIC_SITE_URL=http://localhost:3000
REVALIDATE_ALLOWED_ORIGINS=http://localhost:5173
  • NEXT_PUBLIC_API_URL API'nin kök adresidir; /api/v1 ekleme. Ayarlı değilse ya da API'ye ulaşılamıyorsa geliştirmede bir kurulum ekranı görürsün.
  • REVALIDATE_ALLOWED_ORIGINS panelin adresidir; panel kayıttan sonra sitenin önbelleğini bu izinle yeniler.
  • Önizleme sitesini aynı şablonun PREVIEW_MODE=true ile çalışan ikinci bir kopyası olarak kurarsın.

Tüm değişkenler, proje yapısı ve bileşen eşleme için Site şablonu sayfasına bak.

4. Parçaları bağla

Üç parçanın birbirini bulması için şu ayarların birbiriyle uyuşması gerekir:

KimKimi bulurAyar
PanelAPIPanelde VITE_API_URL; API'de Origins içinde panelin adresi.
SiteAPISitede NEXT_PUBLIC_API_URL.
PanelSitePanelde Ayarlar › Bağlantılar › Canlı site adresi ve Önizleme sitesi adresi; sitede REVALIDATE_ALLOWED_ORIGINS içinde panelin adresi.

Yerel kurulumda panele girip Ayarlar › Bağlantılar ekranında iki site adresini de http://localhost:3000 yap. Bu adresler boş ya da başka bir ortamı gösteriyorsa bileşen düzenleyicideki önizleme ve Cache Yenile düğmesi yanlış siteye gider. Ayrıntı için Ayarlar sayfasına bak.

Sık karşılaşılan durumlar

İlgili sayfalar

Bu sayfada