दस्तावेज़

त्वरित शुरुआत + हर हिस्से और हर डिवाइस की सुविधाओं का विवरण (लगातार अपडेट हो रहा है)

ऐप संग्रह

यह लेख पैनल के “ऐप संग्रह” का परिचय देता है — आम ऐप्स को एक-क्लिक में तैनात करने की पूरी गाइड।

एक वाक्य में समझें

ऐप संग्रह एक बिल्ट-इन “ऐप स्टोर” है, जिसमें बहुत सारे लोकप्रिय ओपन सोर्स ऐप्स (ब्लॉग, क्लाउड स्टोरेज, नोट्स, मॉनिटरिंग, डेटाबेस आदि) शामिल हैं। एक क्लिक में लक्ष्य सर्वर पर Docker डिप्लॉयमेंट अपने आप पूरा हो जाता है — docker-compose लिखने या ट्यूटोरियल ढूँढने की ज़रूरत नहीं।

सुविधा परिचय

ऐप संग्रह में लोकप्रिय ओपन सोर्स ऐप्स शामिल हैं, और हर ऐप के लिए तैयार “डिफ़ॉल्ट खाता-पासवर्ड + पोर्ट + डेटा डायरेक्टरी + डिप्लॉयमेंट चरण + सावधानियाँ” होती हैं। आपको बस “इंस्टॉल” दबाना है, सर्वर चुनना है और कुछ ज़रूरी पैरामीटर भरने हैं — बाकी सब (इमेज पुल करना, डेटाबेस बनाना, एनवायरनमेंट वेरिएबल सेट करना, कंटेनर शुरू करना) अपने आप हो जाता है।

कब उपयोगी है

  • जल्दी से कोई ऐप तैनात करना है (जैसे Nextcloud क्लाउड स्टोरेज, WordPress ब्लॉग, Memos नोट्स)
  • खुद एनवायरनमेंट वेरिएबल, पोर्ट मैपिंग, डेटा परसिस्टेंस नहीं सीखना चाहते
  • चाहते हैं कि हर ऐप के लिए तैयार “डिफ़ॉल्ट खाता-पासवर्ड + डिप्लॉयमेंट चरण + सावधानियाँ” मौजूद हों

इस्तेमाल कैसे करें

1. “ऐप संग्रह” में जाएँ, ऐप ब्राउज़ करें या खोजें

2. “सभी” या “इंस्टॉल किए गए” पर स्विच करके देखें

3. किसी ऐप पर क्लिक करें और विवरण देखें (डिफ़ॉल्ट खाता-पासवर्ड, पोर्ट, डेटा डायरेक्टरी, सावधानियाँ)

4. “इंस्टॉल” पर क्लिक करें, लक्ष्य सर्वर चुनें और निर्देशानुसार कॉन्फ़िग भरें (पासवर्ड, पोर्ट आदि)

कंटेंट मैनेजमेंट सिस्टम (CMS) की एक-क्लिक इंस्टॉल

ऐप संग्रह में बिल्ट-इन “कंटेंट मैनेजमेंट सिस्टम (CMS एक-क्लिक इंस्टॉल)” श्रेणी है, जिसमें WordPress, Joomla, Drupal, MediaWiki, Halo, Ghost जैसे प्रमुख CMS शामिल हैं — सभी में एक-क्लिक इंस्टॉल + ऑटो डेटाबेस कॉन्फ़िगरेशन है, और पूरी प्रक्रिया में SQL खुद लिखने की ज़रूरत नहीं:

1. Docker की जाँच/इंस्टॉल अपने आप

2. साझा MariaDB डेटाबेस कंटेनर अपने आप शुरू (sshe-mysql, सिर्फ़ एक बार; आगे CMS इसे दोबारा इस्तेमाल करते हैं)

3. हर साइट के लिए अलग डेटाबेस और उपयोगकर्ता अपने आप बनता है (रैंडम मज़बूत पासवर्ड; root पासवर्ड सर्वर पर /opt/sshe-mysql/.root_password में सेव रहता है ताकि दोबारा इस्तेमाल हो सके)

4. CMS कंटेनर अपने आप शुरू होता है और डेटाबेस कॉन्फ़िग इंजेक्ट हो जाता है

5. इंस्टॉल पूरा होने पर पॉपअप में एक्सेस पता + डेटाबेस क्रेडेंशियल दिखते हैं, जिन्हें एक क्लिक में कॉपी किया जा सकता है

तीन रूप:

  • पूरी तरह ऑटोमैटिक (WordPress / Joomla): ऑफ़िशियल इमेज डेटाबेस एनवायरनमेंट वेरिएबल सपोर्ट करती है, इंस्टॉल के बाद तुरंत उपयोग योग्य
  • वेब विज़ार्ड (Drupal / MediaWiki): टूल खुद डेटाबेस और उपयोगकर्ता बनाता है; आप वेब इंस्टॉलर विज़ार्ड में अपने आप बने क्रेडेंशियल भर दें (SQL लिखने की ज़रूरत नहीं)
  • बिल्ट-इन डेटाबेस (Halo / Ghost): बाहरी डेटाबेस की ज़रूरत नहीं, एक क्लिक में सीधे चलता है

> सुझाव: चीन के भीतर के सर्वर पर अगर Docker Hub से इमेज पुल करना टाइमआउट हो, तो पहले सर्वर पर Docker इमेज एक्सेलरेटर कॉन्फ़िगर करें (सार्वजनिक एक्सेलरेटर जैसे docker.1ms.run / docker.m.daocloud.io)।

किसी साइट के डेटाबेस क्रेडेंशियल देखना / बैकअप लेना

एक-क्लिक इंस्टॉल के बाद, हर साइट के डेटाबेस क्रेडेंशियल अपने आप लक्ष्य सर्वर पर सेव हो जाते हैं: /opt/sshe-db-creds/<container-name>.conf (इसमें DB_HOST / DB_NAME / DB_USER / DB_PASS / DB_ROOT, अनुमतियाँ 600)।

ऐप संग्रह या इमेज संग्रह के CMS विवरण में “डेटाबेस क्रेडेंशियल देखें” पर क्लिक करके कभी भी देख सकते हैं; पॉपअप में अपने आप ये भी आता है:

  • 🚀 phpMyAdmin की एक-क्लिक डिप्लॉयमेंट: एक क्लिक में sshe-cms-net नेटवर्क पर phpMyAdmin तैनात होता है (खुद खाली पोर्ट चुनता है, डिफ़ॉल्ट 8888, sshe-mysql की तरफ़ इशारा करता है), और “phpMyAdmin खोलें (लॉगिन पहले से भरा)” बटन मिलता है — सीधे डेटाबेस में जाएँ, आसान विज़ुअल ब्राउज़िंग / इम्पोर्ट-एक्सपोर्ट / क्वेरी।
  • बैकअप कमांड: docker exec sshe-mysql mariadb-dump -uroot -p'<DB_ROOT>' <DB_NAME> > /opt/sshe-db-creds/<DB_NAME>.bak.sql
  • phpMyAdmin का वैकल्पिक लॉगिन: सर्वर में sshe-mysql भरें, उपयोगकर्ता/पासवर्ड में ऊपर वाले डेटाबेस उपयोगकर्ता/पासवर्ड डालें।

> नोट: CMS को “एक-क्लिक इंस्टॉल” से तैनात करने पर ही यह क्रेडेंशियल फ़ाइल बनती है; अगर docker run से मैन्युअल रूप से तैनात किया है, तो ऐप का कॉन्फ़िग खुद देखें (जैसे WordPress की wp-config.php)।

हर ऐप के विवरण में क्या होता है

जानकारीविवरण
डिफ़ॉल्ट खाता / पासवर्डऐप का शुरुआती खाता (जैसे Nextcloud का admin)
डिफ़ॉल्ट पोर्टऐप किस पोर्ट पर सुनता है
डेटा डायरेक्टरीडेटा कहाँ स्थायी रूप से रहता है
डिप्लॉयमेंट चरणडेटाबेस पर निर्भर ऐप्स के पूरे चरण (पहले डेटाबेस इंस्टॉल → डेटाबेस-उपयोगकर्ता बनाएँ → एनवायरनमेंट वेरिएबल सेट करें → इनिशियलाइज़ करें)
सावधानियाँपोर्ट टकराव, संसाधन खपत, सुरक्षा चेतावनियाँ आदि

इंस्टॉल किए गए ऐप्स का प्रबंधन

“इंस्टॉल किए गए” पर स्विच करें — हर इंस्टॉल किए ऐप पर इनलाइन ऑपरेशन मिलते हैं: इंस्टॉल / अनइंस्टॉल / रोकें / शुरू करें / रीस्टार्ट / हटाएँ, ताकि रोज़ का ऑप्स आसान हो।

डेटाबेस पर निर्भर ऐप्स

कुछ ऐप्स (जैसे Nextcloud, WordPress) MySQL/PostgreSQL पर निर्भर हैं। ऐसे ऐप्स के डिप्लॉयमेंट चरण अपने आप ये शामिल करते हैं:

1. पहले डेटाबेस तैनात करें (MySQL/MariaDB/PostgreSQL)

2. डेटाबेस और उपयोगकर्ता बनाएँ

3. ऐप के एनवायरनमेंट वेरिएबल कॉन्फ़िगर करें (डेटाबेस पता, खाता, पासवर्ड)

4. ऐप इनिशियलाइज़ करें

पैनल इन चरणों को आपस में जोड़ देता है; आपको बस निर्देशानुसार पासवर्ड जैसी ज़रूरी जानकारी भरनी है।

कई डिस्ट्रीब्यूशन का सपोर्ट

ऐप संग्रह की इंस्टॉल कमांड अपने आप लक्ष्य सर्वर के पैकेज मैनेजर के अनुसार ढल जाती है, मैन्युअल चुनाव की ज़रूरत नहीं:

डिस्ट्रीब्यूशनपैकेज मैनेजरअनुकूलन का तरीका
Debian / Ubuntuaptमूल कमांड
Fedora / Rocky / CentOS / RHELdnf / yumऑटो मैपिंग (apt-get → dnf/yum)
Alpineapkऑटो मैपिंग

साथ ही आम पैकेज नाम के अंतर (जैसे apache2 → httpd, apache2-utils → httpd-tools) और सेवा नाम के अंतर (apache2.service → httpd.service) अपने आप संभाल लेता है।

> ⚠️ ध्यान दें: कुछ ऐप्स डिस्ट्रीब्यूशन-विशेष इंस्टॉल तरीकों पर निर्भर हैं (जैसे ufw सिर्फ़ Ubuntu के लिए, Node.js का deb.nodesource स्रोत केवल Debian/Ubuntu के लिए), इसलिए Fedora/Rocky पर इंस्टॉल न हो सकें। इंस्टॉल फ़ेल होने पर पैनल त्रुटि की जानकारी सच-सच दिखाता है।

सावधानियाँ

1. ऐप तैनात करने के लिए लक्ष्य सर्वर पर Docker इंस्टॉल होना चाहिए।

2. पासवर्ड प्लेसहोल्डर साफ़ तौर पर दिखाए जाते हैं (जैसे “<your-database-password>”), उन्हें अपने मज़बूत पासवर्ड से बदलें।

3. ऐप डिफ़ॉल्ट रूप से लक्ष्य सर्वर के पोर्ट पर बाइंड होता है; अगर उस सर्वर के पास पब्लिक IP नहीं है (NAT/टनल सर्वर), तो बाहर से एक्सेस के लिए पोर्ट टनलिंग या पोर्ट फ़ॉरवर्डिंग के साथ इस्तेमाल करें।

4. बहुत पुराने डिस्ट्रीब्यूशन (जैसे Fedora 32 जैसे EOL हो चुके वर्शन) के सॉफ़्टवेयर स्रोत बंद हो चुके हैं, इंस्टॉल टाइमआउट या फ़ेल हो सकता है — सपोर्टेड वर्शन पर अपग्रेड करने की सलाह दी जाती है।