Cara Pasang Aplikasi Surat Berita Mailtrain pada FreeBSD 12

Mailtrain adalah aplikasi buletin sumber terbuka sendiri yang dibina di Node.js dan MySQL / MariaDB. Sumber Mailtrain ada di GitHub . Panduan ini akan menunjukkan cara untuk memasang Mailtrain pada contoh FreeBSD 12 Vultr segar.

Keperluan

  • Keperluan Perisian:
    • Node.js v7 atau lebih tinggi
    • MySQL v5.5
    • Nginx
    • Redis (pilihan)
  • Keperluan Perkakasan:
    • 1 vCPU
    • RAM 1024 MB

Sebelum awak bermula

Semak versi FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Pastikan sistem FreeBSD anda terkini.

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

Pasang pakej yang diperlukan.

pkg install -y sudo vim unzip wget git bash socat

Buat akaun pengguna baru dengan nama pengguna pilihan anda (kami akan gunakan 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!

Jalankan visudoperintah dan unmentment %wheel ALL=(ALL) ALL, untuk membolehkan ahli wheelkumpulan melaksanakan sebarang perintah.

visudo

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

Sekarang, beralih ke pengguna yang baru anda buat dengan suarahan.

su - johndoe

CATATAN: Ganti johndoedengan nama pengguna anda.

Sediakan zon waktu.

sudo tzsetup

Pasang Node.js dan npm

Pasang Node.js dan npm.

sudo pkg install -y node10 npm-node10

Semak versi.

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

Pasang MariaDB

Pasang MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Semak versi.

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

Mulakan dan dayakan MariaDB.

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

Jalankan mysql_secure_installationskrip untuk meningkatkan keselamatan pemasangan MariaDB anda.

sudo mysql_secure_installation

Log masuk ke MariaDB sebagai pengguna root.

mysql -u root -p
# Enter password:

Buat pangkalan data dan pengguna MariaDB baru. Ingat kelayakan untuk pengguna baru ini.

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

Pasang Nginx

Pasang Nginx.

sudo pkg install -y nginx

Semak versi.

nginx -v
# nginx version: nginx/1.14.2

Dayakan dan mulailah Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Jalankan sudo vim /usr/local/etc/nginx/mailtrain.confdan sediakan Nginx untuk Mailtrain.

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

}

Simpan fail dan keluar.

Sekarang kita perlu memasukkan mailtrain.confdalam nginx.conffail utama .

Jalankan sudo vim /usr/local/etc/nginx/nginx.confdan tambah baris berikut ke http {}blok.

include mailtrain.conf;

Uji konfigurasi.

sudo nginx -t

Muat semula Nginx.

sudo service nginx reload

Pasang Mailtrain

Buat folder root dokumen kosong di mana Mailtrain harus dipasang.

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

Navigasi ke folder root dokumen.

cd /usr/local/www/mailtrain

Tukar pemilikan /usr/local/www/mailtrainfolder kepada pengguna johndoe.

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

Muat turun dan unzip Mailtrain.

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

Jalankan npm install --productiondalam folder Mailtrain untuk memasang pergantungan yang diperlukan.

Salin config/default.tomlsebagai config/production.tomldan kemas kini MySQL dan tetapan lain di dalamnya.

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

Jalankan pelayan.

NODE_ENV=production npm start

Pemasangan selesai. Log masuk dengan nama pengguna admindan kata laluan test. Setelah log masuk, kemas kini maklumat pengguna dan kata laluan melalui antara muka web Mailtrain.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

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

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

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: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

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?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

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.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

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!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

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