如何在Fedora 28上安装Mailtrain新闻通讯应用程序

Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。Mailtrain的源代码在GitHub上。本指南将向您展示如何在新的Fedora 28 Vultr实例上安装Mailtrain。

要求

  • 软件要求:
    • Node.js v7或更高版本
    • 玛丽亚数据库
    • Nginx的
    • Redis(可选)
  • 硬件要求:
    • 1个vCPU
    • 1024 MB RAM

检查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和防火墙。

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

以root用户身份连接到MariaDB shell。

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配置为Mailtrain的反向代理HTTPHTTPS(如果使用SSL)。运行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文件夹的所有权更改为user 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.tomlconfig/production.toml并更新MySQL及其中的其他设置。

cp config/default.toml config/production.toml
vi config/production.toml

运行服务器。

NODE_ENV=production npm start

安装完成。使用用户名admin和密码登录test。登录后,通过Mailtrain Web界面更新用户信息和密码。有关更多信息,请访问Mailtrain Github Wiki页面

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息