Looge CentOS 7-s oma sotsiaalvõrgustik diasporaaga

Diaspora on privaatsust arvestav avatud lähtekoodiga sotsiaalvõrgustik. Sellest õpetusest saate teada, kuidas CentOS 7-s Diaspora podi seadistada ja konfigureerida.

Eeltingimused

  • CentOS 7 serveri eksemplar.
  • Kui töötate keskmise suurusega seadmega, peaks teie serveril olema vähemalt 512 MB muutmälu (+1 GB vahetusruumi) ja korralik mitmetuumaline protsessor.
  • Sudo kasutaja.

Installige eeltingimuste paketid

Esmalt laadige alla ja installige uusim EPEL-i versioon.

sudo yum install epel-release

Installige vajalikud paketid.

sudo yum install tar make automake gcc gcc-c++ git net-tools cmake libcurl-devel libxml2-devel libffi-devel libxslt-devel wget redis ImageMagick nodejs postgresql-devel

Lubage rediskäivitada, kui teie süsteem käivitub.

sudo systemctl enable redis
sudo systemctl start redis

Installige PostgreSQL

Diaspora toetab MySQL-i, MariaDB-d ja PostgreSQL-i. Selles juhendis kasutame PostgreSQL-i.

Installige PostgreSQL.

sudo yum install postgresql-server postgresql-contrib postgresql-setup initdb

Lubage PostgreSQL-i käivitamine, kui teie süsteem käivitub.

sudo systemctl enable postgresql
sudo systemctl start postgresql

Ühendage postgreskasutajaga PostgreSQL-iga .

sudo -u postgres psql

Looge diasporaa kasutaja.

CREATE USER diaspora WITH CREATEDB PASSWORD '<password>';

Lisage pühendunud diasporaakasutaja

See on kasutajakonto, mis käivitab Diaspora.

sudo adduser --disabled-login diaspora

Lülituge uuele kasutajale.

sudo  su - diaspora

Installige Ruby

Ruby installimiseks on mitu võimalust. Kasutame rbenvkeskkonna ja versioonide haldamiseks.

Esiteks peate installima Ruby nõutavad paketid.

sudo yum install -y git-core zlib zlib-devel gcc-c++ patch readline readline-devel libyaml-devel libffi-devel openssl-devel make bzip2 autoconf automake libtool bison curl sqlite-devel

Installige rbenv.

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

Tee uuesti laadimiseks ühendage uuesti.

exit
sudo su - diaspora

Ruby kompileerimiseks installige ruby-buildplugin jaoks rbenv.

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

Installige Ruby.

rbenv install 2.4.3
rbenv global 2.4.3

Seadistage meiliserver

Kasutame Postfixi kasutajatele e-kirjade saatmiseks SMTP-releena. Sellest artiklist saate teada, kuidas installida lihtsat meiliserverit, kus Postfix on MTA, Dovecot kui MDA ja Sieve kirjade sorteerimiseks.

Installige ja konfigureerige Diaspora

Kloonige diasporaa lähtekood.

cd ~
git clone -b master https://github.com/diaspora/diaspora.git
cd diaspora

Kopeerige näidisandmebaasi konfiguratsioonifail Diaspora nõutud asukohta.

cp config/database.yml.example config/database.yml
cp config/diaspora.yml.example config/diaspora.yml

Mõne sätte muutmiseks avage tekstiredaktoris andmebaasi konfiguratsioonifail.

nano config/database.yml

Muutke andmebaasi sätteid, et need vastaksid varem loodud PostgreSQL-i kasutajale ja paroolile.

postgresql: &postgresql
adapter: postgresql
host: localhost
port: 5432
username: diaspora
password: __password__
encoding: unicode

Avage diasporaa konfiguratsioonifail.

nano config/diaspora.yml

Diaspora korrektseks toimimiseks peate selles failis mõnda seadet värskendama.

  • url: määrake siin oma kausta avalik URL.
  • certificate_authorities: eemaldage ees olev #, et seda kommenteerida.
  • rails_environment: Peate määrama selle tootmiseks.
  • require_ssl: määrake väärtuseks Väär, et vältida ümbersuunamist aadressilt http:// aadressile https://.

Installige vajalikud kalliskivid

Installige Ruby raamatukogu haldur Bundle.

gem install bundler
script/configure_bundler

Märkus : kui teil on Ruby versiooniga seoses vigu, muutke .ruby-versionja pange oma (siia 2.4.3asemel 2.4).

Andmebaasi seadistamine

Looge ja konfigureerige andmebaas.

RAILS_ENV=production bin/rake db:create db:migrate

Varade eelkoostamine

See rake käsk kompileerib varad.

RAILS_ENV=production bin/rake assets:precompile

Diaspora süsteemiteenused

Diasporaa kui teenuse haldamiseks on palju võimalusi. Selles õpetuses kasutame Systemd.

Esiteks looge järgmised failid.

  • systemd targetfail:

    touch /etc/systemd/system/diaspora.target
    
  • systemd webservice fail:

    touch /etc/systemd/system/diaspora-web.service
    
  • systemd sidekiqservice fail:

    touch /etc/systemd/system/diaspora-sidekiq.service
    

Kleepige iga varem loodud faili jaoks järgmine konfiguratsioonitekst.

target fail:

[Unit]
Description=Diaspora social network
Wants=postgresql.service
Wants=redis-server.service
After=redis-server.service
After=postgresql.service

[Install]
WantedBy=multi-user.target

web teenindusfail:

[Unit]
Description=Diaspora social network (unicorn)
PartOf=diaspora.target
StopWhenUnneeded=true

[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec unicorn -c config/unicorn.rb -E production"
Restart=always

[Install]
WantedBy=diaspora.target

sidekiq teenindusfail:

[Unit]
Description=Diaspora social network (sidekiq)
PartOf=diaspora.target
StopWhenUnneeded=true

[Service]
User=diaspora
Environment=RAILS_ENV=production
WorkingDirectory=/home/diaspora/diaspora
ExecStart=/bin/bash -lc "bin/bundle exec sidekiq"
Restart=always

[Install]
WantedBy=diaspora.target

Luba alglaadimisteenused.

sudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service

Taaskäivitage teenused.

sudo systemctl restart diaspora.target

Veenduge, et need töötaksid õigesti.

sudo systemctl status diaspora-web.service
sudo systemctl status diaspora-sidekiq.service

Nginxi pöördpuhverserver

Staatiliste ressursside teenindamiseks kasutame Nginxi pöördpuhverserverina.

Kasutame Let's Encrypt sertifikaadi saamiseks acme.sh.

Laadige alla acme.shlähtekood.

git clone https://github.com/Neilpang/acme.sh.git

Looge Let's Encrypt sertifikaat.

./.acme.sh/acme.sh --issue --log \
--dns \
--keylength ec-256 \
--cert-file /etc/nginx/https/cert.pem \
--key-file /etc/nginx/https/key.pem \
--fullchain-file /etc/nginx/https/fullchain.pem \
-d example.com \
-d www.example.com

Installige Nginx.

sudo yum install nginx

Looge meie Diaspora pod jaoks uus Nginxi konfiguratsioonifail.

nano /etc/nginx/conf.d/diaspora.conf

Täitke fail järgmise sisuga.

upstream diaspora_server {
 server unix:/home/diaspora/diaspora/tmp/diaspora.sock;
}

server {
  listen 80;
  listen [::]:80; 
  server_name www.example.com example.com;
  return 301 https://example.com$request_uri;

  access_log /dev/null;
  error_log /dev/null;
}

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;
  server_name www.example.com example.com;

  if ($host = www.example.com) {
   return 301 https://example.com$request_uri;
  }

  access_log /var/log/nginx/dspr-access.log;
  error_log /var/log/nginx/dspr-error.log;

  ssl_certificate /etc/nginx/https/fullchain.pem;
  ssl_certificate_key /etc/nginx/https/key.pem;

  ssl_protocols TLSv1.2;
  ssl_ciphers EECDH+CHACHA20:EECDH+AESGCM:EECDH+AES;
  ssl_ecdh_curve X25519:P-521:P-384:P-256;
  ssl_prefer_server_ciphers on;
  ssl_stapling on;
  ssl_stapling_verify on;
  resolver 80.67.169.40 80.67.169.12 valid=300s;
  resolver_timeout 5s;
  ssl_session_cache shared:SSL:10m;

  root /home/diaspora/diaspora/public;

  client_max_body_size 5M;
  client_body_buffer_size 256K;

  try_files $uri @diaspora;

  location /assets/ {
    expires max;
    add_header Cache-Control public;
  }

  location @diaspora {
    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 Host $http_host;
    proxy_redirect off;
    proxy_pass http://diaspora_server;
  }
}

Märkus : muutke example.comoma registreeritud domeeninimeks.

Kui kõik muudatused on lõpule viidud, kontrollige konfiguratsioonifailis vigu.

sudo nginx -t

Muudatuste rakendamiseks taaskäivitage Nginx.

sudo systemctl restart nginx

Kui kasutate tulemüüri, käivitage lubamiseks HTTPja HTTPSliikluseks järgmised käsud .

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Kui külastate nüüd oma brauseris ( https://example.com) oma Diaspora podi domeeninime , jõuate diasporaa tervituslehele.

Looge diasporaakasutaja

Start by creating an account.Uue diasporaa kasutaja loomiseks klõpsake lingil ja sisestage andmed. Seejärel saate vaadata oma kasutaja kodulehte ja hakata kasutama diasporaa sotsiaalvõrgustikku.

Pärast konto loomist andke sellele administraatori õigused.

Role.add_admin User.where(username: "your_username").first.person

Nüüd on teil juurdepääs administraatori armatuurlauale.

https://example.com/admins/dashboard

Sidekiq

Taustatööde töötlemisega tegeleval Sidekiqil on veebiliides saadaval aadressil https://example.com/sidekiq. Podstatistika on saadaval aadressil https://example.com/statistics.

Logrotate

Kasutame logrotatediasporaa logide haldamiseks.

Looge logrotatediasporaa jaoks uus fail.

nano /etc/logrotate/diaspora

Seejärel lisage järgmised read.

/home/diaspora/diaspora/log/*.log {
  notifempty
  copytruncate
  missingok
  compress
  weekly
  rotate 52
}

See pöörab palke kord nädalas, surub need kokku ja hoiab neid 52 nädalat.

Uuenda diasporaa

Kui on aeg Diasporat värskendada, järgige neid samme.

Esiteks uuendage installitud pakette.

sudo yum update

Värskendage diasporaa lähtekoodi giti abil.

su - diaspora
cd diaspora
git pull

Värskendage kalliskive.

gem install bundler
bin/bundle --full-index

Migreerige andmebaas ja kompileerige varad uuesti.

RAILS_ENV=production bin/rake db:migrate
RAILS_ENV=production bin/rake assets:precompile

Lõpuks taaskäivitage Diaspora.

systemctl restart diaspora.target

Installige Plesk operatsioonisüsteemi CentOS 7

Installige Plesk operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Plesk on patenteeritud veebihosti juhtpaneel, mis võimaldab kasutajatel hallata oma isiklikke ja/või klientide veebisaite, andmebaase

Kuidas installida CentOS-i Squid Proxy

Kuidas installida CentOS-i Squid Proxy

Squid on populaarne tasuta Linuxi programm, mis võimaldab teil luua edastamise veebipuhverserveri. Selles juhendis näete, kuidas installida Squid CentOS-i, et teid pöörata

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Sissejuhatus Lighttpd on Apache'i hark, mille eesmärk on olla palju vähem ressursimahukas. See on kerge, sellest ka oma nimi, ja seda on üsna lihtne kasutada. Installin

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

VULTR on hiljuti teinud nende osas muudatusi ja kõik peaks nüüd töötama hästi, kui NetworkManager on lubatud. Kui soovite keelata

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 on võimas seiresüsteem ja kui seda kasutatakse põhikliendi mudelis, võib see asendada vajaduse NRPE-põhiste seirekontrollide järele. Meister-klient

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Microweber on avatud lähtekoodiga pukseeritav CMS-i ja veebipood. Microweberi lähtekoodi majutatakse GitHubis. See juhend näitab teile

Mattermost 4.1 installimine CentOS 7-sse

Mattermost 4.1 installimine CentOS 7-sse

Kas kasutate teistsugust süsteemi? Mattermost on avatud lähtekoodiga isehostitav alternatiiv Slack SAAS-i sõnumsideteenusele. Teisisõnu, Mattermostiga saate ca

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Mida vajate Vultr VPS-i, millel on vähemalt 1 GB muutmälu. SSH-juurdepääs (juur-/administraatoriõigustega). 1. samm: BungeeCordi installimine Kõigepealt

Võimaldab Pleskis krüptida

Võimaldab Pleskis krüptida

Pleski juhtpaneelil on Lets Encrypti jaoks väga kena integratsioon. Lets Encrypt on üks ainsatest SSL-i pakkujatest, kes väljastab sertifikaate täielikult

Võimaldab krüptida cPanelil

Võimaldab krüptida cPanelil

Lets Encrypt on sertifitseerimisasutus, mis on pühendunud SSL-sertifikaatide tasuta pakkumisele. cPanel on teie ja teie kliendi jaoks loonud korraliku integratsiooni

Kuidas installida Concrete5 süsteemi CentOS 7

Kuidas installida Concrete5 süsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Concrete5 on avatud lähtekoodiga CMS, mis pakub palju eristatavaid ja kasulikke funktsioone, mis aitavad toimetajatel sisu hõlpsalt luua.

Kuidas installida CentOS 7 arvustuspaneeli

Kuidas installida CentOS 7 arvustuspaneeli

Kas kasutate teistsugust süsteemi? Review Board on tasuta avatud lähtekoodiga tööriist lähtekoodi, dokumentatsiooni, piltide ja palju muu ülevaatamiseks. See on veebipõhine tarkvara

Setup HTTP Authentication With Nginx on CentOS 7

Setup HTTP Authentication With Nginx on CentOS 7

In this guide, you will learn how to setup HTTP authentication for an Nginx web server running on CentOS 7. Requirements To get started, youll need th

Kuidas installida YOURLS süsteemi CentOS 7

Kuidas installida YOURLS süsteemi CentOS 7

YOURLS (Your Own URL Shortener) on avatud lähtekoodiga URL-i lühendamise ja andmeanalüüsi rakendus. Selles artiklis käsitleme installimisprotsessi

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kas kasutate teistsugust süsteemi? Sissejuhatus ArangoDB on avatud lähtekoodiga NoSQL-i andmebaas, millel on paindlik andmemudel dokumentide, graafikute ja võtmeväärtuste jaoks. see on

Etckeeperi kasutamine faili / etc versioonikontrolliks

Etckeeperi kasutamine faili / etc versioonikontrolliks

Sissejuhatus Kataloog /etc/ mängib Linuxi süsteemi toimimises kriitilist rolli. Selle põhjuseks on peaaegu iga süsteemi konfiguratsioon

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Paljud süsteemiadministraatorid haldavad suuri servereid. Kui failidele on vaja juurde pääseda erinevatest serveritest, logige igasse eraldi sisse ca

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

See õpetus hõlmab Half Life 2 mänguserveri installimist süsteemi CentOS 6 System. 1. samm: eeltingimuste installimine Ou seadistamiseks

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Laravel GitScrum ehk GitScrum on avatud lähtekoodiga produktiivsuse tööriist, mis on loodud selleks, et aidata arendusmeeskondadel rakendada Scrumi metoodikat sarnasel viisil.

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit