Tüm yapılandırma, dağıtım dizininizin kökündeki .env dosyasındaki ortam değişkenleri aracılığıyla yapılır. Docker Compose bu dosyayı otomatik olarak okur — --env-file bayrağına gerek yoktur.

Gerekli olarak işaretlenen değişkenler, konteynerleri başlatmadan önce ayarlanmalıdır. Diğerlerinin varsayılanları vardır ve isteğe bağlıdır.


Proje

Bu değişkenler, rtCloud örneğinizin kimliğini ve erişim noktasını tanımlar.

DeğişkenVarsayılanGerekliAçıklama
PROJECT_IDEvetBu dağıtım için benzersiz tanımlayıcı. Boşluk veya özel karakter yok. Dahili adlandırma için ön ek olarak kullanılır.
PROJECT_URLEvetKullanıcıların uygulamaya eriştiği alan adı veya IP adresi (örn. rtcloud.example.com veya 192.168.1.100).
PROJECT_TYPErtsurveyHayırEtkinleştirilecek platform varyantı. Seçenekler: rtwork, rtsurvey, rthome.
PROJECT_PORT80HayırUygulamanın konteyner içinde dinlediği port. Ne yaptığınızı bilmiyorsanız değiştirmeyin.
HTTP_PROTOCOLhttpsHayırDahili URL’leri oluşturmak için kullanılan protokol. SSL kullanmıyorsanız http olarak ayarlayın.

Veritabanı

MySQL bağlantı kimlik bilgileri. Veritabanı MySQL konteyneri tarafından otomatik olarak yönetilir — yalnızca güçlü şifreler ayarlamanız gerekir.

DeğişkenVarsayılanGerekliAçıklama
MYSQL_DATABASEsmartsurveyHayırUygulama veritabanının adı.
MYSQL_USERsmartsurveyHayırUygulama için MySQL kullanıcısı.
MYSQL_PASSWORDEvetMYSQL_USER için şifre. Güçlü ve benzersiz bir değer kullanın.
MYSQL_ROOT_PASSWORDEvetMySQL root şifresi. Veritabanı başlatma ve yönetici işlemleri için gereklidir.
MYSQL_HOSTmysqlHayırMySQL ana bilgisayar adı. Harici bir veritabanına bağlanmıyorsanız varsayılanı kullanın.
MYSQL_PORT3306HayırMySQL portu.

Yönetici Hesabı

Yönetici hesabı, yeni bir veritabanının ilk açılışında otomatik olarak oluşturulur.

DeğişkenVarsayılanGerekliAçıklama
ADMIN_PASSWORDadminEvetYerleşik admin kullanıcısının şifresi. İlk açılıştan önce bunu ayarlayın. Veritabanı zaten mevcutsa etkisi yoktur.

İlk girişten sonra web arayüzündeki Hesap Ayarları sayfasından yönetici şifresini değiştirin.


Portlar

Uygulamanın hangi ana bilgisayar portlarına bağlandığını kontrol edin.

DeğişkenVarsayılanAçıklama
APP_PORT8080Ana web arayüzü için ana bilgisayar portu. Sunucunuzda 8080 portu zaten kullanılıyorsa bunu değiştirin.
SHINY_PORT3838Shiny analitik sunucusu için ana bilgisayar portu.

Çalışma Zamanı

DeğişkenVarsayılanAçıklama
RUN_ENVprodÇalışma zamanı ortamı. Üretim dağıtımları için prod, yerel geliştirme için dev kullanın.
RUN_MODEadminKonteyner rolü. admin tam yığını (web + kuyruk + cron) çalıştırır. worker yalnızca arka plan işlemini çalıştırır (yatay ölçekleme için).
TZAsia/Ho_Chi_MinhSunucu saat dilimi. Günlük zaman damgalarını, cron zamanlamalarını ve tarih görüntüsünü etkiler. TZ veritabanı adı kullanın (örn. UTC, America/New_York, Europe/London).
LOG_LEVELinfoUygulama günlük ayrıntı düzeyi. Seçenekler: debug, info, warning, error.
COMPOSE_PROJECT_NAMErtcloudTüm Docker konteyner ve birim adlarına uygulanan ön ek. Aynı ana bilgisayarda birden fazla rtCloud örneği çalıştırırken bunu değiştirin.
RESTART_POLICYunless-stoppedDocker konteyner yeniden başlatma davranışı. Seçenekler: no, always, on-failure, unless-stopped.
RTCLOUD_IMAGErtawebteam/rta-smartsurvey:survey-dockerizeKullanılacak Docker görüntüsü. Belirli bir sürümü sabitlemek için etiketi değiştirin.
REQUIRE_LICENSEfalseBaşlangıçta lisans anahtarı doğrulamasını etkinleştirin. Lisans bilgileri için RTA ile iletişime geçin.

Güvenlik

DeğişkenVarsayılanAçıklama
CSRF_VALIDATION_ENABLEDtrueCSRF belirteci doğrulamasını etkinleştirin. Üretimde true tutun. Yalnızca 400 CSRF token could not be verified hataları alırsanız yerel geliştirmede false olarak ayarlayın.
GII_ENABLEDfalseYii çerçevesi kod oluşturma aracını etkinleştirin. Üretimde asla etkinleştirmeyin.

SSO — Yerleşik Keycloak

Tam özellikli kurumsal SSO için paketlenmiş Keycloak konteynerini etkinleştirin. HTTPS’li bir alan adı gerektirir.

DeğişkenVarsayılanAçıklama
EMBED_KEYCLOAKfalseYerleşik Keycloak konteynerini başlatmak için true olarak ayarlayın. embed-keycloak Docker Compose profilini etkinleştirir.
KEYCLOAK_URLKeycloak sunucusunun tam URL’si (örn. https://rtcloud.example.com/auth).
KEYCLOAK_REALMKeycloak realm adı (örn. rtsurvey).
KEYCLOAK_CLIENT_IDrtCloud uygulaması için Keycloak istemci kimliği.
KEYCLOAK_CLIENT_SECRETKeycloak istemci sırrı. Bunu Keycloak yönetici konsolundan oluşturun.
KEYCLOAK_ADMIN_USERadminKeycloak yönetici kullanıcı adı.
KEYCLOAK_ADMIN_PASSWORDKeycloak yönetici şifresi.
KEYCLOAK_DBkeycloakKeycloak için veritabanı adı. İlk açılışta otomatik olarak oluşturulur.
KEYCLOAK_DB_USERkeycloakKeycloak için veritabanı kullanıcısı.
KEYCLOAK_DB_PASSWORDKeycloak kullanıcısı için veritabanı şifresi.
KC_HOSTNAMEKeycloak ön uç URL’si (örn. https://rtcloud.example.com/auth).
KC_HOSTNAME_STRICTfalseKatı ana bilgisayar adı eşleşmesini zorunlu kılın. Sabit bir alan adıyla üretimde true olarak ayarlayın.

Tam kurulum kılavuzu için SSO Kimlik Doğrulama sayfasına bakın.


SSO — Harici OIDC Sağlayıcısı

Mevcut bir OIDC uyumlu kimlik sağlayıcısına (Supabase, Auth0, Authentik, Okta vb.) bağlanın.

DeğişkenVarsayılanAçıklama
OIDC_ISSUER_URLOIDC veren keşif URL’si (örn. https://accounts.google.com).
OIDC_CLIENT_IDKimlik sağlayıcınızda kayıtlı istemci kimliği.
OIDC_CLIENT_SECRETKimlik sağlayıcınızdan alınan istemci sırrı.
OIDC_SCOPEopenid profile emailİstek için boşlukla ayrılmış OIDC kapsam listesi.
OIDC_REDIRECT_URIWeb uygulaması için geri arama URL’si (örn. https://rtcloud.example.com/auth/callback).
OIDC_MOBILE_CLIENT_IDrtSurvey mobil uygulaması için ayrı istemci kimliği.
OIDC_MOBILE_REDIRECT_URIMobil uygulama geri arama URI’si (örn. vn.rta.rtsurvey.auth://callback).
OPEN_REGISTRATIONfalseİlk kez OIDC aracılığıyla kimlik doğrulayan kullanıcılar için otomatik olarak rtCloud hesabı oluşturun.
OIDC_AUTHORIZATION_ENDPOINTYetkilendirme uç nokta URL’sini geçersiz kılın (keşif kullanmak için boş bırakın).
OIDC_TOKEN_ENDPOINTBelirteç uç nokta URL’sini geçersiz kılın (keşif kullanmak için boş bırakın).
OIDC_USERINFO_ENDPOINTKullanıcı bilgisi uç nokta URL’sini geçersiz kılın (keşif kullanmak için boş bırakın).

SSO — Azure Active Directory

DeğişkenAçıklama
AZURE_CLIENT_IDAzure AD uygulama (istemci) kimliği.
AZURE_TENANT_IDAzure AD dizin (kiracı) kimliği.

İsteğe Bağlı Entegrasyonlar

Stata

DeğişkenVarsayılanAçıklama
STATA_ENABLEDfalseVeri analizi için Stata istatistiksel yazılım entegrasyonunu etkinleştirin.
STATA_BIN_PATH/usr/bin/stataKonteyner içindeki Stata ikili dosyasının mutlak yolu.

Elasticsearch

DeğişkenAçıklama
ES_HOSTElasticsearch ana bilgisayarı (örn. http://elasticsearch:9200).
ES_PORTElasticsearch portu.

Matomo Analitik

DeğişkenAçıklama
PIWIK_URLMatomo (Piwik) sunucu URL’si.
PIWIK_IDMatomo site kimliği.
PIWIK_SECRETMatomo kimlik doğrulama belirteci.

OpenCPU (R Hesaplama)

DeğişkenAçıklama
OCPU_HOSTR tabanlı istatistiksel hesaplama için OpenCPU sunucu URL’si.

RtBox Entegrasyonu

DeğişkenAçıklama
RTBOX_HOSTRtBox hizmet ana bilgisayar URL’si.
RTBOX_USER_APIRtBox kullanıcı API anahtarı.
RTBOX_BASIC_AUTHRtBox için temel kimlik doğrulama kimlik bilgileri.

Matrix Mesajlaşma

DeğişkenAçıklama
MATRIX_HOMESERVER_HOSTMatrix ana sunucu.
MATRIX_HOMESERVER_PORTMatrix ana sunucu portu.

Veri Birimleri

Tüm uygulama verileri adlandırılmış Docker birimlerinde saklanır. Birimler ilk başlatmada otomatik olarak oluşturulur ve konteyner yeniden başlatmaları ile güncellemeler arasında kalıcıdır.

BirimBağlama Noktasıİçerik
rtcloud_mysql_data/var/lib/mysqlMySQL veritabanı dosyaları
rtcloud_uploads…/uploadsAnket katılımcıları tarafından yüklenen dosyalar
rtcloud_audios…/audiosSes kayıtları
rtcloud_downloads…/downloadsOluşturulan dışa aktarma dosyaları
rtcloud_gallery…/galleryGaleri görüntüleri
rtcloud_voicemail…/voicemailSesli mesaj kayıtları
rtcloud_analytics…/analyticsAnalitik verileri
rtcloud_aggregate…/aggregateToplu anket sonuçları
rtcloud_converter…/converterVeri dönüştürme çıktıları
rtcloud_shiny_data/srv/shiny-server/smartsurveyShiny sunucusu R betikleri
rtcloud_shiny_logs/var/log/shiny-serverShiny sunucusu günlükleri
rtcloud_assets…/assetsWeb varlıkları (CSS, JS)
rtcloud_runtime…/protected/runtimeUygulama çalışma zamanı önbelleği
rtcloud_cache…/cacheUygulama önbelleği
rtcloud_tmp…/tmpGeçici dosyalar

Birim adları COMPOSE_PROJECT_NAME değeriyle (varsayılan: rtcloud) ön eklenmiştir.

Dağıtımınız için tüm birimleri listeleyin:

  docker volume ls | grep rtcloud
  
Bu sayfa yardımcı oldu mu?