TeslaMate 是一款特斯拉车主的数据管理工具,能记录行车轨迹、充电记录、能耗数据等详细信息,还能生成能耗分析报告,适用所有关注车辆数据隐私和想优化驾驶习惯的特斯拉车主。它的优点是开源且可自托管,所有数据由用户自己掌控,避免第三方窥探,同时功能全面,能满足车主对车辆数据的深度分析需求。
使用 TeslaMate 时,建议搭配 NAS 或本地服务器部署,这样数据存储更稳定。初次设置时需要正确配置相关参数,确保能顺利获取车辆数据,而且定期备份数据能避免意外丢失,让数据管理更安心。
如果 TeslaMate 只在局域网内使用,会有不少不便。比如车主出差在外,想查看车辆充电进度只能空想;家人想了解车辆位置或状态时,也无法远程访问,只能等车主告知,缺乏实时性和便捷性。
而 TeslaMate 与 cpolar 结合后,优势立显。cpolar 的内网穿透功能让用户可以通过公网随时访问本地部署的 TeslaMate,无论身处何地,打开手机就能查看车辆的实时状态、充电情况等,既保证了数据隐私不泄露,又实现了远程监控的便利,让特斯拉的数据管理更灵活实用。
黄金组合的安装教程准备如下,有需求的朋友快去安装吧!
下面介绍使用Docker中部署TeslaMate并结合cpolar内网穿透软件实现无公网无云服务器也可以远程访问TeslaMate,何时何地查看自己的车辆数据!
1. Docker部署TeslaMate
在Linux中任意目录下创建一个docker-compose.yml文件
vimdocker-compose.yml然后把以下内容复制进去,其中注释的地方需要自行修改一下
version:"3"services:teslamate:image:teslamate/teslamate:latestrestart:alwaysenvironment:-ENCRYPTION_KEY=secretkey#自定义设置一个加密的kay-DATABASE_USER=teslamate-DATABASE_PASS=password#自定义设置一个密码!-DATABASE_NAME=teslamate-DATABASE_HOST=database-MQTT_HOST=mosquittoports:-4000:4000volumes:-./import:/opt/app/importcap_drop:-alldatabase:image:postgres:latestrestart:alwaysenvironment:-POSTGRES_USER=teslamate-POSTGRES_PASSWORD=password#自定义设置一个密码!-POSTGRES_DB=teslamatevolumes:-teslamate-db:/var/lib/postgresql/datagrafana:image:teslamate/grafana:latestrestart:alwaysenvironment:-DATABASE_USER=teslamate-DATABASE_PASS=password#自定义设置一个密码!-DATABASE_NAME=teslamate-DATABASE_HOST=databaseports:-3000:3000volumes:-teslamate-grafana-data:/var/lib/grafanamosquitto:image:eclipse-mosquitto:2restart:alwayscommand:mosquitto-c /mosquitto-no-auth.confvolumes:-mosquitto-conf:/mosquitto/config-mosquitto-data:/mosquitto/datavolumes:teslamate-db:teslamate-grafana-data:mosquitto-conf:mosquitto-data:然后保存文件,执行下面命令部署启动
dockercompose up -d启动部署完成后,界面正常可以看到每个镜像容器都已经正常安装和创建运行,执行docker ps可以看到成功运行了teslamate容器,接下来进行本地访问
2. 本地访问TeslaMate
上面成功运行teslamate后,通过访问挂载的4000端口即可看到我们teslamate interface界面,输入相关的token即可登录,本地部署运行启动就完成了,接下来我们安装cpolar内网穿透工具,实现无公网远程访问!
3. Linux安装Cpolar
上面在本地Docker中成功部署了teslamate服务,并局域网访问成功,下面我们在Linux安装Cpolar内网穿透工具,通过Cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl-L https://www.cpolar.com/static/downloads/install-release-cpolar.sh|sudobash- 向系统添加服务
sudosystemctlenablecpolar- 启动cpolar服务
sudosystemctl start cpolarcpolar安装成功后,在外部浏览器上访问Linux 的9200端口 即:【http://局域网ip:9200】,使用cpolar账号登录(如没有账号,可以点击下面免费注册),登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可
4. 配置TeslaMate公网地址
点击左侧仪表盘的隧道管理——创建隧道,创建一个teslamate的公网http地址隧道!
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:4000 (本地访问的地址)
- 域名类型:免费选择随机域名
- 地区:选择China VIP
点击创建
隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https
5. 远程访问TeslaMate
使用上面的Cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到我们TeslaMate界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问 !
小结
为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。
这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。
我一般会使用固定二级子域名,原因是我希望将网址发送给同事或客户时,它是一个固定、易记的公网地址(例如:teslamate.cpolar.cn),这样更显正式,便于流交协作。
6. 固定TeslaMate公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】
注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称
保留成功后复制保留成功的二级子域名的名称
返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新(注意,点击一次更新即可,不需要重复提交)
更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名
7. 固定地址访问TeslaMate
最后,我们使用固定的公网https地址访问,可以看到访问成功,输入相关的token即可登录,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地TeslaMate,无需公网IP,无需云服务器,随时随地查看车辆数据!
TeslaMate 与 cpolar 的组合,既守护了特斯拉车主的数据隐私,又打破了局域网的限制,实现了车辆数据的远程便捷管理,是特斯拉车主管理车辆数据的理想选择。
本篇文章知识点来源[cpolar官网][https://www.cpolar.com]
- cpolar博客:配置二级子域名: https://www.cpolar.com/blog/configure-the-secondary-subdomain-name
- cpolar博客:配置自定义域名: https://www.cpolar.com/blog/configure-your-own-domain-name
- cpolar博客:配置固定TCP端口地址: https://www.cpolar.com/blog/configure-fixed-tcp-port-address
- cpolar博客:配置固定FTP地址: https://www.cpolar.com/blog/configure-fixed-ftp-address