公网同步
在上一篇局域网同步中介绍了如何搭建可以在局域网内快速同步的教程,该方案同步速度快,并且完全免费使用,但是也有一些缺点:
- 受空间制约。不同设备只能在连接同一个局域网下才能互相同步,超出范围就会同步不了。
- IP不固定。每次连接WIFI时分配到的IP地址可能会发生变化,需要频繁修改Anki客户端中的自定义服务器地址参数,比较繁琐。
为了克服上面缺点,还有一个方案就是使用云服务器搭建Anki同步服务器。云服务器的好处有:
- 具有固定公网IP,意味着所有设备随时随地都能访问。所有Anki客户端第一次配置好,后面基本不用再修改。
- 速度优势。国内服务器,而且用户独享带宽,速度比Ankiweb官方同步要快不少。
- 用处广泛。云服务器不仅可以用来搭建Anki同步服务,还有很多可以开发的功能,如自建图床、搭建个人博客、自建远程桌面服务等等。
使用云服务器搭建Anki同步服务器,完全可以作为Ankiweb官方同步服务的替代,缺点就是需要另外付费购买云服务器。
不过现在云服务器价格不算太贵,几十块的价格可以用一年,还是比较划算的。
下面具体介绍一下搭建教程。
购买云服务器
首先,你需要购买一台属于自己的云服务器。云服务器厂商有很多,比如:
用户可以多方对比适合的价格套餐。
本教程以华为云服务器作为演示,其他云服务器步骤也基本类似。
注意
本教程使用的是Ubuntu
操作系统,为了与教程保持一致,建议购买时选择相同的操作系统。
找到自己购买的服务器实例并打开。

- 登录自己的云服务器

第一次登录需要重置下密码,然后再重新登录。

输入密码登录

登录成功界面

设置Anki同步服务器
支持两种安装Anki同步服务器的方法,用户选择其中一种即可。
方法一:手动安装
安装Miniconda
Anki的运行依赖python环境。首先在服务器上安装Python环境,这里使用Miniconda作为Python的环境管理器。
在打开的终端中依次输入下面命令。
# 下载Miniconda
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 安装Miniconda
sh ./Miniconda3-latest-Linux-x86_64.sh
根据提示一直"yes"即可,安装完成后重启下终端。
创建虚拟环境
在新打开的终端中,依次输入下面命令。
# 创建虚拟环境
conda create -n python python=3.12
# 激活虚拟环境
conda activate python
# 安装anki
pip install anki -i https://mirrors.aliyun.com/pypi/simple/
启动Anki服务器
Anki服务器从SYNC_USER
系列环境变量中读取用户名和密码的配置。SYNC_USER1
表示用户1,SYNC_USER2
表示用户2,以此类推。
这里以三个用户的服务器为例进行演示。(如果只有一个用户的话,只设置SYNC_USER1
环境变量即可)
在终端中依次输入下面命令:
# 激活虚拟环境
conda activate python
# 设置Anki的用户名和密码,可自行修改
export SYNC_USER1=user1:pass1 # 用户1
export SYNC_USER2=user2:pass2 # 用户2
export SYNC_USER3=user3:pass3 # 用户3
# 启动服务
python -m anki.syncserver
当出现下面界面,表示服务器已经启动成功。

到这里服务器已经成功启动了。但是为了能够稳定运行,建议将其设置为系统服务并设置开机自启。