Krav
Installer Node.js og npm
Installer MariaDB
Installer Nginx
Installer Mailtrain
Mailtrain er en åpen kildekode, selvdrevet nyhetsbrev-app bygget på Node.js og MySQL/MariaDB. Mailtrains kilde er på GitHub . Denne guiden viser deg hvordan du installerer Mailtrain på en fersk CentOS 7 Vultr-forekomst.
Krav
- Programvarekrav:
- Node.js v7 eller nyere
- MariaDB
- Nginx
- Redis (valgfritt)
- Maskinvarekrav:
Sjekk CentOS-versjonen.
cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)
Opprett en ny non-rootbrukerkonto med sudotilgang og bytt til den.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
MERK : Erstatt johndoemed brukernavnet ditt .
Sett opp tidssonen.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Sørg for at systemet ditt er oppdatert.
sudo yum update -y
Installer Development Toolsog unzip.
sudo yum groupinstall -y 'Development Tools' && sudo yum install -y unzip
For enkelhets skyld, deaktiver SELinux og brannmur.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Installer Node.js og npm
Installer Node.js og npm ved å bruke NodeSource YUM-depotet for Node.js.
curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum install -y nodejs
Sjekk versjonene.
node -v && npm -v
# v8.11.4
# 5.6.0
Installer MariaDB
Installer MariaDB.
sudo yum install -y mariadb-server
Sjekk versjonen.
mysql --version
Start og aktiver MariaDB.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Kjør mysql_secure installationskriptet for å forbedre sikkerheten.
sudo mysql_secure_installation
Koble til MariaDB-skallet som rotbruker.
mysql -u root -p
# Enter password:
Opprett en tom database og bruker, og husk legitimasjonen.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit
Installer Nginx
Installer Nginx.
sudo yum install -y nginx
Sjekk versjonen.
nginx -v
Start og aktiver Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Konfigurer Nginx som en HTTPeller HTTPS(hvis du bruker SSL) omvendt proxy for Mailtrain. Kjør sudo vi /etc/nginx/conf.d/mailtrain.confog legg til følgende konfigurasjon.
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;
}
}
Test konfigurasjonen.
sudo nginx -t
Last inn Nginx på nytt.
sudo systemctl reload nginx.service
Installer Mailtrain
Opprett en tom dokumentrotmappe der Mailtrain skal installeres.
sudo mkdir -p /var/www/mailtrain
Naviger til dokumentrotmappen.
cd /var/www/mailtrain
Endre eierskap av /var/www/mailtrainmappen til bruker johndoe.
sudo chown -R johndoe:johndoe /var/www/mailtrain
Last ned og pakk ut 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
Kjør npm install --productioni Mailtrain-mappen for å installere nødvendige avhengigheter.
Kopier config/default.tomlsom config/production.tomlog oppdater MySQL og eventuelle andre innstillinger i den.
cp config/default.toml config/production.toml
vi config/production.toml
Kjør serveren.
NODE_ENV=production npm start
Installasjonen er fullført. Logg på med brukernavnet adminog passordet test. Når du er logget på, oppdater brukerinformasjonen og passordet via Mailtrain-nettgrensesnittet. For mer informasjon, besøk Mailtrain Github wiki-side .