能点进来的大概率都是特斯拉车友~~
本篇记录一下使用极空间Z4家庭NAS搭建TeslaMate的全过程,使用极空间最近更新的虚拟机功能,在虚拟机中安装Ubuntu部署Docker。当然大家用PC虚拟机搭建也可以啦!
至于为什么不用极空间自带的Docker功能,emmm并不好用。
要是想要使用自带的docker来搭建,可以参照这个https://post.smzdm.com/p/az59px95/
本人自学小白,纯纯百度自学有什么写错的地方欢迎大家指正,共同进步!
TeslaMate是一款备受特斯拉车主欢迎的开源解决方案,它为特斯拉车主提供了一系列强大的功能,包括数据分析、监控、统计通知等。作为开源项目,TeslaMate的代码完全开放,有一个活跃的社区在不断更新和改进它。 本文将介绍TeslaMate是什么以及如何简单搭建。
Teslamate官方文档:
【原版】:https://docs.teslamate.org/docs/installation/docker
【中文】:https://docs.teslamate.com.cn/docs/introduction
提示:以下是本篇文章正文内容,下面案例可供参考
此处演示使用极空间Z4虚拟机搭建
百度一下“我告诉你”或者直接点这个链接:https://next.itellyou.cn/Original/Index
这是一个下载工具和镜像的网站,很好用,反正我很多的镜像就是从他们这里下载的。
选择Ubuntu的图标,点【详细信息】跳转,这次演示的是用服务器版本的20.04,复制BT链接,用下载工具就能下载了。
推荐直接在极空间里面下载,可以直接保存在Z4的M.2高速硬盘中,方面后面虚拟机使用。(Z4使用虚拟机好像必须插一条m.2固态)
下载完成后初始化Z4的虚拟机功能,
点击新建虚拟机——勾选Linux——下一步
虚拟机名字随意,镜像文件选择刚刚下载的镜像.img,开机策略按需选择,远程端口我还没用到我就随便写了一个。
——下一步
存放目录就选高速硬盘,我这边给它分了20GB空间,后面可以修改,无所谓
网卡模式选择桥接,这里可能需要设置一下网口的配置,按照极空间的指引就行~
没什么问题就可以创建了~
等待几秒后,创建的虚拟机状态变成【运行中】,就能点访问打开虚拟机了。
没有中文,就选英文咯
这里不需要安装更新,直接安装就行了
键盘配置就按照默认就行了
如果前面网卡选择桥接,这里会识别到IP地址,无脑Done
无脑Done
这里可以改镜像地址,我没有改,我用的是默认的,可能默认需要梯子哦~
这里按默认就行,无脑Done
这里随意输入,用户名和密码后面要用
这里需要勾选安装SSH,后面大部分都是用SSH连接,很方便
我这里什么都没选择,剩下就等待安装就行。
左上角提示安装成功后可以选择跳过更新安装,剩下就是等待。。。。
如果长时间卡在这里,可以手动在虚拟机管理器中进行重启,再次登录
按回车后输入自己的用户名和密码,可以登录代表Ubuntu安装成功了。
接下来就是获取root权限,我们自己建立的账号权限比较,所以要解锁root权限
输入以下指令,回车,输入新的root密码
sudo passwd root
运行指令后分别输入自己用户的密码和两遍root的密码(是创建密码),这样就完成了root权限用户的创建激活。
然后运行以下指令,切换为root,输入刚才创建的root密码登录root。
su root
出现“root@ubuntu:/home/XXX#”就完成了ROOT权限账户的激活。
运行以下指令,修改配置信息
vi /etc/ssh/sshd_config
键盘按“i”可以进行修改,如下图。
修改完成后按esc,输入命令“:wq!”,保存并退出
wq!
service ssh restart
最后一步在虚拟机操作的就是确定ip地址,后面用SSH工具连接要用到,用ip address show
命令可以查看当前的IP地址。比我当前就是192.168.11.186
OK!到这一步我们之后的操作可以转到SSH工具端了。
有很多这类型的工具都可以用,我用的是Aechoterm好像对个人用户是免费的,界面挺好看。
【官网】https://ec.nantian.com.cn/#/home
打开SSH工具,创建SSH会话,配置信息按照自己实际填写,ip地址是刚才察查看的ubuntu的ip,端口号默认是22,用户名是root,密码是之前创建的,测试连接通过后就能保存连接了。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/6b0670765bed431593965d5af6835b8a.png
出现下面这个画面就是SSH连接成功了
ok,开始第一步,卸载残留docker,运行:
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
正常得到下图反馈结果(之前未安装,所以也没有可以删除的)
接着运行:
sudo apt-get update
接着运行:
sudo apt-get install ca-certificates curl gnupg
接着运行:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose docker-compose-plugin
反馈如下,输入【Y】回车继续,等待进度走完
结果如下
运行一个HelloWord,测试一下Docker
sudo docker run hello-world
sudo service docker restart
然后再运行:
sudo docker run hello-world
反馈如下,代表Docker已经安装可以运行
到此已经完成了Docker的部署,接下来就是安装TeslaMate。
使用SSH客户端软件的SFTP功能,如下
在root/data/docker-data/teslamate/路径下新建一个文件命名为【docker-compose.yml】,路径中没有文件夹可以自己补充,如下
双击打开此文件,将下面信息复制进去,注意需要按实际情况修改四处内容
注意注意!此处我使用汉化的TeslaMate作为演示! 非汉化版本附在下方,使用方法相同!
注意注意!此处我使用汉化的TeslaMate作为演示! 非汉化版本附在下方,使用方法相同!
注意注意!此处我使用汉化的TeslaMate作为演示! 非汉化版本附在下方,使用方法相同!
#这是汉化版本!这是汉化版本!这是汉化版本!这是汉化版本!
version: "3"
services:
teslamate:
image: dhuar/teslamate:latest
restart: always
environment:
- ENCRYPTION_KEY=#输入一个Key,用于加密Tesla API Token,随便输入就行
- DATABASE_USER=teslamate
- DATABASE_PASS=#输入一个数据库密码,随便输入就行
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
ports:
- 4000:4000
volumes:
- ./import:/opt/app/import
cap_drop:
- all
database:
image: postgres:15
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=#输入一个数据库密码,随便输入就行
- POSTGRES_DB=teslamate
volumes:
- teslamate-db:/var/lib/postgresql/data
grafana:
image: dhuar/grafana:latest
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=#输入一个数据库密码,随便输入就行
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- 3000:3000
volumes:
- teslamate-grafana-data:/var/lib/grafana
mosquitto:
image: eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
# ports:
# - 1883:1883
volumes:
- mosquitto-conf:/mosquitto/config
- mosquitto-data:/mosquitto/data
volumes:
teslamate-db:
teslamate-grafana-data:
mosquitto-conf:
mosquitto-data:
注意注意!此处为官方原版!
注意注意!此处为官方原版!
注意注意!此处为官方原版!
#这是官方原版!这是官方原版!这是官方原版!这是官方原版!
version: "3"
services:
teslamate:
image: teslamate/teslamate:latest
restart: always
environment:
- ENCRYPTION_KEY=secretkey #replace with a secure key to encrypt your Tesla API tokens
- DATABASE_USER=teslamate
- DATABASE_PASS=password #insert your secure database password!
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
ports:
- 4000:4000
volumes:
- ./import:/opt/app/import
cap_drop:
- all
database:
image: postgres:15
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=password #insert your secure database password!
- POSTGRES_DB=teslamate
volumes:
- teslamate-db:/var/lib/postgresql/data
grafana:
image: teslamate/grafana:latest
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=password #insert your secure database password!
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- 3000:3000
volumes:
- teslamate-grafana-data:/var/lib/grafana
mosquitto:
image: eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
# ports:
# - 1883:1883
volumes:
- mosquitto-conf:/mosquitto/config
- mosquitto-data:/mosquitto/data
volumes:
teslamate-db:
teslamate-grafana-data:
mosquitto-conf:
mosquitto-data:
以下四处自行补充,填入=之后,注意=后不要留空格(建议16位以上)
ENCRYPTION_KEY=
DATABASE_PASS=
POSTGRES_PASSWORD=
DATABASE_PASS=
后三者可以使用相同的KEY,可以使用在线工具随机生成https://tools.fun/password.html
如下图,修改完成后右下角保存即可。
回到SSH界面,依次运行:
cd /root/data/docker_data/teslamate
docker-compose up -d
等待docker拉去镜像文件进行安装,反馈如下
ok,到这里服务器端搭建完成,后面就需要登录设置了
现在开始设置TeslaMate
用同一局域网下的设备打开TeslaMate后台,地址为http://ip:4000
IP是Ubuntu的IP地址,如下
需要我们填写两个Key,这个和自己的Tesla账号有关
使用苹果设备的同学可以下载Auth for Tesla
这个app,登录自己的Tesla账号后就会显示
安卓同学可以下载这个Tesla Tokens
,登录获取(鸿蒙不清楚,可以尝试一下)
PC或者MAC端可以访问https://github.com/adriankumpf/tesla_auth
以下我用iPhone做演示,按照箭头指示复制进去
复制后,点击登录即可
点击右上角设置,拉到页面最下,填写Grafana后台地址,地址为http://ip:3000
,IP为Ubuntu地址,如下
接下来转到【Grafana】
用同一局域网下的设备打开Grafana后台,地址为http://ip:3000
IP是Ubuntu的IP地址,如下
默认用户和密码均为admin,首次登录后创建新密码,进入后界面如下
首次创建后部分信息需要行驶一段时间后才能及时更新,各位慢慢自己摸索~
OKK
以上完成了TeslaMate的搭建,当然目前肯定功能还不完善,比如没有设置端口转发,外网没办法访问之类的,有机会之后一步步再完善,非常欢迎与我讨论。
我一个小白前前后后花了3天重新搭建了TeslaMate,借鉴了很多CSDN大神们的经验,非常感谢!
https://blog.csdn.net/RRiddle/article/details/135362281
https://blog.csdn.net/oakley0/article/details/118863847
https://blog.csdn.net/iijik55/article/details/124090308
关于TeslaMate其他的内容我后面会慢慢再补充~
本次经验分享有很多的不足之处,欢迎各位指出,我们共同进步~