莫妮卡-个人关系管理器

如今的社会发展迅速。我们不断被新闻和社交媒体的帖子轰炸,即使担心错过(FOMO),也很容易受到生活中发生的一切事情的压倒,从而忘记重要的日期和事件。

现在我们又重新走出去,在世界上做更多的事情,参加更多的聚会,结识新的人,我们的日常生活中发生的事情更多了,所以有时候很容易忘记我们刚刚认识的人的细节,甚至是我们一直以来认识的人的细节。

Monica可以更轻松地跟踪所有这些。它是一个开源的个人CRM。

Monica帮助您组织与您所爱的人的社交互动。

让我们来看看如何在Linode上使用Docker设置Monica的个人CRM实例。

在Docker中设置Monica的先决条件

首先,您需要设置一个Docker server。Linode使该过程非常简单,您可以每月只需花费几美元设置一个,并且可以免费添加私有IP地址,并且每月只需再花费几美元即可添加备份。

您还需要一个domain name,您可以在几乎任何在线购买平台上以各种价格购买。请务必将该域名的DNS设置指向Linode。您可以find more information about that here

您还需要在Docker服务器上设置一个反向代理,以便您可以进行路由流量和管理服务器上的SSL等操作。我制作了一个关于使用Portainer和名为Nginx Proxy Manager的反向代理设置Docker服务器过程的视频,您可以在此系列的first blog post和视频中查看。

一旦您设置好了Docker服务器,就可以开始在该服务器上设置Monica实例的过程。

有两种主要的方法可以做到这一点:

  • 通过SSH命令行。
  • 通过Portainer面板上的Portainer。

我们将看看如何在Portainer中完成此操作,以便我们可以使用用户界面进行操作。

转到http://your-server-ip-address:9000并使用我们在先前帖子/视频中设置的凭据登录Portainer。

在屏幕左侧,我们将点击“Stacks”链接,然后在下一页上点击“+添加堆栈”按钮。

这将打开一个页面,您将在其中输入堆栈的名称。在此之下,您可以复制并粘贴以下内容:

---

version: "3.4"

services:

monica:

image: monica

networks:

- nginxproxymanager_default

depends_on:

- monicadb

ports:

- 8456:80

environment:

- APP_KEY=idYyiD2Dj3yMqoyi3EpcnHWC2GxzSAS5

- DB_HOST=monicadb

- DB_USERNAME=monica

- DB_PASSWORD=b2fWAfbyQuopHH9nD738x6o9TC9S8LM6

- APP_ENV=production

volumes:

- /home/docker/monica/config:/var/www/html/storage

restart: always



monicadb:

image: mysql:5.7

networks:

- nginxproxymanager_default

environment:

- MYSQL_RANDOM_ROOT_PASSWORD=true

- MYSQL_DATABASE=monica

- MYSQL_USER=monica

- MYSQL_PASSWORD=b2fWAfbyQuopHH9nD738x6o9TC9S8LM6

volumes:

- /home/docker/monica/db:/var/lib/mysql

restart: always



networks:

nginxproxymanager_default:

external: true

这个Docker compose文件/堆栈告诉系统将最新的官方Monica镜像下载到Docker服务器上,将容器命名为“monica”,将其连接到“nginxproxymanager_default”网络,将其挂载到目录“home/docker/monica”,并在docker服务器的端口6875上提供它。

如果您愿意,可以更改存储Monica数据的路径。只需确保文件夹具有正确的写入权限。

为了安全起见,请务必更改数据库密码。

此外,“APP_KEY”应更改为不同的长字符随机字符串。

一旦您对这里的设置满意,我们可以通过点击“部署容器”按钮来部署容器。

这将开始下载并部署Monica在您的服务器上的过程。当页面重新加载并显示所有运行的容器时,您将知道容器已经部署成功。

现在,您可以转到 http://your-server-ip-address:8456 并应该能够看到Monica的登录界面。

此时,您可以登录到网站并开始使用,但我们希望可以从子域名访问,因此让我们现在解决这个问题。

设置域名和SSL

返回到您的Linode仪表板,然后转到“域名”。然后找到您添加到账户的域名。点击它,然后找到域名管理的CNAME部分。

通过输入您希望子域名的主机名条目,为您的域名添加一个CNAME。在示例视频中,我输入了“monica”(不带引号)。在下面,我在“Alias to”框中输入了@符号,然后点击“保存”。

现在您已经完成了这一步,我们可以转到Nginx代理管理器设置我们的SSL和域名。

现在,您可以转到 http://your-server-ip-address:81 并应该能够看到Nginx代理管理器的登录界面。

Nginx代理管理器的默认凭据为:

电子邮件:[email protected]
密码:changeme

输入这些凭据(或者如果您已更新它们,则使用您自己的凭据)来登录到您的Nginx代理管理器实例。

点击页面顶部标签上的“SSL证书”,然后点击页面右上角的“添加SSL证书”按钮。

接下来,点击“Let's Encrypt”选项。

在弹出窗口中,输入您希望获得安全的域名的完整URL,然后按下键盘上的“Enter”键。

在这个例子中,您需要输入 https://monica.yourdomain.com

输入完URL后,点击“测试服务器可达性”按钮。如果出现错误消息,请修正问题后重试。如果没有返回错误,则确保页面上的电子邮件地址是正确的,然后阅读并同意Let's Encrypt的服务条款,并点击“保存”按钮。

系统生成和安装密钥可能需要一两分钟的时间,但完成后,页面将重新加载,您将能够在Nginx代理管理器中看到所有可用的SSL证书。

既然我们在系统上设置好了SSL,我们可以点击页面顶部的“主机”选项卡。然后点击出现在子菜单中的“代理主机”选项。

找到页面右上角的“添加代理主机”按钮并点击它。

将弹出一个新窗口,我们将填写一些选项来配置我们的域名。

输入刚刚为之创建SSL的域名或子域名。

将方案保留为HTTP。

输入您容器的IP地址。这可以在Portainer中找到:

对于“转发端口”文本框,请输入容器端口。在这种情况下,它是80。在上面的图像的“已发布端口”部分中看到的8456是我们将称之为Docker端口的端口。我们希望在容器端处理端口,所以我们将使用冒号右侧的数字。

点击“缓存资源”,“阻止常见攻击”和“Websocket支持”选项。

现在点击弹出窗口顶部的“SSL”选项卡。

您将看到一个下拉菜单,上面写着“SSL证书”,下面写着“无”。

点击“无”,然后选择您在先前步骤中创建的SSL。

现在选中下面的4个选项,然后阅读并同意《Let's Encrypt TOS》,然后点击保存。

过了一会儿,页面将重新加载,您应该会在Nginx Proxy Manager的代理主机页面上看到您的新条目。

首次登录

现在您可以在浏览器中转到您的新URL。

您应该会看到一个看起来像这样的登录页面:

填写个人信息注册表,勾选关于《TOS》的框,然后点击“注册”按钮。

一旦您登录成功,您就可以开始创建或导入您的联系人。不过,在您这样做之前,请务必进入屏幕右上角的设置图标(齿轮)并根据您的需要调整设置。特别注意屏幕左侧的“个性化”选项卡,以便您拥有适合您安装的数据字段。

您可以随时回来更改/更新它们,所以不必担心第一次登录时是否正确设置。

开始添加联系人

现在您的Monica实例已经运行起来了,您现在可以开始更好地跟踪您的日常互动、关系等等。您永远不知道通过记住周年纪念、生日或任何其他特殊活动,您会给谁留下深刻印象!

或者,如果还没有准备好自行安装和管理,或者需要更多功能,您可以尝试cloud-based CRM

类似文章