云网牛站
所在位置:首页 > Linux云服务器 > 使用Docker在Ubuntu 18.04上安装Mailtrain的方法

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

2019-01-09 11:37:59作者:李哲稿源:云网牛站

本文教你以最简单的方式在Ubuntu 18.04系统上安装Mailtrain,它基于Node.js和MySQL/MariaDB构建,同时本文介绍的使用Docker运行Mailtrain需要一台至少具有1GB RAM的服务器。

 

安装Mailtrain前要安装Docker和Docker Compose

安装Mailtrain最简单的方法是使用Docker,首先,我们需要安装Docker和Docker Compose,其最新版本可以从Docker的官方存储库安装,可以参考在Ubuntu 18.04.1服务器上安装docker的步骤,附基本配置说明一文,以下步骤适用于Ubuntu 18.04。

为Docker存储库创建源列表文件:

sudo nano /etc/apt/sources.list.d/docker.list

复制以下行并将其粘贴到文件中:

deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable

保存并关闭文件,然后通过运行以下命令导入Docker的PGP密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

由于此存储库使用HTTPS连接,因此我们还需要安装apt-transport-https和ca-certificates包:

sudo apt install apt-transport-https ca-certificates

接下来,更新软件包索引并安装最新版本的Docker CE(Community Edition):

sudo apt update

sudo apt install docker-ce

安装后,应自动启动Docker守护程序,可以查看:

systemctl status docker

输出信息如下:

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

如果它没有运行,则使用以下命令启动守护程序:

sudo systemctl start docker

在系统启动时自动启动:

sudo systemctl enable docker

检查Docker版本,运行以下命令:

docker -v

Docker version 18.06.1-ce, build e68fc7a

你可以使用pip Python包管理器安装最新版本的docker compose。

sudo apt install python-pip

sudo pip install docker-compose

检查Docker Compose版本:

docker-compose --version

docker-compose version 1.22.0, build f46880f

 

使用Docker运行Mailtrain的方法

从Github存储库下载Mailtrain文件:

sudo apt install git

git clone git://github.com/Mailtrain-org/mailtrain.git

更改文件的名称:

cd mailtrain

mv docker-compose.override.yml.tmpl docker-compose.override.yml

现在,你可以编辑docker-compose.yml文件以更改默认的MySQL用户登录信息,然后启动docker-compose.yml文件中定义的容器:

sudo docker-compose up -d

将创建mailtrain_default网络并运行3个容器:mailtrain-latest、mysql和redis,可以通过输入以下命令看到:

sudo docker network ls

sudo docker ps

现在,可以通过端口3000访问Mailtrain Web界面:

your-server-ip:3000

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

 

设置反向代理并启用HTTPS

在使用Mailtrain Web界面之前,让我们把它放在Nginx后面,然后启用HTTPS,在Ubuntu 18.04上安装Nginx Web服务器:

sudo apt install nginx

为Mailtrain创建服务器块文件:

sudo nano /etc/nginx/conf.d/mailtrain.conf

将以下行复制并粘贴到mailtrain.conf文件中,你可以为Mailtrain创建一个子域,如下所示,同时为该子域创建A记录:

server {

listen [::]:80;

listen 80;

server_name newsletter.X(X:这里填写你的域名,比如ywnz.com);

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;

}

}

保存并关闭文件,然后测试Nginx配置:

sudo nginx -t

如果测试成功,请重新加载Nginx以使更改生效:

sudo systemctl reload nginx

你现在应该可以通过子域访问Mailtrain Web界面:newsletter.your-domain.com。

 

使用Let’s Encrypt启用HTTPS

在Ubuntu 18.04服务器上安装Let的加密客户端(certbot):

sudo apt install software-properties-common

sudo add-apt-repository ppa:certbot/certbot

sudo apt install certbot python3-certbot-nginx

然后可以使用Nginx插件通过执行以下命令自动获取并安装TLS证书:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email your-email-address -d newsletter.your-domain.com

请注意修改为你的域名,比如下图:

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

现在,可以通过你的域名和安全的HTTPS连接访问Mailtrain Web界面了,如下图所示:

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

使用用户名admin和密码测试登录,然后更改你的帐户电子邮件地址和密码,转到设置页面以更改默认配置,你应该将服务地址从http://localhost:3000/更改为你的子域。

在邮件程序设置中,如果你拥有自己的电子邮件服务器或使用Amazon SES,则可以使用SMTP。实际上,你还可以在SMTP选项卡中使用其他SMTP服务:

使用Docker在Ubuntu 18.04上安装Mailtrain的方法

保存设置,然后可以创建一个列表来测试Mailtrain的功能。

 

相关主题

在Ubuntu 18.04服务器上安装Mailtrain的方法

精选文章
热门文章