Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Diaspora adalah rangkaian sosial sumber terbuka, privasi. Dalam tutorial ini, anda akan belajar bagaimana mengatur dan mengkonfigurasi pod Diaspora di Debian 9.
Pertama, kemas kini sistem dan pasangkan pakej yang diperlukan.
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
Diaspora menyokong MySQL, MariaDB, dan PostgreSQL. Dalam panduan ini, kami akan menggunakan PostgreSQL.
Pasang PostgreSQL.
sudo apt-get install PostgreSQL-server
Sambung ke PostgreSQL dengan postgres
pengguna.
sudo -u postgres psql
Buat pengguna Diaspora.
CREATE USER diaspora WITH CREATEDB PASSWORD '<password>';
Ini adalah akaun pengguna yang akan menjalankan Diaspora.
sudo adduser --disabled-login diaspora
Beralih kepada pengguna baru.
sudo su - diaspora
Terdapat beberapa cara untuk memasang Ruby. Kami akan gunakan rbenv
untuk mengurus persekitaran dan versi.
Pertama, anda perlu memasang pakej yang diperlukan oleh Ruby.
sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
Pasang 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
Sambung semula untuk memuatkan semula jalan.
exit
sudo su - diaspora
Pasang ruby-build
plugin untuk rbenv
menyusun Ruby:
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Pasang Ruby.
rbenv install 2.4.3
rbenv global 2.4.3
Kami akan menggunakan Exim4 sebagai relay SMTP untuk menghantar e-mel kepada pengguna.
Pasang dan konfigurasikan pakej tersebut.
sudo apt-get install exim4
sudo dpkg-reconfigure exim4-config
Klon kod sumber untuk Diaspora.
cd ~
git clone -b master https://github.com/diaspora/diaspora.git
cd diaspora
Salin contoh fail konfigurasi pangkalan data ke lokasi yang diperlukan oleh Diaspora.
cp config/database.yml.example config/database.yml
cp config/diaspora.yml.example config/diaspora.yml
Buka fail konfigurasi pangkalan data dalam editor teks untuk mengedit sesetengah tetapan.
nano config/database.yml
Ubah tetapan pangkalan data agar sesuai dengan pengguna dan kata laluan PostgreSQL yang anda buat sebelumnya.
postgresql: &postgresql
adapter: postgresql
host: localhost
port: 5432
username: diaspora
password: __password__
encoding: unicode
Buka fail konfigurasi Diaspora.
nano config/diaspora.yml
Anda perlu mengemas kini beberapa tetapan dalam fail ini untuk Diaspora untuk berfungsi dengan betul.
url
: Tetapkan URL menghadap orang ramai ke pod anda di sini.certificate_authorities
: Keluarkan yang mengarah #
kepada ketidakpuasannya.rails_environment
: Anda mesti menetapkan ini production
.require_ssl
: Tetapkan ini kepada false
untuk mengelakkan lencongan dari http://
ke https://
.Pasang Bundle, pengurus perpustakaan Ruby.
gem install bundler
script/configure_bundler
Catatan: Jika anda mempunyai kesalahan mengenai versi Ruby, edit .ruby-version
dan letakkan sendiri (di sini 2.4.3
bukan 2.4
).
Buat dan konfigurasi pangkalan data.
RAILS_ENV=production bin/rake db:create db:migrate
Perintah rake ini akan mempercepatkan aset.
RAILS_ENV=production bin/rake assets:precompile
Terdapat banyak cara untuk menguruskan Diaspora sebagai perkhidmatan. Dalam tutorial ini, kami akan menggunakan Systemd.
Pertama, buat fail berikut.
target
fail systemd :touch /etc/systemd/system/diaspora.target
web
fail perkhidmatan sistem :touch /etc/systemd/system/diaspora-web.service
sidekiq
fail perkhidmatan sistem :touch /etc/systemd/system/diaspora-sidekiq.service
Tampal teks konfigurasi berikut untuk setiap fail yang anda buat sebelumnya.
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
fail perkhidmatan:
[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
fail perkhidmatan:
[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
Dayakan perkhidmatan but.
sudo systemctl enable diaspora.target diaspora-sidekiq.service diaspora-web.service
Mulakan semula perkhidmatan.
sudo systemctl restart diaspora.target
Pastikan ia berjalan dengan betul.
sudo systemctl status diaspora-web.service
sudo systemctl status diaspora-sidekiq.service
Kami akan menggunakan Nginx sebagai proksi terbalik untuk menyediakan sumber statik.
Kami akan menggunakan acme.sh untuk mendapatkan sijil Encrypt Let's.
Muat turun acme.sh
kod sumber.
git clone https://github.com/Neilpang/acme.sh.git
Buat sijil Let's Encrypt.
./.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
Pasang Nginx.
sudo apt-get install nginx
Buat fail konfigurasi Nginx baru untuk pod Diaspora kami.
nano /etc/nginx/conf.d/diaspora.conf
Isi fail dengan kandungan berikut.
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;
}
}
Catatan: tukar example.com
ke nama domain berdaftar anda sendiri.
Selepas semua pengubahsuaian telah selesai, periksa fail konfigurasi untuk sebarang kesilapan.
sudo nginx -t
Mulakan semula Nginx untuk menerapkan perubahan.
sudo systemctl restart nginx
Jika anda kini melawat nama domain pod Diaspora anda dalam penyemak imbas anda (contoh:) https://example.com
, anda akan sampai ke halaman selamat datang Diaspora.
Klik pautan masuk Start by creating an account.
, dan isikan butiran untuk mencipta pengguna Diaspora baru. Kemudian, anda akan dapat melihat halaman utama pengguna anda dan mula menggunakan rangkaian sosial Diaspora.
Setelah anda membuat akaun, berikan hak pentadbir:.
Role.add_admin User.where(username: "your_username").first.person
Anda kini mempunyai akses ke papan pemuka pentadbir.
https://example.com/admins/dashboard
Sidekiq, yang mengendalikan pemprosesan latar belakang pekerjaan, mempunyai antara muka web yang tersedia di https://example.com/sidekiq
. Stat pod boleh didapati di https://example.com/statistics
.
Kami akan gunakan logrotate
untuk menguruskan log Diaspora.
Buat logrotate
fail baru untuk Diaspora.
nano /etc/logrotate/diaspora
Kemudian, tambahkan baris berikut.
/home/diaspora/diaspora/log/*.log {
notifempty
copytruncate
missingok
compress
weekly
rotate 52
}
Ini akan memutar log setiap minggu, memampatkannya dan menyimpannya selama 52 minggu.
Apabila tiba masanya untuk mengemas kini Diaspora, ikuti langkah-langkah ini.
Pertama, kemas kini sistem.
sudo apt-get update
sudo apt-get dist-upgrade
Kemas kini kod sumber Diaspora dengan git
.
su - diaspora
cd diaspora
git pull
Kemas kini permata.
gem install bundler
bin/bundle --full-index
Pindahkan pangkalan data dan kumpulkan semula aset.
RAILS_ENV=production bin/rake db:migrate
RAILS_ENV=production bin/rake assets:precompile
Akhirnya, mulakan semula Diaspora.
systemctl restart diaspora.target
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut