Απαιτήσεις
Εγκαταστήστε το Node.js και το npm
Εγκαταστήστε το MariaDB
Εγκαταστήστε το Nginx
Εγκαταστήστε το Mailtrain
Το Mailtrain είναι μια αυτο-φιλοξενούμενη εφαρμογή ενημερωτικών δελτίων ανοιχτού κώδικα που έχει δημιουργηθεί στο Node.js και στο MySQL/MariaDB. Η πηγή του Mailtrain βρίσκεται στο GitHub . Αυτός ο οδηγός θα σας δείξει πώς να εγκαταστήσετε το Mailtrain σε μια νέα παρουσία του Fedora 28 Vultr.
Απαιτήσεις
- Απαιτήσεις λογισμικού:
- Node.js v7 ή νεότερη έκδοση
- MariaDB
- Nginx
- Redis (προαιρετικό)
- Απαιτήσεις υλικού:
Ελέγξτε την έκδοση Fedora.
cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)
Δημιουργήστε έναν νέο non-rootλογαριασμό χρήστη με sudoπρόσβαση και μεταβείτε σε αυτόν.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
ΣΗΜΕΙΩΣΗ: Αντικαταστήστε το johndoeμε το όνομα χρήστη σας.
Βεβαιωθείτε ότι το σύστημά σας είναι ενημερωμένο.
sudo dnf check-upgrade || sudo dnf upgrade -y
Ρυθμίστε τη ζώνη ώρας.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Εγκαταστήστε τα απαραίτητα εργαλεία και πακέτα.
sudo dnf groupinstall -y 'Development Tools'
sudo dnf install -y unzip ImageMagick gcc-c++
Για απλότητα, απενεργοποιήστε το SELinux και το Firewall.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Εγκαταστήστε το Node.js και το npm
Εγκαταστήστε τα Node.js και npm.
sudo dnf install -y nodejs
Ελέγξτε τις εκδόσεις.
node -v && npm -v
# v8.11.3
# 5.6.0
Εγκαταστήστε το MariaDB
Εγκαταστήστε το MariaDB.
sudo dnf install -y mariadb-server
Ελέγξτε την έκδοση.
mysql --version
Ξεκινήστε και ενεργοποιήστε το MariaDB.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Εκτελέστε το mysql_secure installationσενάριο για να βελτιώσετε την ασφάλεια.
sudo mysql_secure_installation
Συνδεθείτε στο κέλυφος MariaDB ως χρήστης ρίζας.
mysql -u root -p
# Enter password:
Δημιουργήστε μια κενή βάση δεδομένων και χρήστη και θυμηθείτε τα διαπιστευτήρια.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit
Εγκαταστήστε το Nginx
Εγκαταστήστε το Nginx.
sudo dnf install -y nginx
Ελέγξτε την έκδοση.
nginx -v
Ξεκινήστε και ενεργοποιήστε το Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Διαμορφώστε το Nginx ως αντίστροφο διακομιστή μεσολάβησης HTTPή HTTPS(αν χρησιμοποιείτε SSL) για Mailtrain. Εκτελέστε sudo vi /etc/nginx/conf.d/mailtrain.confκαι προσθέστε την ακόλουθη διαμόρφωση.
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;
}
}
Δοκιμάστε τη διαμόρφωση.
sudo nginx -t
Επαναφόρτωση Nginx.
sudo systemctl reload nginx.service
Εγκαταστήστε το Mailtrain
Δημιουργήστε έναν κενό ριζικό φάκελο εγγράφων όπου θα πρέπει να εγκατασταθεί το Mailtrain.
sudo mkdir -p /var/www/mailtrain
Μεταβείτε στον ριζικό φάκελο του εγγράφου.
cd /var/www/mailtrain
Αλλαγή ιδιοκτησίας του /var/www/mailtrainφακέλου σε χρήστη johndoe.
sudo chown -R johndoe:johndoe /var/www/mailtrain
Κατεβάστε και αποσυμπιέστε το 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
Εκτελέστε npm install --productionτο στο φάκελο Mailtrain για να εγκαταστήσετε τις απαιτούμενες εξαρτήσεις.
Αντιγράψτε config/default.tomlως config/production.tomlκαι ενημερώστε τη MySQL και οποιεσδήποτε άλλες ρυθμίσεις σε αυτό.
cp config/default.toml config/production.toml
vi config/production.toml
Εκτελέστε τον διακομιστή.
NODE_ENV=production npm start
Η εγκατάσταση έχει ολοκληρωθεί. Συνδεθείτε με το όνομα χρήστη adminκαι τον κωδικό πρόσβασης test. Μόλις συνδεθείτε, ενημερώστε τα στοιχεία χρήστη και τον κωδικό πρόσβασης μέσω της διεπαφής Ιστού Mailtrain. Για περισσότερες πληροφορίες, επισκεφτείτε τη σελίδα wiki του Mailtrain Github .