कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
मास्टोडन एक ओपन सोर्स सेल्फ होस्टेड माइक्रोब्लॉगिंग और सोशल नेटवर्किंग सर्वर है। यह ट्विटर जैसी सुविधाएँ प्रदान करता है; लेकिन एक ही कंपनी द्वारा नियंत्रित होने के बजाय, यह विकेन्द्रीकृत सर्वरों का एक संघ है जो सामाजिक नेटवर्किंग की संपूर्ण प्रणाली बनाने के लिए एक साथ जुड़ता है। एक छोटी टीम अपने Mastodon सर्वर उदाहरण को आपस में संवाद करने के लिए और फ़ेडरेटेड समुदाय के अन्य उपयोगकर्ताओं के साथ शुरू कर सकती है। यह आपको अपनी स्वयं की गोपनीयता और मॉडरेशन नीतियों को चुनने और यह परिभाषित करने में भी सक्षम बनाता है कि आप विभिन्न सर्वरों के अन्य उपयोगकर्ताओं के साथ कैसे संवाद करते हैं। एक व्यक्ति जो सामग्री बनाता है और सब्सक्राइब करता है, उसे उस सर्वर पर होस्ट किया जाता है जहां उसका खाता बनाया गया है। एक ही सर्वर पर होस्ट नहीं किए जाने पर भी उपयोगकर्ता एक दूसरे का अनुसरण कर सकते हैं। मास्टोडन नेटवर्क के प्रत्येक उपयोगकर्ता का अपना विशिष्ट नाम या आईडी होता है जो अंदर होता है@[email protected]
प्रारूप। मास्टोडन के लिए क्लाइंट एप्लिकेशन लगभग सभी प्लेटफार्मों के लिए उपलब्ध हैं।
नोट: हम social.example.com
Mastodon उदाहरण के लिए उपयोग किए जाने वाले डोमेन नाम के रूप में उपयोग करेंगे। social.example.com
अपने वास्तविक डोमेन नाम की सभी घटनाओं को अपने मास्टोडन एप्लिकेशन के लिए उपयोग करना चाहते हैं ।
यदि आवश्यक हो तो CentOS 7 को अपडेट करने के लिए गाइड का उपयोग करके अपनी आधार प्रणाली को अपडेट करें । एक बार आपका सिस्टम अपडेट हो जाने के बाद, आवश्यक निर्भरताएं स्थापित करने के लिए आगे बढ़ें।
मास्टोडन को काम करने के लिए कई निर्भरताओं की आवश्यकता होती है। का नवीनतम संस्करण स्थापित करें Node.js
, जिसका उपयोग जावास्क्रिप्ट फ़ाइलों को संकलित करने के लिए किया जाएगा।
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum -y install nodejs
स्थापित करें Yarn
, जो एक तेज़, विश्वसनीय और सुरक्षित निर्भरता प्रबंधक अनुप्रयोग है। हम Node.js निर्भरताएँ स्थापित करने के लिए यार्न का उपयोग करेंगे।
sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
sudo yum -y install yarn
स्थापित करें Redis
। Redis एक इन-मेमरी डेटा स्ट्रक्चर स्टोर और कैशे एप्लिकेशन है।
sudo yum -y install redis
Redis प्रारंभ करें और इसे बूट पर स्वचालित रूप से प्रारंभ करने के लिए सक्षम करें।
sudo systemctl start redis
sudo systemctl enable redis
कुछ और निर्भरताएँ स्थापित करें जिन्हें Ruby
इंस्टालेशन और अन्य निर्भरताओं के निर्माण के लिए आवश्यक है ।
sudo yum -y install ImageMagick git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel
आपको विकास उपकरण स्थापित करने की भी आवश्यकता होगी।
sudo yum -y groupinstall 'Development Tools'
PostgreSQL एक ऑब्जेक्ट रिलेशनल डेटाबेस सिस्टम है। आपको अपने सिस्टम में PostgreSQL रिपॉजिटरी को जोड़ना होगा क्योंकि डिफ़ॉल्ट yum
रिपॉजिटरी में एप्लिकेशन का पुराना संस्करण है।
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
PostgreSQL डेटाबेस सर्वर स्थापित करें।
sudo yum -y install postgresql96-server postgresql96-contrib postgresql96-devel
डेटाबेस को प्रारंभ करें।
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
आधारित प्रमाणीकरण pg_hba.conf
सक्षम करने के लिए फ़ाइल को संपादित करें MD5
।
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
निम्नलिखित पंक्तियों को खोजें और उनमें peer
से trust
और ident
को बदलें md5
।
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
एक बार अद्यतन करने के बाद, कॉन्फ़िगरेशन इस तरह दिखना चाहिए।
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
PostgreSQL सर्वर शुरू करें और इसे बूट पर स्वचालित रूप से शुरू करने के लिए सक्षम करें।
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
डिफ़ॉल्ट PostgreSQL उपयोगकर्ता के लिए पासवर्ड बदलें।
sudo passwd postgres
PostgreSQL
उपयोगकर्ता के रूप में शेल पर लॉगिन करें।
sudo su - postgres
PostgreSQL
मास्टोडन के लिए एक नया उपयोगकर्ता बनाएं ।
createuser mastodon
PostgreSQL psql
डेटाबेस पर प्रश्नों को चलाने के लिए शेल प्रदान करता है । चल कर PostgreSQL शेल पर स्विच करें।
psql
मास्टोडन डेटाबेस के लिए नए बनाए गए उपयोगकर्ता के लिए एक पासवर्ड सेट करें और नए डेटाबेस को जोड़ने की अनुमति प्रदान करें।
ALTER USER mastodon WITH ENCRYPTED password 'DBPassword' CREATEDB;
DBPassword
एक मजबूत पासवर्ड से बदलें । psql
शेल से बाहर निकलें :
\q
sudo
उपयोगकर्ता पर स्विच करें।
exit
कुछ और आवश्यक PostgreSQL निर्भरताएँ स्थापित करें।
sudo yum -y install libpqxx-devel protobuf-devel
मास्��ोडन के लिए एक नया उपयोगकर्ता बनाएं और नए बनाए गए उपयोगकर्ता पर जाएँ।
sudo adduser mastodon -d /opt/mastodon
sudo su - mastodon
हम रूबी संस्करण प्रबंधक या आरवीएम का उपयोग करके रूबी का नवीनतम संस्करण स्थापित करेंगे। इसका उपयोग रूबी के कई संस्करणों को स्थापित और प्रबंधित करने के लिए किया जाता है।
GPG
RVM की कुंजी को अपने सर्वर में जोड़ें।
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
आरवीएम स्थापित करें।
curl -sSL https://get.rvm.io | bash -s stable
source /opt/mastodon/.rvm/scripts/rvm
अब रूबी के उपलब्ध संस्करणों की सूची प्राप्त करें।
rvm list known
आप निम्न आउटपुट देखेंगे।
[mastodon@vultr ~]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head
...
अब सूची से रूबी का नवीनतम संस्करण स्थापित करें।
rvm install 2.4
रूबी के स्थापित संस्करण का उपयोग करें।
rvm use 2.4
आपको इसके संस्करण को सत्यापित करने में सक्षम होना चाहिए।
ruby -v
आपको एक समान आउटपुट देखना चाहिए।
[mastodon@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
स्थापित करें bundler
, जो रूबी आवेदन के लिए निर्भरता प्रबंधक है।
gem install bundler
अब मास्टोडन उपयोगकर्ता के होम डायरेक्टरी पर जाएं और गिथब से एप्लिकेशन रिपॉजिटरी फ़ाइलों को क्लोन करें।
cd ~
git clone https://github.com/tootsuite/mastodon.git app
एप्लिकेशन डायरेक्टरी को स्थानांतरित करें और एप्लिकेशन के नवीनतम रिलीज की जांच करें।
cd ~/app
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
कॉन्फ़िगर bundle
PostgreSQL विन्यास के लिए एक कस्टम पथ का उपयोग करने के लिए। इसके अलावा, रूबी निर्भरता स्थापित करें।
bundle config build.pg --with-pg-config=/usr/pgsql-9.6/bin/pg_config
bundle install --deployment --without development test
यार्न का उपयोग करके Node.js निर्भरता स्थापित करें।
yarn install --pure-lockfile
आपको मास्टोडन एप्लिकेशन के लिए कॉन्फ़िगरेशन फ़ाइल बनाने की आवश्यकता होगी। नमूना कॉन्फ़िगरेशन फ़ाइल की प्रतिलिपि बनाएँ।
cd ~/app
cp .env.production.sample .env.production
फ़ाइल को संपादित करने से पहले, secrets
तीन बार निम्नलिखित कमांड चलाकर तीन अलग-अलग उत्पन्न करें । आपको कॉन्फ़िगरेशन फ़ाइल में इन रहस्यों को सेट करना होगा।
RAILS_ENV=production bundle exec rake secret
आपको एक समान आउटपुट मिलना चाहिए।
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake secret
0f17dab1cf4a07f6fac671ecd5815adcb59d012b338dae9350c66402250c6c729dccd6182b1a8f75c4fde55453ce283ea66e07ed4466cdc6d4d6974c98512967
nano
संपादक का उपयोग करके कॉन्फ़िगरेशन फ़ाइल को संपादित करें ।
nano .env.production
निम्नलिखित पंक्तियों को खोजें और उसके अनुसार मान बदलें।
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
डेटाबेस क्रेडेंशियल प्रदान करें, डेटाबेस उपयोगकर्ता के अनुसार जो आपने PostgreSQL की स्थापना के दौरान बनाया है। डेटाबेस नाम के लिए कोई भी नाम प्रदान करें क्योंकि Mastodon आपके द्वारा प्रदान किए गए नाम के साथ डेटाबेस को स्वचालित रूप से बना देगा।
DB_HOST=127.0.0.1
DB_USER=mastodon
DB_NAME=mastodon
DB_PASS=DBPassword
DB_PORT=5432
एप्लिकेशन का डोमेन नाम सेट करें।
LOCAL_DOMAIN=social.example.com
निम्नलिखित पंक्तियाँ खोजें और आपके द्वारा उत्पन्न रहस्यों का मूल्य निर्धारित करें।
PAPERCLIP_SECRET=
SECRET_KEY_BASE=
OTP_SECRET=
फ़ाइल को सहेजें और संपादक से बाहर निकलें।
अब, Web Push VAPID
कुंजियाँ बनाने के लिए निम्न कमांड चलाएँ । यदि आपने ऊपर बताई गई कॉन्फ़िगरेशन फ़ाइल में रहस्यों को सेट नहीं किया है तो आपको वेब पुश VAPID कुंजियाँ बनाते समय एक त्रुटि मिलेगी।
RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
आपको निम्न आउटपुट देखना चाहिए।
[mastodon@vultr app]$ RAILS_ENV=production bundle exec rake mastodon:webpush:generate_vapid_key
VAPID_PRIVATE_KEY=DCMQdSPkdm-mepsNh4F3suc-UIvsABCvwFd03jSVemM=
VAPID_PUBLIC_KEY=BMMVcVXmqnV0C8S_ybZ7eQH-MXBEX2exqfdPSYQiMMUF2rRxfhoEtVF931i26ebMgmslHB_nvVadOdcBPhaFEjw=
कॉन्फ़िगरेशन फ़ाइल को फिर से खोलें और उत्पन्न कुंजियों को उनकी संबंधित लाइनों में सेट करें।
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=
अंत में, अपने SMTP मेल सर्वर की जानकारी प्रदान करें ताकि एप्लिकेशन उपयोगकर्ताओं को ईमेल भेज सके। यह महत्वपूर्ण है कि आप एक कामकाजी SMTP सर्वर का उपयोग करें, जैसा कि नए पंजीकरण पर, उपयोगकर्ताओं को एक सक्रियण लिंक के साथ एक ईमेल भेजा जाएगा। नए उपयोगकर्ताओं को अपने खाते को सक्रिय करने के लिए सक्रियण लिंक पर क्लिक करना होगा।
SMTP_SERVER=mail.example.com
SMTP_PORT=456
[email protected]
SMTP_PASSWORD=MailPassword
[email protected]
SMTP_TLS=true
एक बार हो जाने के बाद, फ़ाइल को सहेजें और संपादक से बाहर निकलें। आपने मास्टोडन उदाहरण का मूल विन्यास किया है।
पहली बार PostgreSQL डेटाबेस सेटअप करें।
RAILS_ENV=production bundle exec rails db:setup
सबसे पहले, उपरोक्त कमांड कॉन्फ़िगरेशन में उल्लिखित नाम के साथ एक नया डेटाबेस बनाएगा। फिर, यह कॉन्फ़िगरेशन के अनुसार डेटाबेस लिखेगा।
कैश बनाने के लिए सभी CSS
और JavaScript
फ़ाइलों को दबाएं ।
RAILS_ENV=production bundle exec rails assets:precompile
मास्टोडन अब आपके सर्वर पर स्थापित है। अब आपको मास्टोडन सेवाओं को चलाने के लिए Nginx
एप्लिकेशन और सेटअप Systemd
सेवाओं की सेवा के लिए एक वेब सर्वर सेटअप करना होगा ।
अब से, हमें sudo
उपयोगकर्ता का उपयोग करके कमांड निष्पादित करने की आवश्यकता होगी ।
हम उपयोगकर्ताओं को एप्लिकेशन को सेवा देने के लिए Nginx वेब सर्वर को एक रिवर्स प्रॉक्सी के रूप में उपयोग करेंगे। हम लेट्स एनक्रिप्ट से एसएसएल सर्टिफिकेट भी प्राप्त और स्थापित करेंगे।
Nginx और Certbot स्थापित करें। सर्टिफोट, लेट्स एनक्रिप्ट क्रॉ के लिए क्लाइंट जारी करने वाला आधिकारिक प्रमाण पत्र है।
sudo yum -y install nginx certbot
फ़ायरवॉल के माध्यम से मानक HTTP
और HTTPS
बंदरगाहों को अनुमति देने के लिए अपनी फ़ायरवॉल सेटिंग को समायोजित करें क्योंकि सर्टिफ़बोट को डोमेन प्राधिकरण को सत्यापित करने के लिए HTTP कनेक्शन बनाने की आवश्यकता होती है।
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
नोट: लेट्स एनक्रिप्ट क्रॉ से सर्टिफिकेट प्राप्त करने के लिए, आपको यह सुनिश्चित करना होगा कि जिस डोमेन के लिए आप सर्टिफिकेट जनरेट करना चाहते हैं, वह सर्वर की ओर इंगित किया गया है। यदि नहीं, तो अपने डोमेन के DNS रिकॉर्ड में आवश्यक परिवर्तन करें और फिर से प्रमाणपत्र अनुरोध करने से पहले DNS के प्रचार के लिए प्रतीक्षा करें। सर्टिफिकेट सर्टिफिकेट प्रदान करने से पहले डोमेन प्राधिकरण की जांच करता है ।
अब अपने डोमेन के लिए प्रमाण पत्र बनाने के लिए सर्टिफिकेट में बिल्ट वेब सर्वर का उपयोग करें।
sudo certbot certonly --standalone -d social.example.com
जेनरेट किए गए प्रमाणपत्रों को /etc/letsencrypt/live/social.example.com/
निर्देशिका में संग्रहीत किए जाने की संभावना है । एसएसएल प्रमाणपत्र को बनाए रखा जाएगा fullchain.pem
और निजी कुंजी के रूप में सहेजा जाएगा privkey.pem
।
आइए, 90 दिनों में प्रमाणपत्रों को एन्क्रिप्ट करें, इसलिए क्रोन नौकरियों का उपयोग करते हुए प्रमाणपत्रों के लिए ऑटो नवीकरण की सिफारिश की जाती है। क्रोन एक प्रणाली सेवा है जिसका उपयोग आवधिक कार्यों को चलाने के लिए किया जाता है।
क्रोन जॉब फ़ाइल खोलें।
sudo crontab -e
निम्नलिखित पंक्ति जोड़ें।
0 0 * * * /usr/bin/certbot renew --quiet
उपरोक्त क्रॉन जॉब रोजाना आधी रात को चलेगी। यदि प्रमाण पत्र समाप्ति के लिए है, तो यह स्वचालित रूप से प्रमाणपत्रों को नवीनीकृत करेगा।
अब Mastodon साइट के लिए एक नया Nginx सर्वर ब्लॉक बनाएं।
sudo nano /etc/nginx/conf.d/mastodon.conf
इसके साथ फाइल को पॉप्युलेट करें।
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
listen [::]:80;
server_name social.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name social.example.com;
ssl_protocols TLSv1.2;
ssl_ciphers HIGH:!MEDIUM:!LOW:!aNULL:!NULL:!SHA;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_certificate /etc/letsencrypt/live/social.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/social.example.com/privkey.pem;
keepalive_timeout 70;
sendfile on;
client_max_body_size 0;
root /opt/mastodon/app/public;
gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
add_header Strict-Transport-Security "max-age=31536000";
location / {
try_files $uri @proxy;
}
location ~ ^/(emoji|packs|system/accounts/avatars|system/media_attachments/files) {
add_header Cache-Control "public, max-age=31536000, immutable";
try_files $uri @proxy;
}
location @proxy {
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 https;
proxy_set_header Proxy "";
proxy_pass_header Server;
proxy_pass http://127.0.0.1:3000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
location /api/v1/streaming {
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 https;
proxy_set_header Proxy "";
proxy_pass http://127.0.0.1:4000;
proxy_buffering off;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
tcp_nodelay on;
}
error_page 500 501 502 503 504 /500.html;
}
SSL प्रमाणपत्र के लिए डोमेन नाम और पथ को बदलना सुनिश्चित करें।
अब आप Nginx वेब सर्वर को शुरू कर सकते हैं और इसे बूट पर स्वचालित रूप से शुरू करने के लिए सक्षम कर सकते हैं।
sudo systemctl start nginx
sudo systemctl enable nginx
आपको 4000
फ़ायरवॉल के माध्यम से पोर्ट की अनुमति देने की भी आवश्यकता होगी क्योंकि पोर्ट स्ट्रीमिंग एपीआई सेवा प्रदान करेगा।
sudo firewall-cmd --permanent --zone=public --add-port=4000/tcp
sudo firewall-cmd --reload
मास्टोडन निर्देशिका के लिए निष्पादन की अनुमति प्रदान करें।
sudo chmod +x /opt/mastodon
मास्टोडन सर्वर को सफलतापूर्वक शुरू करने के लिए आपको तीन अलग-अलग प्रक्रियाओं को शुरू करने की आवश्यकता होगी। Systemd सेवा का उपयोग यह सुनिश्चित करेगा कि मास्टोडन सर्वर स्वचालित रूप से बूट पर शुरू हो और विफलताओं को संसाधित करता है।
मास्टोडन वेब सेवा को चलाने के लिए एक नई प्रणाली सेवा बनाएँ। यह सेवा निर्मित वेब सर्वर को पोर्ट पर लॉन्च करेगी 3000
।
sudo nano /etc/systemd/system/mastodon-web.service
फ़ाइल को निम्न सामग्री से आबाद करें।
[Unit]
Description=Mastodon Web Service
After=network.target
[Service]
Type=simple
User=mastodon
Group=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="PORT=3000"
ExecStart=/bin/bash -lc 'bundle exec puma -C config/puma.rb'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
मास्टोडन पृष्ठभूमि कतार सेवा को चलाने के लिए दूसरी Systemd सेवा बनाएँ। मैस्टोडन कतार सेवा सभी पृष्ठभूमि कार्यों का ध्यान रखती है।
sudo nano /etc/systemd/system/mastodon-queue.service
फ़ाइल को निम्न सामग्री से आबाद करें।
[Unit]
Description=Mastodon Queue Service
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="RAILS_ENV=production"
Environment="DB_POOL=5"
ExecStart=/bin/bash -lc 'bundle exec sidekiq -c 5 -q default -q mailers -q pull -q push'
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
अंत में, मास्टोडन स्ट्रीमिंग एपीआई सेवा के लिए अंतिम सेवा फ़ाइल बनाएं।
sudo nano /etc/systemd/system/mastodon-api.service
फ़ाइल को निम्न सामग्री से आबाद करें।
[Unit]
Description=Mastodon Streaming
After=network.target
[Service]
Type=simple
User=mastodon
WorkingDirectory=/opt/mastodon/app
Environment="NODE_ENV=production"
Environment="PORT=4000"
ExecStart=/bin/npm run start
TimeoutSec=15
Restart=always
[Install]
WantedBy=multi-user.target
बूट समय पर स्वचालित रूप से शुरू करने के लिए मास्टोडन सेवाओं को सक्षम करें।
sudo systemctl enable mastodon-web mastodon-queue mastodon-api
मास्टोडन सेवाओं को शुरू करने के लिए, आप इसे चला सकते हैं।
sudo systemctl start mastodon-web mastodon-queue mastodon-api
सेवाओं की स्थिति की जांच करने के लिए, आप इसे चला सकते हैं।
sudo systemctl status mastodon-web mastodon-queue mastodon-api
अब जाकर आप मास्टोडन एप्लिकेशन तक पहुंच सकते हैं https://social.example.com
। अपने सर्वर पर एक नया उपयोगकर्ता खाता बनाएँ और ईमेल में भेजे गए लिंक को खोलकर उपयोगकर्ता खाते को सत्यापित करें। आपके द्वारा अभी बनाए गए खाते में व्यवस्थापक विशेषाधिकार प्रदान करने के लिए, इसे चलाएं।
sudo su - mastodon && cd ~/app
RAILS_ENV=production bundle exec rails mastodon:make_admin USERNAME=<user_name>
<user_name>
वास्तविक उपयोगकर्ता नाम से बदलें जिसे आपने मास्टोडन इंटरफ़ेस में खाता बनाने के लिए उपयोग किया है।
आपका मास्टोडन उदाहरण अब स्थापित है और चलाने के लिए कॉन्फ़िगर किया गया है। अपने मित्रों को अपने उदाहरण में शामिल होने के लिए आमंत्रित करके शुरू करें और मास्टोडन द्वारा प्रदान की गई विशेषताओं का पता लगाएं। आप विभिन्न प्लेटफार्मों के लिए उपलब्ध किसी भी एप्लिकेशन को डाउनलोड करके मोबाइल में अपनी सोशल नेटवर्किंग साइट का उपयोग कर सकते हैं ।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ
RockMongo एक वेब-आधारित MongoDB प्रबंधन उपकरण है जो MySQL प्रबंधन उपकरण के समान है: phpMyAdmin। यह ट्यूटोरियल इंस्टॉलिन की प्रक्रिया को कवर करेगा
एक अलग प्रणाली का उपयोग? आवश्यकताएँ एक Vultr CentOS 7 सर्वर उदाहरण। एक sudo यूजर। चरण 1: सिस्टम को पहले अपडेट करें, अपने सिस्टम सर्वर को वें में अपडेट करें
एक अलग प्रणाली का उपयोग? नेटडाटा रियल-टाइम सिस्टम मेट्रिक्स मॉनिटरिंग के क्षेत्र में एक उभरता हुआ सितारा है। एक ही तरह के अन्य उपकरणों की तुलना में, नेटडाटा:
एक अलग प्रणाली का उपयोग? इस ट्यूटोरियल में, बीमार समझा जा रहा है कि CentOS 7 पर एक स्टारबाउंड सर्वर को कैसे सेटअप किया जाए। आवश्यक शर्तें आपको इस गेम को खुद पर बनाना होगा।
वेब एप्लिकेशन लिखने के लिए Django एक लोकप्रिय पायथन फ्रेमवर्क है। Django के साथ, आप तेजी से अनुप्रयोगों का निर्माण कर सकते हैं, पहिया को फिर से बनाए बिना। अगर आप चाहते हैं
एक अन्य Vultr ट्यूटोरियल में आपका स्वागत है। यहां, आप सीखेंगे कि एसएएमपी सर्वर कैसे स्थापित करें और चलाएं। यह गाइड CentOS 6 के लिए लिखा गया था
Revive Adserver एक स्वतंत्र और खुला स्रोत विज्ञापन सेवारत प्रणाली है जिसका उपयोग वेबसाइटों पर, ऐप्स में और / या वीडियो खिलाड़ियों में विज्ञापनों को प्रबंधित करने के लिए किया जा सकता है। इस लेख में,
पार्स सर्वर पार्स बैकेंड सेवा के लिए खुला स्रोत विकल्प है जिसे बंद किया जा रहा है। यदि आप इस सेवा के प्रशंसक हैं, तो आप अभी भी वें का आनंद ले सकते हैं
एक अलग प्रणाली का उपयोग? एल्ग एक खुला स्रोत सोशल नेटवर्किंग इंजन है जो परिसर के सामाजिक नेटवर्क जैसे सामाजिक वातावरण के निर्माण की अनुमति देता है
एक अलग प्रणाली का उपयोग? डायस्पोरा एक गोपनीयता-जागरूक, ओपन सोर्स सोशल नेटवर्क है। इस ट्यूटोरियल में, आप सीखेंगे कि डायस्पोरा पो को कैसे सेट और कॉन्फ़िगर करें
अवलोकन यह लेख आपको कुबेरनेट क्लस्टर प्राप्त करने और कुछ ही समय में कुबेदम के साथ चलने में मदद करने के लिए है। यह गाइड दो सर्वरों को तैनात करेगा
परिचय लिनक्स सिस्टम पर काम करने का मतलब है कि कोई कमांड लाइन का उपयोग अधिक बार नहीं कर रहा है। स्वागत के रूप में बार-बार लंबी निर्देशिका के नाम टाइप करना
ओपनकार्ट एक लोकप्रिय ओपन सोर्स शॉपिंग कार्ट सॉल्यूशन है जिसे उत्कृष्ट कार्यक्षमता, उपयोग में आसानी और उपस्थिति प्रदान करने के लिए डिज़ाइन किया गया है। OpenCart के साथ, आप सीए
एक अलग प्रणाली का उपयोग? परिचय Sails.js Node.js के लिए MVC फ्रेमवर्क है, जो रूबी ऑन रेल्स के समान है। यह आधुनिक अनुप्रयोगों को विकसित करने के लिए बनाता है
एक अलग प्रणाली का उपयोग? NGINX को HTTP / HTTPS सर्वर, रिवर्स प्रॉक्सी सर्वर, मेल प्रॉक्सी सर्वर, लोड बैलेंसर, TLS टर्मिनेटर, या कैचिन के रूप में उपयोग किया जा सकता है
एक अलग प्रणाली का उपयोग? dotCMS जावा में लिखा एक ओपन सोर्स एंटरप्राइज ग्रेड कंटेंट मैनेजमेंट सिस्टम है। इसमें लगभग हर सुविधा आवश्यक टी होती है
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ