本篇将介绍两种部署方式,一种是 NAS/树莓派部署,一种是云服务器部署。
本指南将带您一步步完成以下目标:
portal.mytesla.cc
,解锁高级数据统计、自动计费和实时通知等强大功能。准备工作:
portal.mytesla.cc
账户。首先,在您的 NAS 或树莓派上创建一个新的工作目录,例如 teslamate
,然后进入该目录。
mkdir teslamate
cd teslamate
接着,创建一个名为 docker-compose.yml
的文件,并将您提供的以下内容完整地复制粘贴进去。
重要提示:请勿修改此 docker-compose.yml
文件的任何内容,我们将在后续步骤中通过其他方式配置变量。
# docker-compose.yml
services:
teslamate:
image: docker.1ms.run/mytesla/teslamate:v2.1
restart: always
environment:
- ENCRYPTION_KEY=wJrM9nILN5wM5Zm4Z
- DATABASE_USER=teslamate
- DATABASE_PASS=44TqZYlH8odDc2hqPYE
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
- BD_MAP_AK=
- BD_MAP_SK=
ports:
- "4000:4000"
volumes:
- ./import:/opt/app/import
cap_drop:
- all
database:
image: docker.1ms.run/postgres:17
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=44TqZYlH8odDc2hqPYE
- POSTGRES_DB=teslamate
volumes:
- teslamate-db:/var/lib/postgresql/data
grafana:
image: docker.1ms.run/mytesla/grafana:v2.1
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=teslamate
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- "3000:3000"
volumes:
- teslamate-grafana-data:/var/lib/grafana
mosquitto:
image: docker.1ms.run/eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
volumes:
- mosquitto-conf:/mosquitto/config
- mosquitto-data:/mosquitto/data
teslamateapi:
image: mytesla/teslamateapi:latest
container_name: teslamateapi
restart: unless-stopped
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=44TqZYlH8odDc2hqPYE
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- ENCRYPTION_KEY=wJrM9nILN5wM5Zm4Z
- MQTT_HOST=mosquitto
- TZ=Asia/Shanghai
- API_TOKEN=LEM3nUfT5xFJGR9PhzLu
ports:
- "8080:8080"
volumes:
- teslamateapi-data:/opt/app/data
depends_on:
- database
sakurafrp:
image: natfrp.com/launcher:latest
restart: always
ports:
- "7102:7102"
environment:
LANG: zh_CN.UTF-8
TZ: Asia/Shanghai
NATFRP_TOKEN: ${NATFRP_TOKEN}
NATFRP_REMOTE: qYMeu4yq1deFoGlutd4
volumes:
- sakurafrp-data:/run
volumes:
teslamate-db:
teslamate-grafana-data:
mosquitto-conf:
mosquitto-data:
teslamateapi-data:
sakurafrp-data:
要让 portal.mytesla.cc
能够访问到我们部署在内网的 TeslamateAPI ,我们需要一个公网地址。Sakura FRP 就是来实现这一点的工具。
注册并获取访问密钥 (Token)
NATFRP_TOKEN
。创建隧道
绑定子域名
至此,您应该拥有了两个关键信息:
mycar.xxx.com:远程端口号
(请替换为您自己的子域名和端口号)配置访问密钥
修改 docker-compose.yml
文件,将 ${NATFRP_TOKEN}
的值替换为从 Sakura FRP 网站复制的访问密钥。
启动所有容器
在 teslamate
目录下,运行以下命令以后台模式启动所有服务或直接在 NAS 后台 docker 应用中启动所有服务。
首次启动会下载所有镜像,请耐心等待。启动完成后,可以通过 docker-compose ps
命令查看所有容器是否都处于 running
或 up
状态。
远程管理配置
此时, sakurafrp
容器应该已经成功连接到了服务器。
回到 Sakura FRP 网站,在左侧菜单进入 服务 -> 远程管理。
您应该能看到一个在线的设备。选择它。
在 启动密码 处,填入 docker-compose.yml
中 sakurafrp
服务里 NATFRP_REMOTE
字段的值: qYMeu4yq1deFoGlutd4
。
点击“连接”,即可远程管理您的 FRP 客户端(例如查看日志、重载配置等)。
做下如图操作:
http://<你的 NAS 或树莓派 IP>:4000
。Access Token
和 Refresh Token
。https://mycar.xxx.com:远程端口号
。注意,协议是 https
,并且必须包含端口号。docker-compose.yml
文件中 teslamateapi
服务里 API_TOKEN
字段的值:LEM3nUfT5xFJGR9PhzLu
。如果配置正确, mytesla.cc
将会显示“连接成功”的提示。稍等片刻,您就可以在 mytesla.cc
的仪表盘、行程、充电等页面看到由您自己部署的 Teslamate 所提供的精准数据了!同时,行程结束通知、充电完成通知、每日/每周/每月统计报告等高级功能也将自动启用。
恭喜!您已成功搭建了一套完全由自己掌控的特斯拉数据记录与分析系统。
TeslaMate 是一个功能强大的 Tesla 车辆数据记录和分析平台。本指南将帮助您在海外腾讯云服务器上安全部署 TeslaMate (支持用户名登录),包括域名、服务器配置、SSL 证书配置等完整流程。
推荐购买企鹅云新加坡轻应用服务器即可( 99/年)
在腾讯云 DNS 解析控制台:
teslamate
(或您喜欢的子域名)A
600
如果需要 www 访问:
www
CNAME
teslamate.yourdomain.com
600
提供了一个交互式安装脚本,可以自动完成所有配置:
bash -c "$(curl -sSL https://s.mytesla.cc/install.sh)"
在成功部署 TeslaMate 后,强烈推荐您使用 Mytesla UI :
实时车辆监控
数据分析
通知提醒
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.