सभी कॉन्फ़िगरेशन आपके डिप्लॉयमेंट डायरेक्टरी की जड़ में .env फ़ाइल में पर्यावरण चरों के माध्यम से किया जाता है। Docker Compose इस फ़ाइल को स्वचालित रूप से पढ़ता है — कोई --env-file फ्लैग की आवश्यकता नहीं है।

आवश्यक चिह्नित चर कंटेनर शुरू करने से पहले सेट किए जाने चाहिए। बाकी सभी के डिफ़ॉल्ट हैं और वैकल्पिक हैं।


परियोजना

ये चर आपके rtCloud इंस्टेंस की पहचान और एक्सेस पॉइंट को परिभाषित करते हैं।

चरडिफ़ॉल्टआवश्यकविवरण
PROJECT_IDहांइस डिप्लॉयमेंट के लिए अद्वितीय पहचानकर्ता। कोई स्पेस या विशेष वर्ण नहीं। आंतरिक नामकरण के लिए उपसर्ग के रूप में उपयोग किया जाता है।
PROJECT_URLहांडोमेन नाम या IP पता जहाँ उपयोगकर्ता ऐप एक्सेस करते हैं (जैसे rtcloud.example.com या 192.168.1.100)।
PROJECT_TYPErtsurveyनहींसक्रिय करने के लिए प्लेटफ़ॉर्म वैरिएंट। विकल्प: rtwork, rtsurvey, rthome
PROJECT_PORT80नहींवह पोर्ट जिस पर एप्लिकेशन कंटेनर के अंदर सुनता है। जब तक आप जानते न हों कि आप क्या कर रहे हैं, इसे न बदलें।
HTTP_PROTOCOLhttpsनहींआंतरिक URL बनाने के लिए उपयोग किया जाने वाला प्रोटोकॉल। यदि आप SSL का उपयोग नहीं कर रहे हैं तो http पर सेट करें।

डेटाबेस

MySQL कनेक्शन क्रेडेंशियल। डेटाबेस MySQL कंटेनर द्वारा स्वचालित रूप से प्रबंधित किया जाता है — आपको केवल मजबूत पासवर्ड सेट करने की आवश्यकता है।

चरडिफ़ॉल्टआवश्यकविवरण
MYSQL_DATABASEsmartsurveyनहींएप्लिकेशन डेटाबेस का नाम।
MYSQL_USERsmartsurveyनहींएप्लिकेशन के लिए MySQL उपयोगकर्ता।
MYSQL_PASSWORDहांMYSQL_USER के लिए पासवर्ड। एक मजबूत, अद्वितीय मान का उपयोग करें।
MYSQL_ROOT_PASSWORDहांMySQL रूट पासवर्ड। डेटाबेस इनिशियलाइज़ेशन और admin ऑपरेशन के लिए आवश्यक।
MYSQL_HOSTmysqlनहींMySQL होस्टनाम। डिफ़ॉल्ट का उपयोग करें जब तक आप बाहरी डेटाबेस से कनेक्ट नहीं कर रहे।
MYSQL_PORT3306नहींMySQL पोर्ट।

Admin खाता

Admin खाता नए डेटाबेस के पहले बूट पर स्वचालित रूप से बनाया जाता है।

चरडिफ़ॉल्टआवश्यकविवरण
ADMIN_PASSWORDadminहांअंतर्निहित admin उपयोगकर्ता के लिए पासवर्ड। पहले बूट से पहले इसे सेट करें। यदि डेटाबेस पहले से मौजूद है तो इसका कोई प्रभाव नहीं होता।

पहले लॉगिन के बाद, वेब UI में Account Settings पेज से admin पासवर्ड बदलें।


पोर्ट

नियंत्रित करें कि एप्लिकेशन किन होस्ट पोर्ट से बंधता है।

चरडिफ़ॉल्टविवरण
APP_PORT8080मुख्य वेब UI के लिए होस्ट पोर्ट। यदि आपके सर्वर पर पोर्ट 8080 पहले से उपयोग में है तो बदलें।
SHINY_PORT3838Shiny एनालिटिक्स सर्वर के लिए होस्ट पोर्ट।

रनटाइम

चरडिफ़ॉल्टविवरण
RUN_ENVprodरनटाइम परिवेश। प्रोडक्शन डिप्लॉयमेंट के लिए prod, स्थानीय विकास के लिए dev का उपयोग करें।
RUN_MODEadminकंटेनर भूमिका। admin पूरा स्टैक (वेब + क्यू + क्रॉन) चलाता है। worker केवल बैकग्राउंड प्रोसेसिंग चलाता है (क्षैतिज स्केलिंग के लिए)।
TZAsia/Ho_Chi_Minhसर्वर टाइमज़ोन। लॉग टाइमस्टैम्प, क्रॉन शेड्यूल और तिथि प्रदर्शन को प्रभावित करता है। TZ डेटाबेस नाम का उपयोग करें (जैसे UTC, America/New_York, Europe/London)।
LOG_LEVELinfoएप्लिकेशन लॉग विस्तार। विकल्प: debug, info, warning, error
COMPOSE_PROJECT_NAMErtcloudसभी Docker कंटेनर और वॉल्यूम नामों पर लागू उपसर्ग। एक ही होस्ट पर कई rtCloud इंस्टेंस चलाते समय बदलें।
RESTART_POLICYunless-stoppedDocker कंटेनर पुनरारंभ व्यवहार। विकल्प: no, always, on-failure, unless-stopped
RTCLOUD_IMAGErtawebteam/rta-smartsurvey:survey-dockerizeउपयोग करने के लिए Docker इमेज। किसी विशिष्ट संस्करण को पिन करने के लिए टैग बदलें।
REQUIRE_LICENSEfalseस्टार्टअप पर लाइसेंस कुंजी सत्यापन सक्षम करें। लाइसेंस जानकारी के लिए RTA से संपर्क करें।

सुरक्षा

चरडिफ़ॉल्टविवरण
CSRF_VALIDATION_ENABLEDtrueCSRF टोकन सत्यापन सक्षम करें। प्रोडक्शन में इसे true रखें। केवल स्थानीय विकास में false पर सेट करें यदि आपको 400 CSRF token could not be verified त्रुटियां मिलती हैं।
GII_ENABLEDfalseYii फ्रेमवर्क कोड जेनरेटर टूल सक्षम करें। प्रोडक्शन में कभी भी सक्षम न करें।

SSO — एम्बेडेड Keycloak

पूर्ण-विशेषताओं वाले एंटरप्राइज़ SSO के लिए बंडल किए गए Keycloak कंटेनर को सक्षम करें। HTTPS के साथ डोमेन की आवश्यकता है।

चरडिफ़ॉल्टविवरण
EMBED_KEYCLOAKfalseएम्बेडेड Keycloak कंटेनर शुरू करने के लिए true पर सेट करें। embed-keycloak Docker Compose प्रोफ़ाइल सक्रिय करता है।
KEYCLOAK_URLKeycloak सर्वर का पूर्ण URL (जैसे https://rtcloud.example.com/auth)।
KEYCLOAK_REALMKeycloak realm नाम (जैसे rtsurvey)।
KEYCLOAK_CLIENT_IDrtCloud एप्लिकेशन के लिए Keycloak क्लाइंट ID।
KEYCLOAK_CLIENT_SECRETKeycloak क्लाइंट सीक्रेट। इसे Keycloak admin कंसोल से जेनरेट करें।
KEYCLOAK_ADMIN_USERadminKeycloak administrator उपयोगकर्ता नाम।
KEYCLOAK_ADMIN_PASSWORDKeycloak administrator पासवर्ड।
KEYCLOAK_DBkeycloakKeycloak के लिए डेटाबेस नाम। पहले बूट पर स्वचालित रूप से बनाया जाता है।
KEYCLOAK_DB_USERkeycloakKeycloak के लिए डेटाबेस उपयोगकर्ता।
KEYCLOAK_DB_PASSWORDKeycloak उपयोगकर्ता के लिए डेटाबेस पासवर्ड।
KC_HOSTNAMEKeycloak फ्रंटएंड URL (जैसे https://rtcloud.example.com/auth)।
KC_HOSTNAME_STRICTfalseसख्त होस्टनाम मिलान लागू करें। निश्चित डोमेन के साथ प्रोडक्शन में true पर सेट करें।

पूर्ण सेटअप गाइड के लिए SSO Authentication देखें।


SSO — बाहरी OIDC प्रदाता

किसी मौजूदा OIDC-संगत पहचान प्रदाता (Supabase, Auth0, Authentik, Okta, आदि) से कनेक्ट करें।

चरडिफ़ॉल्टविवरण
OIDC_ISSUER_URLOIDC issuer discovery URL (जैसे https://accounts.google.com)।
OIDC_CLIENT_IDआपके पहचान प्रदाता में पंजीकृत क्लाइंट ID।
OIDC_CLIENT_SECRETआपके पहचान प्रदाता से क्लाइंट सीक्रेट।
OIDC_SCOPEopenid profile emailअनुरोध करने के लिए OIDC स्कोप की स्पेस-अलग सूची।
OIDC_REDIRECT_URIवेब ऐप के लिए कॉलबैक URL (जैसे https://rtcloud.example.com/auth/callback)।
OIDC_MOBILE_CLIENT_IDrtSurvey मोबाइल ऐप के लिए अलग क्लाइंट ID।
OIDC_MOBILE_REDIRECT_URIमोबाइल ऐप कॉलबैक URI (जैसे vn.rta.rtsurvey.auth://callback)।
OPEN_REGISTRATIONfalseउन उपयोगकर्ताओं के लिए स्वचालित रूप से rtCloud खाते बनाएं जो पहली बार OIDC के माध्यम से प्रमाणित होते हैं।
OIDC_AUTHORIZATION_ENDPOINTauthorization endpoint URL ओवरराइड करें (discovery का उपयोग करने के लिए खाली छोड़ें)।
OIDC_TOKEN_ENDPOINTtoken endpoint URL ओवरराइड करें (discovery का उपयोग करने के लिए खाली छोड़ें)।
OIDC_USERINFO_ENDPOINTuserinfo endpoint URL ओवरराइड करें (discovery का उपयोग करने के लिए खाली छोड़ें)।

SSO — Azure Active Directory

चरविवरण
AZURE_CLIENT_IDAzure AD एप्लिकेशन (क्लाइंट) ID।
AZURE_TENANT_IDAzure AD डायरेक्टरी (टेनेंट) ID।

वैकल्पिक एकीकरण

Stata

चरडिफ़ॉल्टविवरण
STATA_ENABLEDfalseडेटा विश्लेषण के लिए Stata सांख्यिकीय सॉफ़्टवेयर एकीकरण सक्षम करें।
STATA_BIN_PATH/usr/bin/stataकंटेनर के अंदर Stata बाइनरी का पूर्ण पथ।

Elasticsearch

चरविवरण
ES_HOSTElasticsearch होस्ट (जैसे http://elasticsearch:9200)।
ES_PORTElasticsearch पोर्ट।

Matomo Analytics

चरविवरण
PIWIK_URLMatomo (Piwik) सर्वर URL।
PIWIK_IDMatomo साइट ID।
PIWIK_SECRETMatomo प्रमाणीकरण टोकन।

OpenCPU (R Computation)

चरविवरण
OCPU_HOSTR-आधारित सांख्यिकीय गणना के लिए OpenCPU सर्वर URL।

RtBox Integration

चरविवरण
RTBOX_HOSTRtBox सेवा होस्ट URL।
RTBOX_USER_APIRtBox उपयोगकर्ता API कुंजी।
RTBOX_BASIC_AUTHRtBox के लिए बेसिक प्रमाणीकरण क्रेडेंशियल।

Matrix Messaging

चरविवरण
MATRIX_HOMESERVER_HOSTMatrix homeserver होस्ट।
MATRIX_HOMESERVER_PORTMatrix homeserver पोर्ट।

डेटा वॉल्यूम

सभी एप्लिकेशन डेटा नामित Docker वॉल्यूम में संग्रहीत है। वॉल्यूम पहले स्टार्टअप पर स्वचालित रूप से बनाए जाते हैं और कंटेनर पुनरारंभ और अपडेट के दौरान बने रहते हैं।

वॉल्यूममाउंट पॉइंटसामग्री
rtcloud_mysql_data/var/lib/mysqlMySQL डेटाबेस फ़ाइलें
rtcloud_uploads…/uploadsसर्वेक्षण उत्तरदाताओं द्वारा अपलोड की गई फ़ाइलें
rtcloud_audios…/audiosऑडियो रिकॉर्डिंग
rtcloud_downloads…/downloadsजेनरेट की गई निर्यात फ़ाइलें
rtcloud_gallery…/galleryगैलरी छवियां
rtcloud_voicemail…/voicemailवॉयसमेल रिकॉर्डिंग
rtcloud_analytics…/analyticsएनालिटिक्स डेटा
rtcloud_aggregate…/aggregateएकत्रित सर्वेक्षण परिणाम
rtcloud_converter…/converterडेटा रूपांतरण आउटपुट
rtcloud_shiny_data/srv/shiny-server/smartsurveyShiny सर्वर R स्क्रिप्ट
rtcloud_shiny_logs/var/log/shiny-serverShiny सर्वर लॉग
rtcloud_assets…/assetsवेब एसेट (CSS, JS)
rtcloud_runtime…/protected/runtimeएप्लिकेशन रनटाइम कैश
rtcloud_cache…/cacheएप्लिकेशन कैश
rtcloud_tmp…/tmpअस्थायी फ़ाइलें

वॉल्यूम नाम COMPOSE_PROJECT_NAME के मान (डिफ़ॉल्ट: rtcloud) से उपसर्गित हैं।

अपनी डिप्लॉयमेंट के लिए सभी वॉल्यूम सूचीबद्ध करें:

  docker volume ls | grep rtcloud
  
क्या यह पृष्ठ सहायक था?