FreeBSD 12 Mailtrain Haber Bülteni Uygulaması Nasıl Kurulur

Mailtrain , Node.js ve MySQL / MariaDB üzerine kurulmuş açık kaynaklı, kendi kendine barındırılan bir bülten uygulamasıdır. Mailtrain'in kaynağı GitHub'da . Bu kılavuz Mailtrain'i yeni bir FreeBSD 12 Vultr örneğine nasıl yükleyeceğinizi gösterecektir.

Gereksinimler

  • Yazılım gereksinimleri:
    • Node.js v7 veya üstü
    • MySQL v5.5
    • nginx
    • Redis (isteğe bağlı)
  • Donanım Gereksinimleri:
    • 1 vCPU
    • 1024 MB RAM

Sen başlamadan önce

FreeBSD sürümünü kontrol edin.

uname -ro
# FreeBSD 12.0-RELEASE

FreeBSD sisteminizin güncel olduğundan emin olun.

freebsd-update fetch install
pkg update && pkg upgrade -y

Gerekli paketleri kurun.

pkg install -y sudo vim unzip wget git bash socat

Tercih ettiğiniz kullanıcı adıyla yeni bir kullanıcı hesabı oluşturun (kullanacağız johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Grup üyelerinin herhangi bir komutu yürütmesine izin vermek için visudokomutu ve uncomment komutunu çalıştırın.%wheel ALL=(ALL) ALLwheel

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Şimdi sukomutuyla yeni oluşturulan kullanıcınıza geçin .

su - johndoe

NOT: Kullanıcı adınızla değiştirin johndoe.

Saat dilimini ayarlayın.

sudo tzsetup

Node.js ve npm'yi yükleyin

Node.js ve npm'yi yükleyin.

sudo pkg install -y node10 npm-node10

Sürümleri kontrol edin.

node -v && npm -v
# v10.15.3
# 6.9.0

MariaDB'yi yükleyin

MariaDB'yi yükleyin.

sudo pkg install -y mariadb102-client mariadb102-server

Versiyonu kontrol et.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

MariaDB'yi başlatın ve etkinleştirin.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

mysql_secure_installationMariaDB kurulumunuzun güvenliğini artırmak için komut dosyasını çalıştırın .

sudo mysql_secure_installation

Kök kullanıcı olarak MariaDB'de oturum açın.

mysql -u root -p
# Enter password:

Yeni bir MariaDB veritabanı ve kullanıcı oluşturun. Bu yeni kullanıcının kimlik bilgilerini hatırlayın.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit;

Nginx'i yükle

Nginx'i yükleyin.

sudo pkg install -y nginx

Versiyonu kontrol et.

nginx -v
# nginx version: nginx/1.14.2

Nginx'i etkinleştirin ve başlatın.

sudo sysrc nginx_enable=yes
sudo service nginx start

sudo vim /usr/local/etc/nginx/mailtrain.confMailtrain için Nginx'i çalıştırın ve ayarlayın.

server {

  listen [::]:80;
  listen 80;

  server_name example.com;

  charset utf-8;
  client_max_body_size 50M;


  location / {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_next_upstream error timeout http_502 http_503 http_504;
  }

}

Dosyayı kaydet ve çık.

Şimdi mailtrain.confana nginx.confdosyaya eklememiz gerekiyor.

sudo vim /usr/local/etc/nginx/nginx.confAşağıdaki satırı çalıştırın ve http {}bloğa ekleyin .

include mailtrain.conf;

Yapılandırmayı test edin.

sudo nginx -t

Nginx'i yeniden yükleyin.

sudo service nginx reload

Mailtrain yükleyin

Mailtrain'in yüklenmesi gereken boş bir belge kök klasörü oluşturun.

sudo mkdir -p /usr/local/www/mailtrain

Belge kök klasörüne gidin.

cd /usr/local/www/mailtrain

/usr/local/www/mailtrainKlasörün sahipliğini kullanıcı olarak değiştirin johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/mailtrain

Mailtrain'i indirin ve açın.

wget https://github.com/Mailtrain-org/mailtrain/archive/master.zip
unzip master.zip
rm master.zip
mv mailtrain-master/* . && mv mailtrain-master/.* .
rmdir mailtrain-master

npm install --productionGerekli bağımlılıkları yüklemek için Mailtrain klasöründe çalıştırın .

Kopya config/default.tomlolarak config/production.tomlve güncelleme MySQL ve içindeki diğer ayarları.

cp config/default.toml config/production.toml
vim config/production.toml

Sunucuyu çalıştırın.

NODE_ENV=production npm start

Kurulum tamamlandı. Kullanıcı adı adminve şifre ile giriş yapın test. Giriş yaptıktan sonra, kullanıcı bilgilerini ve şifreyi Mailtrain web arayüzü üzerinden güncelleyin.



Leave a Comment

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun