Rakenna sosiaalinen verkostosi Diasporan kanssa Debian 9:ssä

Diaspora on tietosuojatietoinen avoimen lähdekoodin sosiaalinen verkosto. Tässä opetusohjelmassa opit asentamaan ja määrittämään Diaspora-podin Debian 9:ssä.

Edellytykset

  • Debian 9 -palvelinesiintymä.
  • Keskikokoista podia käyttäessäsi palvelimellasi tulisi olla vähintään 512 Mt RAM-muistia (+1 Gt swap-tilaa) ja kunnollinen moniytiminen prosessori.
  • Sudo käyttäjä.

Asenna edellytyspaketit

Päivitä ensin järjestelmä ja asenna tarvittavat paketit.

sudo apt-get update
sudo apt-get install build-essential libssl-dev libcurl4-openssl-dev libxml2-dev libxslt-dev imagemagick ghostscript curl libmagickwand-dev git libpq-dev redis-server nodejs

Asenna PostgreSQL

Diaspora tukee MySQL, MariaDB ja PostgreSQL. Tässä oppaassa käytämme PostgreSQL:ää.

Asenna PostgreSQL.

sudo apt-get install PostgreSQL-server

Yhdistä PostgreSQL:ään postgreskäyttäjän kanssa.

sudo -u postgres psql

Luo Diaspora-käyttäjä.

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

Lisää omistautunut diasporakäyttäjä

Tämä on käyttäjätili, joka käyttää Diasporaa.

sudo adduser --disabled-login diaspora

Vaihda uuteen käyttäjään.

sudo  su - diaspora

Asenna Ruby

On olemassa useita tapoja asentaa Ruby. Käytämme rbenvympäristön ja versioiden hallintaan.

Ensin sinun on asennettava Rubyn tarvitsemat paketit.

sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev

Asenna 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

Muodosta yhteys uudelleen ladataksesi polun.

exit
sudo su - diaspora

Asenna ruby-buildplugin for rbenvkääntääksesi Ruby:

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

Asenna Ruby.

rbenv install 2.4.3
rbenv global 2.4.3

Asenna Exim4

Käytämme Exim4:ää SMTP-välitteenä sähköpostien lähettämiseen käyttäjille.

Asenna ja määritä paketti.

sudo apt-get install exim4
sudo dpkg-reconfigure exim4-config

Asenna ja määritä Diaspora

Kloonaa Diasporan lähdekoodi.

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

Kopioi esimerkkitietokannan määritystiedosto Diasporan vaatimaan paikkaan.

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

Muokkaa joitain asetuksia avaamalla tietokannan määritystiedosto tekstieditorissa.

nano config/database.yml

Muuta tietokannan asetukset vastaamaan aiemmin luomaasi PostgreSQL-käyttäjää ja salasanaa.

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

Avaa Diaspora-määritystiedosto.

nano config/diaspora.yml

Sinun on päivitettävä joitakin tämän tiedoston asetuksia, jotta Diaspora toimii oikein.

  • url: Aseta podillesi julkinen URL-osoite tässä.
  • certificate_authorities: Poista johti #sen kommentin poistamiseksi.
  • rails_environment: Sinun on asetettava tämä arvoon production.
  • require_ssl: Aseta tämä falseestää uudelleenohjausta http://ja https://.

Asenna vaaditut jalokivet

Asenna Bundle, Ruby-kirjaston hallinta.

gem install bundler
script/configure_bundler

Huomautus: Jos sinulla on virheitä Ruby-versiossasi, muokkaa .ruby-versionja laita omasi (tähän 2.4.3sen sijaan 2.4).

Asenna tietokanta

Luo ja määritä tietokanta.

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

Kokoa omaisuus etukäteen

Tämä rake-komento esikääntää resurssit.

RAILS_ENV=production bin/rake assets:precompile

Diaspora järjestelmäpalvelut

Diasporaa voidaan hallita palveluna monella tapaa. Tässä opetusohjelmassa käytämme Systemd.

Luo ensin seuraavat tiedostot.

  • systemd- targettiedosto:touch /etc/systemd/system/diaspora.target
  • systemd- webpalvelutiedosto:touch /etc/systemd/system/diaspora-web.service
  • systemd- sidekiqpalvelutiedosto:touch /etc/systemd/system/diaspora-sidekiq.service

Liitä seuraava asetusteksti jokaiselle aiemmin luomillesi tiedostolle.

target tiedosto:

[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 palvelutiedosto:

[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 palvelutiedosto:

[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

Ota käynnistyspalvelut käyttöön.

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

Käynnistä palvelut uudelleen.

sudo systemctl restart diaspora.target

Varmista, että ne toimivat oikein.

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

Nginx käänteinen välityspalvelin

Käytämme Nginxiä käänteisenä välityspalvelimena palvelemaan staattisia resursseja.

Käytämme acme.sh- tiedostoa saadaksemme Let's Encrypt -sertifikaatin.

Lataa acme.shlähdekoodi.

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

Luo Let's Encrypt -sertifikaatti.

./.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

Asenna Nginx.

sudo apt-get install nginx

Luo uusi Nginx-määritystiedosto Diaspora podillemme.

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

Täytä tiedosto seuraavalla sisällöllä.

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;
  }
}

Huomautus: vaihda example.comomaan rekisteröityyn verkkotunnukseesi.

Kun kaikki muutokset on tehty, tarkista asetustiedostosta mahdolliset virheet.

sudo nginx -t

Ota muutokset käyttöön käynnistämällä Nginx uudelleen.

sudo systemctl restart nginx

Jos vierailet nyt selaimessasi Diaspora pod -verkkotunnuksen nimessä (esimerkki: https://example.com), pääset Diasporan tervetulosivulle.

Luo diaspora-käyttäjä

Napsauta linkkiä Start by creating an account.ja täytä tiedot luodaksesi uuden Diaspora-käyttäjän. Sen jälkeen voit tarkastella käyttäjäsi kotisivua ja alkaa käyttää Diaspora-sosiaalista verkostoa.

Kun olet luonut tilin, anna sille järjestelmänvalvojan oikeudet:.

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

Sinulla on nyt pääsy järjestelmänvalvojan hallintapaneeliin.

https://example.com/admins/dashboard

Sidekiq

Taustatöiden käsittelyä hoitavalla Sidekiqillä on web-käyttöliittymä osoitteessa https://example.com/sidekiq. Pod-tilastot ovat saatavilla osoitteessa https://example.com/statistics.

Logrotate

Käytämme logrotateDiaspora-lokien hallintaan.

Luo uusi logrotatetiedosto Diasporalle.

nano /etc/logrotate/diaspora

Lisää sitten seuraavat rivit.

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

Tämä pyörittää tukkeja viikoittain, puristaa ne ja säilyttää ne 52 viikkoa.

Päivitä Diaspora

Kun on aika päivittää Diaspora, noudata näitä ohjeita.

Ensin päivitä järjestelmä.

sudo apt-get update
sudo apt-get dist-upgrade

Päivitä Diaspora-lähdekoodi git.

su - diaspora
cd diaspora
git pull

Päivitä helmiä.

gem install bundler
bin/bundle --full-index

Siirrä tietokanta ja käännä resurssit uudelleen.

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

Lopuksi käynnistä Diaspora uudelleen.

systemctl restart diaspora.target

Asenna Cacti Debian Jessielle

Asenna Cacti Debian Jessielle

Johdanto Cacti on avoimen lähdekoodin seuranta- ja grafiikkatyökalu, joka perustuu täysin RRD-tietoihin. Cactin kautta voit seurata lähes minkä tahansa tyyppisiä laitteita

Asenna iRedMail Debian Wheezylle

Asenna iRedMail Debian Wheezylle

Käytätkö erilaista järjestelmää? Tämä opetusohjelma näyttää kuinka asennat ryhmätyöohjelman iRedMail uuteen Debian Wheezy -asennukseen. Sinun pitäisi käyttää tarjoilua

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Käytätkö erilaista järjestelmää? Jos ostat Debian-palvelimen, sinulla pitäisi aina olla viimeisimmät tietoturvakorjaukset ja -päivitykset riippumatta siitä, oletko nukkumassa vai ei.

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Tämä opetusohjelma selittää, kuinka DNS-palvelin määritetään Bind9:n avulla Debianissa tai Ubuntussa. Korvaa koko artikkelin ajan verkkotunnuksesi-nimi.com vastaavasti. klo th

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Tässä artikkelissa näemme, kuinka Nginx-päälinja voidaan kääntää ja asentaa virallisista Nginx-lähteistä PageSpeed-moduulilla, jonka avulla voit

Kanboardin asentaminen Debian 9:ään

Kanboardin asentaminen Debian 9:ään

Käytätkö erilaista järjestelmää? Johdanto Kanboard on ilmainen ja avoimen lähdekoodin projektinhallintaohjelmisto, joka on suunniteltu helpottamaan ja visualisoimaan

Gitean asentaminen Debian 9:ään

Gitean asentaminen Debian 9:ään

Käytätkö erilaista järjestelmää? Gitea on vaihtoehtoinen avoimen lähdekoodin, itseisännöity versionhallintajärjestelmä, jota käyttää Git. Gitea on kirjoitettu golangilla ja on

Asenna Lynis Debian 8:aan

Asenna Lynis Debian 8:aan

Johdanto Lynis on ilmainen, avoimen lähdekoodin järjestelmän tarkastustyökalu, jota monet järjestelmänvalvojat käyttävät järjestelmiensä eheyden tarkistamiseen ja vahvistamiseen. minä

Thelia 2.3:n asentaminen Debian 9:ään

Thelia 2.3:n asentaminen Debian 9:ään

Käytätkö erilaista järjestelmää? Thelia on avoimen lähdekoodin työkalu sähköisen liiketoiminnan verkkosivustojen luomiseen ja PHP:llä kirjoitetun online-sisällön hallintaan. Thelia-lähdekoodi i

Minecraft-palvelinverkon luominen BungeeCordilla Debian 8:ssa, Debian 9:ssä tai CentOS 7:ssä

Minecraft-palvelinverkon luominen BungeeCordilla Debian 8:ssa, Debian 9:ssä tai CentOS 7:ssä

Mitä tarvitset Vultr VPS:n, jossa on vähintään 1 Gt RAM-muistia. SSH-käyttö (pääkäyttäjän/järjestelmänvalvojan oikeuksilla). Vaihe 1: BungeeCordin asentaminen Ensimmäiset asiat ensin

Golang 1.8.3:n asentaminen CentOS 7:ään, Ubuntu 16.04:ään ja Debian 9:ään

Golang 1.8.3:n asentaminen CentOS 7:ään, Ubuntu 16.04:ään ja Debian 9:ään

Golang on Googlen kehittämä ohjelmointikieli. Monipuolisuuden, yksinkertaisuuden ja luotettavuuden ansiosta Golangista on tullut yksi suosituimmista

Palauta MySQL-pääsalasana Debianissa/Ubuntussa

Palauta MySQL-pääsalasana Debianissa/Ubuntussa

Jos olet unohtanut MySQL-pääkäyttäjän salasanasi, voit nollata sen noudattamalla tämän artikkelin ohjeita. Prosessi on melko yksinkertainen ja toimii niillä

Verkkoosuuksien luominen Samballa Debianissa

Verkkoosuuksien luominen Samballa Debianissa

Joskus meidän on jaettava tiedostoja, joiden on oltava Windows-asiakkaiden nähtävissä. Koska Fuse-pohjaiset järjestelmät toimivat vain Linuxissa, olkaa hyvä

Counter Strike -ohjelman käyttöönotto: Lähde Debianissa

Counter Strike -ohjelman käyttöönotto: Lähde Debianissa

Tässä oppaassa asennamme Counter Strike: Source -pelipalvelimen Debian 7:lle. Nämä komennot testattiin Debian 7:ssä, mutta niiden pitäisi myös toimia.

Unturned 2.2.5:n asentaminen Debian 8:aan

Unturned 2.2.5:n asentaminen Debian 8:aan

Tässä oppaassa opit asentamaan Unturned 2.2.5 -palvelimen Vultr VPS:ään, jossa on Debian 8. Huomautus: Tämä on muokattu versio Unturnedista, joka ei

Cachetin asentaminen Debian 8:aan

Cachetin asentaminen Debian 8:aan

Tässä opetusohjelmassa opit asentamaan Cachet Debian 8:aan. Cachet on tehokas avoimen lähdekoodin tilasivujärjestelmä. Asennus Tämä opetusohjelma on käynnissä

Varmuuskopioi useita MySQL- tai MariaDB-tietokantoja automaattisesti

Varmuuskopioi useita MySQL- tai MariaDB-tietokantoja automaattisesti

Johdanto Tässä kirjoituksessa käydään läpi kuinka varmuuskopioida useita samassa koneessa olevia MySQL- tai MariaDB-tietokantoja mukautetulla bash-skriptillä

Chrootin määrittäminen Debianissa

Chrootin määrittäminen Debianissa

Tämä artikkeli opettaa sinulle kuinka chroot-vankila asetetaan Debianille. Oletan, että käytät Debian 7.x:ää. Jos käytät Debian 6 tai 8, tämä saattaa toimia, bu

Reader Self 3.5 RSS Readerin asentaminen Debian 9 LAMP VPS:ään

Reader Self 3.5 RSS Readerin asentaminen Debian 9 LAMP VPS:ään

Käytätkö erilaista järjestelmää? Reader Self 3.5 on yksinkertainen ja joustava, ilmainen ja avoimen lähdekoodin itseisännöity RSS-lukija ja Google Reader -vaihtoehto. Lukija Sel

Backdrop CMS 1.8.0:n asentaminen Debian 9 LAMP VPS:ään

Backdrop CMS 1.8.0:n asentaminen Debian 9 LAMP VPS:ään

Käytätkö erilaista järjestelmää? Backdrop CMS 1.8.0 on yksinkertainen ja joustava, mobiiliystävällinen, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), jonka avulla voimme

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja