Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
सतत एकीकरण एक DevOps सॉफ्टवेयर विकास अभ्यास है जो डेवलपर्स को दिन में कई बार साझा किए गए भंडार में बार-बार संशोधित कोड को मर्ज करने में सक्षम बनाता है। प्रत्येक मर्ज के बाद, कोड में समस्याओं का पता लगाने के लिए स्वचालित बिल्ड और परीक्षण किए जाते हैं। यह डेवलपर्स को सॉफ़्टवेयर की गुणवत्ता में सुधार करने और सॉफ़्टवेयर की निरंतर डिलीवरी प्रदान करने के लिए त्रुटियों को जल्दी से खोजने और हल करने में सक्षम बनाता है। कॉनकोर्स से स्विचिंग और फ्रॉंग करना बहुत आसान है क्योंकि यह अपने सभी कॉन्फ़िगरेशन को डिक्लेक्टिव फाइलों में रखता है जिन्हें वर्जन कंट्रोल में चेक किया जा सकता है। यह एक वेब उपयोगकर्ता इंटरफ़ेस भी प्रदान करता है जो बिल्ड जानकारी को अंतःक्रियात्मक रूप से प्रदर्शित करता है।
की सभी घटनाओं प्रतिस्थापित करना सुनिश्चित करें 192.0.2.1
और ci.example.com
अपने वास्तविक Vultr सार्वजनिक आईपी पते और वास्तविक डोमेन नाम से।
गाइड का उपयोग करके अपने बेस सिस्टम को अपडेट करें Ubuntu 16.04 कैसे अपडेट करें । एक बार आपका सिस्टम अपडेट हो जाने के बाद, PostgreSQL को स्थापित करने के लिए आगे बढ़ें।
PostgreSQL एक ऑब्जेक्ट रिलेशनल डेटाबेस सिस्टम है। कॉनकोर्स अपने पाइपलाइन डेटा को पोस्टग्रेक्यूएल डेटाबेस में संग्रहीत करता है। PostgreSQL रिपॉजिटरी जोड़ें।
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
PostgreSQL डेटाबेस सर्वर स्थापित करें।
sudo apt -y install postgresql
PostgreSQL सर्वर शुरू करें और इसे बूट समय पर स्वचालित रूप से शुरू करने के लिए सक्षम करें।
sudo systemctl start postgresql
sudo systemctl enable postgresql
डिफ़ॉल्ट PostgreSQL उपयोगकर्ता के लिए पासवर्ड बदलें।
sudo passwd postgres
PostgreSQL उपयोगकर्ता के रूप में लॉगिन करें:
sudo su - postgres
कॉनकोर्स सीआई के लिए एक नया PostgreSQL उपयोगकर्ता बनाएं।
createuser concourse
नोट : डिफ़ॉल्ट PostgreSQL उपयोगकर्ता डेटाबेस के प्रमाणीकरण के लिए इस्तेमाल किया जा सकता है, लेकिन यह एक उत्पादन सेटअप में सम्मिलित डेटाबेस के प्रमाणीकरण के लिए एक समर्पित उपयोगकर्ता का उपयोग करने के लिए अनुशंसित है।
PostgreSQL डेटाबेस पर क्वेरीज़ चलाने के लिए एक शेल प्रदान करता है। PostgreSQL शेल पर स्विच करें।
psql
नए बनाए गए कॉनकोर्स डेटाबेस उपयोगकर्ता के लिए एक पासवर्ड सेट करें।
ALTER USER concourse WITH ENCRYPTED password 'DBPassword';
महत्वपूर्ण : एक मजबूत पासवर्ड के साथ बदलें DBPassword
। पासवर्ड का एक नोट बनाएं जैसा कि ट्यूटोरियल में बाद में आवश्यक होगा।
कॉनकोर्स के लिए एक नया डेटाबेस बनाएं।
CREATE DATABASE concourse OWNER concourse;
psql
खोल से बाहर निकलें ।
\q
वर्तमान postgres
उपयोगकर्ता से sudo उपयोगकर्ता पर स्विच करें।
exit
कॉनकोर्स निष्पादन योग्य का नवीनतम संस्करण डाउनलोड करें और इसे स्टोर करें /usr/bin
ताकि इसे सीधे निष्पादित किया जा सके। कॉनकोर्स एंड फ्लाई बायरीज का नवीनतम संस्करण कॉनकोर्स डाउनलोड पेज पर पाया जा सकता है । नई रिलीज बहुत अक्सर हैं। सबसे हाल के संस्करण के लिए नए लिंक के साथ नीचे दिए गए लिंक को बदलें।
sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/concourse_linux_amd64 -O /usr/bin/concourse
इसी तरह, फ्लाई एग्ज़ेक्टेबल का नवीनतम संस्करण डाउनलोड करें और इसे स्टोर करें /usr/bin
।
sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/fly_linux_amd64 -O /usr/bin/fly
फ्लाई कमांड लाइन का इंटरफ़ेस है जो कॉनकोर्स सीआई के एटीसी एपीआई से कनेक्ट करने के लिए उपयोग किया जाता है। लिनक्स, विंडोज और मैकओएस जैसे कई प्लेटफार्मों के लिए फ्लाई उपलब्ध है।
डाउनलोड concourse
और fly
बायनेरिज़ के लिए अनुमति निष्पादित करें ।
sudo chmod +x /usr/bin/concourse /usr/bin/fly
जाँच करें कि क्या कॉनकोर्स और फ्लाई अपने संस्करण की जाँच करके सही तरीके से काम कर रहे हैं।
concourse -version
fly -version
RSA प्रमुख जोड़े कॉनकोर्स के घटकों के बीच संचार को एन्क्रिप्ट करने का एक तरीका प्रदान करते हैं।
कार्य के लिए सम्मिलन के लिए, कम से कम तीन जोड़ी कुंजियाँ बनानी होंगी। सत्र डेटा एन्क्रिप्ट करने के लिए, जनरेट करें session_signing_key
। इस कुंजी का उपयोग टीएसए द्वारा एटीसी को किए गए अनुरोधों पर हस्ताक्षर करने के लिए भी किया जाएगा। TSA SSH सर्वर को सुरक्षित करने के लिए a tsa_host_key
। अंत में, worker_key
प्रत्येक कार्यकर्ता के लिए जनरेट करें ।
कॉनकोर्स सीआई से संबंधित कुंजियों और कॉन्फ़िगरेशन को संग्रहीत करने के लिए एक नई निर्देशिका बनाएं।
sudo mkdir /opt/concourse
आवश्यक कुंजी उत्पन्न करें।
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/session_signing_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/tsa_host_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/worker_key
authorized_worker_keys
फ़ाइल की सामग्री को कॉपी करके श्रमिकों की सार्वजनिक कुंजी को अधिकृत करें ।
sudo cp /opt/concourse/worker_key.pub /opt/concourse/authorized_worker_keys
कॉनकोर्स दो अलग-अलग घटक प्रदान करता है जिन्हें शुरू करने की आवश्यकता है: वेब और कार्यकर्ता। कॉनकोर्स वेब शुरू करें।
sudo concourse web \
--basic-auth-username admin \
--basic-auth-password StrongPass \
--session-signing-key /opt/concourse/session_signing_key \
--tsa-host-key /opt/concourse/tsa_host_key \
--tsa-authorized-keys /opt/concourse/authorized_worker_keys \
--postgres-user=concourse \
--postgres-password=DBPassword \
--postgres-database=concourse \
--external-url http://192.0.2.1:8080
basic-auth
यदि वांछित है , तो उपयोगकर्ता नाम और पासवर्ड बदलें । सुनिश्चित करें कि मुख्य फ़ाइलों का पथ सही है और सुनिश्चित करें कि PostgreSQL डेटाबेस कॉन्फ़िगरेशन में उपयोगकर्ता नाम और पासवर्ड के लिए सही मान प्रदान किया गया है।
नोट : एटीसी डिफ़ॉल्ट पोर्ट 8080
को सुनेगा और टीएसए पोर्ट को सुनेगा 2222
। यदि प्रमाणीकरण वांछित नहीं है, --no-really-i-dont-want-any-auth
तो मूल स्रोत विकल्पों को हटाने के बाद विकल्प पास करें।
वेब सर्वर शुरू होने के बाद, निम्न आउटपुट प्रदर्शित किया जाएगा।
{"timestamp":"1503657859.661247969","source":"tsa","message":"tsa.listening","log_level":1,"data":{}}
{"timestamp":"1503657859.666907549","source":"atc","message":"atc.listening","log_level":1,"data":{"debug":"127.0.0.1:8079","http":"0.0.0.0:8080"}}
सर्वर को अभी के लिए बंद कर दें, क्योंकि कुछ और चीजें अभी भी सेटअप होनी चाहिए।
कॉनकोर्स सीआई वर्कर शुरू करें।
sudo concourse worker \
--work-dir /opt/concourse/worker \
--tsa-host 127.0.0.1 \
--tsa-public-key /opt/concourse/tsa_host_key.pub \
--tsa-worker-private-key /opt/concourse/worker_key
उपरोक्त कमांड मान लेगा कि TSA लोकलहोस्ट पर चल रहा है और डिफ़ॉल्ट पोर्ट को सुन रहा है 2222
।
यद्यपि कॉनकोर्स वेब और वर्कर को ऊपर दिए गए कमांड का उपयोग करके आसानी से शुरू किया जा सकता है, लेकिन सर्वर को प्रबंधित करने के लिए सिस्टमड का उपयोग करने की सिफारिश की जाती है।
एप्लिकेशन के प्रबंधन के लिए Systemd सेवा का उपयोग यह सुनिश्चित करता है कि एप्लिकेशन विफलताओं और बूट समय पर स्वचालित रूप से प्रारंभ हो गया है। कॉनकोर्स सर्वर किसी भी कॉन्फ़िगरेशन फ़ाइल से डेटा नहीं लेता है, लेकिन यह पर्यावरण चर से डेटा तक पहुंच सकता है। वैश्विक पर्यावरण चर सेट करने के बजाय, पर्यावरण चर को संग्रहीत करने के लिए एक नई फ़ाइल बनाएं और फिर सिस्टमड सेवा का उपयोग करके चरों को कंसोर्ट सीआई में पास करें।
कॉनकोर्स वेब के लिए एक नई पर्यावरण फ़ाइल बनाएँ।
sudo nano /opt/concourse/web.env
फ़ाइल को पॉप्युलेट करें।
CONCOURSE_SESSION_SIGNING_KEY=/opt/concourse/session_signing_key
CONCOURSE_TSA_HOST_KEY=/opt/concourse/tsa_host_key
CONCOURSE_TSA_AUTHORIZED_KEYS=/opt/concourse/authorized_worker_keys
CONCOURSE_POSTGRES_USER=concourse
CONCOURSE_POSTGRES_PASSWORD=DBPassword
CONCOURSE_POSTGRES_DATABASE=concourse
CONCOURSE_BASIC_AUTH_USERNAME=admin
CONCOURSE_BASIC_AUTH_PASSWORD=StrongPass
CONCOURSE_EXTERNAL_URL=http://192.0.2.1:8080
BASIC_AUTH
यदि वांछित है , तो उपयोगकर्ता नाम और पासवर्ड बदलें । सुनिश्चित करें कि मुख्य फ़ाइलों का पथ सही है और सुनिश्चित करें कि PostgreSQL डेटाबेस कॉन्फ़िगरेशन में उपयोगकर्ता नाम और पासवर्ड के लिए सही मान प्रदान किया गया है।
इसी तरह, कार्यकर्ता के लिए एक पर्यावरण फ़ाइल बनाएं।
sudo nano /opt/concourse/worker.env
फ़ाइल को पॉप्युलेट करें।
CONCOURSE_WORK_DIR=/opt/concourse/worker
CONCOURSE_TSA_WORKER_PRIVATE_KEY=/opt/concourse/worker_key
CONCOURSE_TSA_PUBLIC_KEY=/opt/concourse/tsa_host_key.pub
CONCOURSE_TSA_HOST=127.0.0.1
चूंकि पर्यावरण फ़ाइलों में उपयोगकर्ता नाम और पासवर्ड होते हैं, इसलिए इसकी अनुमतियाँ बदलें ताकि इसे अन्य उपयोगकर्ताओं द्वारा एक्सेस नहीं किया जा सके।
sudo chmod 600 /opt/concourse/*.env
अब वेब वातावरण को चलाने के लिए कॉनकोर्स के लिए एक नया उपयोगकर्ता बनाएं। यह सुनिश्चित करेगा कि वेब सर्वर एक अलग वातावरण में चल रहा है।
sudo useradd concourse
सम्मिलित उपयोगकर्ता को सम्मिलित CI फ़ाइल की डायरेक्टरी पर स्वामित्व दें।
sudo chown -R concourse:concourse /opt/concourse
कॉनकोर्स वेब सेवा के लिए एक नई systemd सेवा फ़ाइल बनाएँ।
sudo nano /etc/systemd/system/concourse-web.service
फ़ाइल को पॉप्युलेट करें।
[Unit]
Description=Concourse CI web server
[Service]
Type=simple
User=concourse
Group=concourse
Restart=on-failure
EnvironmentFile=/opt/concourse/web.env
ExecStart=/usr/bin/concourse web
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_web
[Install]
WantedBy=multi-user.target
फ़ाइल को सहेजें और बंद करें। कॉनकोर्स वर्कर सेवा के लिए एक नई सेवा फ़ाइल बनाएँ।
sudo nano /etc/systemd/system/concourse-worker.service
फ़ाइल को पॉप्युलेट करें।
[Unit]
Description=Concourse CI worker process
[Service]
Type=simple
Restart=on-failure
EnvironmentFile=/opt/concourse/worker.env
ExecStart=/usr/bin/concourse worker
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_worker
[Install]
WantedBy=multi-user.target
वेब और वर्कर सेवा अब सीधे शुरू की जा सकती है।
sudo systemctl start concourse-web concourse-worker
कार्यकर्ता और वेब प्रक्रिया को बूट समय पर स्वचालित रूप से शुरू करने के लिए, निम्नलिखित चलाने के लिए।
sudo systemctl enable concourse-worker concourse-web
सेवाओं की स्थिति की जांच करने के लिए, निम्नलिखित चलाएं।
sudo systemctl status concourse-worker concourse-web
यदि सेवा शुरू नहीं हुई है, या FAILED
राज्य में कैश को /tmp
निर्देशिका से हटा दें ।
sudo rm -rf /tmp/*
सेवाओं को पुनरारंभ करें।
sudo systemctl restart concourse-worker concourse-web
ध्यान दें कि इस बार सेवाएं सही ढंग से शुरू हुई हैं। सेवाओं की स्थिति की पुष्टि करने पर आउटपुट निम्न के समान होगा।
[user@vultr ~]$ sudo systemctl status concourse-worker concourse-web
● concourse-worker.service - Concourse CI worker process
Loaded: loaded (/etc/systemd/system/concourse-worker.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
Main PID: 3037 (concourse)
CGroup: /system.slice/concourse-worker.service
└─3037 /usr/bin/concourse worker
Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.934722900","source":"tsa","message":"t...""}}
Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.941227913","source":"guardian","messag...0"}}
...
● concourse-web.service - Concourse CI web server
Loaded: loaded (/etc/systemd/system/concourse-web.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
Main PID: 3036 (concourse)
CGroup: /system.slice/concourse-web.service
└─3036 /usr/bin/concourse web
Aug 26 07:27:57 vultr.guest concourse_web[3036]: {"timestamp":"1503732477.925554752","source":"tsa","message":"tsa...ve"}}
Aug 26 07:28:02 vultr.guest concourse_web[3036]: {"timestamp":"1503732482.925430775","source":"tsa","message":"tsa...ve"}}
...
Hint: Some lines were ellipsized, use -l to show in full.
एक बार सर्वर शुरू होने के बाद, कॉनकोर्स सीआई के वेब इंटरफेस को http://192.0.2.1:8080
किसी भी ब्राउज़र में जाकर एक्सेस किया जा सकता है। पर्यावरण फ़ाइल में दिए गए उपयोगकर्ता नाम और पासवर्ड का उपयोग करके लॉग इन करें।
फ्लाई का उपयोग कर सर्वर से कनेक्ट करने के लिए, निम्नलिखित चलाएँ।
fly -t my-ci login -c http://192.0.2.1:8080
उपरोक्त कमांड क�� उपयोग सर्वर में प्रारंभिक लॉगिन के लिए किया जाता है। -t
का उपयोग लक्ष्य नाम प्रदान करने के लिए किया जाता है। my-ci
किसी इच्छित लक्ष्य नाम के साथ बदलें । उपर्युक्त आदेश डिफ़ॉल्ट टीम में प्रवेश करेगा main
। यह पर्यावरण फाइल में दिए गए उपयोगकर्ता नाम और पासवर्ड के लिए पूछेगा।
आउटपुट निम्न की तरह दिखेगा।
[user@vultr ~]$ fly -t my-ci login -c http://192.0.2.1:8080
logging in to team 'main'
username: admin
password:
target saved
लक्ष्य लॉगिन एक दिन के लिए सहेजा जाएगा। उसके बाद, यह समाप्त हो जाएगा।
तुरंत लॉग आउट करने के लिए।
fly -t my-ci logout
फ्लाई का उपयोग नेटवर्क के बाहर सर्वर में प्रवेश करने के लिए किया जा सकता है, लेकिन केवल अगर सर्वर का सार्वजनिक आईपी पता हो और यह नेटवर्क के बाहर से पहुंच योग्य हो। विंडोज या मैकओएस बाइनरी को डाउनलोड साइट से या सर्वर के वेब यूआई से डाउनलोड किया जा सकता है।
लॉग इन, और कॉनकोर्स सर्वर को वेब यूआई के माध्यम से भेजी गई अन्य जानकारी सुरक्षित नहीं हैं। कनेक्शन एन्क्रिप्टेड नहीं है। Nginx रिवर्स प्रॉक्सी को लेट्स एनक्रिप्ट फ्री एसएसएल के साथ सेट किया जा सकता है।
Nginx स्थापित करें।
sudo apt -y install nginx
Nginx प्रारंभ करें और इसे बूट समय पर स्वचालित रूप से प्रारंभ करने के लिए सक्षम करें।
sudo systemctl start nginx
sudo systemctl enable nginx
Certbot रिपॉजिटरी जोड़ें।
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
सर्टिफिकेट स्थापित करें, जो कि चलो एनक्रिप्ट एनए के लिए क्लाइंट एप्लिकेशन है।
sudo apt -y install certbot
नोट : लेट्स एनक्रिप्ट एन से सर्टिफिकेट प्राप्त करने के लिए, जिस डोमेन के लिए सर्टिफिकेट जेनरेट किया जाना है, उसे सर्वर की ओर इंगित किया जाना चाहिए। यदि नहीं, तो डोमेन के DNS रिकॉर्ड्स में आवश्यक परिवर्तन करें और फिर से प्रमाणपत्र अनुरोध करने से पहले DNS के प्रचार के लिए प्रतीक्षा करें। सर्टिफिकेट सर्टिफिकेट प्रदान करने से पहले डोमेन प्राधिकरण की जांच करता है।
एसएसएल प्रमाणपत्र उत्पन्न करें।
sudo certbot certonly --webroot -w /var/www/html -d ci.example.com
जेनरेट किए गए प्रमाणपत्रों को /etc/letsencrypt/live/ci.example.com/
निर्देशिका में संग्रहीत किए जाने की संभावना है । एसएसएल प्रमाण पत्र के रूप में संग्रहीत किया जाएगा fullchain.pem
और निजी कुंजी के रूप में संग्रहीत किया जाएगा privkey.pem
।
आइए, 90 दिनों में प्रमाणपत्रों को एन्क्रिप्ट करें, इसलिए यह सिफारिश की जाती है कि प्रमाणपत्रों के लिए ऑटो नवीनीकरण cronjobs का उपयोग करके स्थापित किया जाए। क्रोन एक प्रणाली सेवा है जिसका उपयोग आवधिक कार्यों को चलाने के लिए किया जाता है।
क्रोन जॉब फ़ाइल खोलें।
sudo crontab -e
फ़ाइल के अंत में निम्न पंक्ति जोड़ें।
30 5 * * * /usr/bin/certbot renew --quiet
उपरोक्त क्रोन नौकरी प्रतिदिन सुबह 5:30 बजे चलेगी। यदि प्रमाण पत्र समाप्ति के लिए है, तो यह स्वतः नवीनीकृत हो जाएगा।
एक नया वर्चुअल होस्ट बनाएं।
sudo nano /etc/nginx/sites-available/concourse
फ़ाइल को पॉप्युलेट करें।
server {
listen 80;
server_name ci.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name ci.example.com;
ssl_certificate /etc/letsencrypt/live/ci.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ci.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/concourse.access.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://ci.example.com;
}
}
नोट : वास्तविक डोमेन के साथ बदलें ci.example.com
।
कॉन्फ़िगरेशन फ़ाइल को सक्रिय करें।
sudo ln -s /etc/nginx/sites-available/concourse /etc/nginx/sites-enabled/concourse
सम्मिलित वेब के लिए बनाई गई पर्यावरण फ़ाइल को संपादित करें।
sudo nano /opt/concourse/web.env
का मान बदलें CONCOURSE_EXTERNAL_URL
और फ़ाइल के अंत में दो और लाइनें भी जोड़ें।
CONCOURSE_EXTERNAL_URL=https://ci.example.com
CONCOURSE_BIND_IP=127.0.0.1
CONCOURSE_BIND_PORT=8080
फाइल को सेव करें और कॉनकोर्स वेब, वर्कर और नेग्नेक्स को पुनरारंभ करें।
sudo systemctl restart concourse-worker concourse-web nginx
ब्राउज़र से और उसके पास भेजे गए सभी डेटा अब एसएसएल एनक्रिप्ट के साथ सुरक्षित हैं।
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ