2025年8月

TeslaMate中文版一键安装
相比英文版本的主要更新:

界面汉化,大部分图表都能中文显示
修复国内地图和位置信息无法显示的问题
添加更多的统计报表,比如:最近车辆状态,电池健康度等,速度统计等。

需求
一台云服务器,1G RAM以上,linux系统,推荐ubuntu 22.04 (可在阿里云腾讯云购买)

一键安装
如果之前安装过,请必务先备份数据再操作。
登录到终端,切换到root

sudo -i su

选择teslamate安装的目录,这里安装到/opt下

cd /opt

下载一键安装脚本

wget http://download.dhuar.com/teslamate/teslamate.tar.gz -O teslamate.tar.gz

解压,进入teslamate目录

tar xzvf teslamate.tar.gz && cd teslamate

开始安装,视网络状况,大概需要10min到30min.

bash install.sh

打开云服务器防火墙的 3000 端口和 4000 端口

用法
在浏览器访问: http://ip:4000 (将ip替换成云服务器ip),默认用户 admin (初始密码 admin) .
设置您的Tesla API tokens (如何获取token?)
特斯拉数据面板可以访问 http://ip:3000 (将ip替换成云服务器ip)
修改http://ip:4000的访问用户名密码

bash htpasswd.sh

更新
要将TeslaMate更新到最新版,可以运行以下命令:

docker compose pull
docker compose up -d

已安装英文版本的teslamate升级为中文版
(重要)备份数据,可参考 数据备份和还原
切换到root

sudo -i

进入到teslamate目录,编辑docker-compose.yml文件

将      image: teslamate/teslamate:latest
修改为   image: ccr.ccs.tencentyun.com/dhuar/teslamate:latest
将      image: teslamate/grafana:latest
修改为   image: ccr.ccs.tencentyun.com/dhuar/grafana:latest

执行命令

docker compose pull
docker compose up -d

数据备份和还原
备份

进入teslamate目录
云服务器一般在 /opt/teslamate 下

cd /opt/teslamate

nas一般在 /volume1/docker/teslamate 下

cd /volume1/docker/teslamate

创建备份文件

docker compose exec -T database pg_dump -U teslamate teslamate > ./teslamate.bck

检查备份文件大小

ls -lh teslamate.bck

如果teslamate.bck文件的大小为0,那就出错了没有备份成功。

压缩备份文件(可选)

gzip teslamate.bck

备份文件下载到电脑(可选)
阿里云腾讯云之类的云服务器的web终端,都有网页直接下载云服务器文件的功能,你可以点击web终端左上角的文件夹图标,然后,点击文件夹树进入/opt/teslamate 目录,然后直接下载文件。如果提示文件过大,可以压缩文件再下载。

还原

# Stop the teslamate container to avoid write conflicts
docker compose stop teslamate

# Drop existing data and reinitialize
docker compose exec -T database psql -U teslamate << .
drop schema public cascade;
create schema public;
create extension cube;
create extension earthdistance;
CREATE OR REPLACE FUNCTION public.ll_to_earth(float8, float8)
    RETURNS public.earth
    LANGUAGE SQL
    IMMUTABLE STRICT
    PARALLEL SAFE
    AS 'SELECT public.cube(public.cube(public.cube(public.earth()*cos(radians(\$1))*cos(radians(\$2))),public.earth()*cos(radians(\$1))*sin(radians(\$2))),public.earth()*sin(radians(\$1)))::public.earth';
.

# Restore
docker compose exec -T database psql -U teslamate -d teslamate < teslamate.bck

# Restart the teslamate container
docker compose start teslamate