侧边栏壁纸
博主头像
琉璃红梅 博主等级

琉璃世界,白雪红梅。

  • 累计撰写 44 篇文章
  • 累计创建 90 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Docker系列-Artalk的搭建与使用

雪穗
2024-06-26 / 0 评论 / 0 点赞 / 125 阅读 / 0 字
温馨提示:
本文最后更新于38天前,若内容或图片失效,请留言反馈。 若部分素材不小心影响到您的利益,请联系我删除。

1.Artalk简介

Artalk是一款简洁、安全的评论系统,它具有以下特点:

1.评论管理:支持评论审核、评论排序、评论搜索等功能,提升评论管理效率。

2.用户体验:支持多种评论操作,如评论投票、仅看作者、评论跳转等,增强用户体验。

3.多样化功能:支持验证码、图片上传、Markdown语法、表情包使用等功能,丰富评论内容。

4.通知功能:支持邮件通知、站内通知等多种通知方式,方便用户及时获取消息。

5.数据统计:支持浏览量统计、评论量统计等数据统计功能,帮助用户了解数据情况。

6.安全性功能:支持IP属地展示、评论审核等安全功能,保障评论系统的安全性。

7.自定义功能:支持评论置顶、自动保存、评论排序等自定义功能,满足用户个性化需求。

8.扩展性功能:支持扩展插件、API文档等功能,提供更多功能定制和扩展可能性。

Artalk的官网:https://artalk.js.org/

2.Artalk的安装

安装前提:

1.已经安装好docker和docker compose,请参看我的博文 docker系列-docker与docker compose安装

2.已经安装好数据库连接软件或工具

3.备好服务器(Vercel或其它不需要服务器的部署方式,请参考官网)

建议:

1.将所有docker项目放在统一目录 /root/data/docker_data/ 下,方面后期管理与维护

2.添加SWAP虚拟内存,请参看我的博文 添加 SWAP 虚拟内存

2.1 创建安装目录

mkdir -p /root/data/docker_data/artalk

2.2 创建docker-compose.yaml文件并上传至服务器

上传 docker-compose.yaml 文件到刚刚创建的artalk目录下,docker-compose.yaml 文件内容如下:

version: '3.8'
services:
  artalk:
    container_name: artalk
    image: artalk/artalk-go
    restart: always
    ports:
      - 23366:23366
    volumes:
      - ./data:/data
    environment:
      - TZ=Asia/Shanghai
      - ATK_LOCALE=zh-CN                            #后台的语言
      - ATK_SITE_DEFAULT=雪穗的Artalk                #站点的名称
      - ATK_TRUSTED_DOMAINS=https://www.sqwfly.top  #可信域名

安装完成,可以访问 http://ip:23366,如果出现如下界面说明安装成功

之后回到服务器,执行如下命令设置管理员的用户名、邮箱和密码,用于后台的登录,如果后面忘记了密码也可以通过执行该命令重新设置密码

docker exec -it artalk artalk admin

用户名可以为中文,注意:设置的密码是不可见的但是会让你确认设置,建议通过复制粘贴的方式

3.Artalk的常用设置

更详细的配置请移步至 Artalk官网 进行查看

3.1 服务器

服务器配置项 配置内容 功能说明
代理标头名 X-Forwarded-For 当使用 CDN 时也能获取用户真实 IP配合IP属地功能使用

3.2 可信域名

点击 + 添加可信域名,可以解决跨域问题,以我的网站为例,我添加的可信域名有:https://www.sqwfly.tophttps://artalk.sqwfly.top

3.3 评论审核

评论审核配置项 配置内容 功能说明
默认待审 发表新评论需要后台人工审核后才能显示,可以防止恶意评论

3.4 验证码

验证码配置项 配置内容 功能说明
启用验证码 不论是新用户注册还是用户评论都需要输入验证码,验证正确才能放行

3.5 IP属地

1.要开启IP属地功能,除了表格中的配置外,还需要配置 3.1 服务器代理标头名X-Forwarded-For
2.下载 ip2region.xdb 文件到 ./data 目录下,绝对路径为:/root/data/docker_data/artalk/data/ip2region.xdb

IP属地配置项 配置内容
启用IP属地展示
数据文件路径(.xdb 格式) ./data/ip2region.xdb
显示精度 country/province/city

3.6 图片上传

图片上传配置项 配置内容
启用图片上传
图片存放路径路径(.xdb 格式) ./data/artalk-img/
图片大小限制(MB) 5

3.7 邮件通知

关于如何获取SMTP密码请参看我的博文:开启邮箱的SMTP服务

邮件模板文件请前往 Artalk评论邮件模版 自行复制,之后将文件重名为 Artalk_Email.html 并上传至 /root/data/docker_data/artalk/data/ 目录下

邮件通知配置项 配置内容
启用邮件通知
发送方式 smtp
发信人昵称 {{reply_nick}}
发信人地址 su17865123987@163.com
邮件标题 您收到了来自 @{{reply_nick}} 的回复
邮件模板文件 ./data/Artalk_Email.html或者默认

由于配置了发送方式为smtp,所以需要配置SMTP发送,这里以163邮箱为例,你也可以设置QQ邮箱等

SMTP发送 配置内容
发件地址 smtp.163.com
发件端口 465
用户 su17865123987@163.com
密码 这里为SMTP密码而非邮箱密码

3.8 多元推送

多元推送配置项 配置内容 功能说明
通知模板 default
待审评论仍然发送通知 当评论被拦截时仍然发送通知
嘈杂模式 默认为关闭状态,此时站内仅向管理员回复的消息会发送通知,例如「普通用户 A」回复「普通用户 B」,这两个用户之间的通讯不会通知管理员
邮件通知管理员配置项 配置内容 功能说明
开启 当站点有评论时会通知管理员
邮件标题 [{{site_name}}] 文章 "{{page_title}}" 有新评论了 发送给管理员的邮件标题
管理员邮件模板文件 default 发给管理员的邮件所使用的邮件模板

3.9 社交登录

社交登录配置项 配置内容 功能说明
启用社交登录
允许匿名评论 允许跳过验证,仅填写匿名的昵称和邮箱

这里以邮箱验证登录为例,需要提前配置好 邮件通知

Email配置项 配置内容
启用邮箱密码登录
邮箱验证邮件标题 Your Code - {{code}}
邮箱验证邮件模板 default

3.10 界面配置

表情包地址:https://klyang.com/9.html

界面配置配置项 配置内容
评论框占位文字 推荐qq邮箱,可以和您的QQ头像自动同步,其他邮箱如果使用了Cravatar服务则会自动匹配您设置好的头像,否则将会生成默认头像
无评论显示文字 天空没有翅膀的痕迹,而你已飞过
发送按钮文字 发送按钮文字
表情包 https://cdn.klyang.com/json/emo.json
用户 UA 徽标

其余配置项可以自行尝试,效果如下图所示

为了能够获取注册用户的头像,需要配置头像Gravatar的API地址,如果是QQ邮箱注册,可以直接获取QQ头像,如果是其他邮箱注册需要注册用户前往 https://cravatar.cn 设置对应邮箱的头像,否则会显示默认头像

头像Gravatar配置项 配置内容
API 地址 https://cravatar.cn/avatar/
API 参数 d=mp&s=80

4.将Artalk评论接入Halo

启用该插件需要禁用默认评论插件以及其它评论插件

前往应用市场下载Artalk 评论区评论区插件,然后启用该插件

5.Artalk的升级与更新

# 方式一
cd /root/data/docker_data/artalk

docker compose down --rmi all  # 停止容器运行并删除相关镜像

docker compose up -d           

# 方式二
cd /root/data/docker_data/artalk

docker compose down   # 停止容器运行

docker compose pull   # 重新拉取镜像

docker compose up -d   

6.Artalk的卸载

cd /root/data/docker_data/artalk

docker compose down --rmi all           # 停止容器运行并删除相关镜像

cd ..

rm -rf /root/data/docker_data/artalk    # 完全删除

0

评论区