Teslamate
黑群晖思路:docker搭建,然后利用cloudflare的套件隧道链接到3000端口进行公网访问,速度应该还不错
SSH进入系统,软件建议FinaShell
apt update
apt upgrade -y
apt install vim nano -y
以上命令安装常用工具
安装docker命令如下:curl -fsSL https://get.docker.com | bash -s docker
docker run --rm -v /usr/local/bin:/dist gists/docker-compose-bin:latest && docker rmi gists/docker-compose-bin:latest
安装docker-composedocker run --rm -v /usr/local/bin:/dist gists/docker-compose-bin:latest && docker rmi gists/docker-compose-bin:latest
使用FinaShell可视化处理(如果黑群晖无法查看文件夹可以使用WinSCP新建处理),root文件夹下新建“tesla”文件夹cd /root/tesla
#进入tesla文件夹
新建文件
nano docker-compose.yml
然后复制官网的命令有几处需要修改(中文的下拉)
version: "3"
services:
teslamate:
image: teslamate/teslamate:latest
restart: always
environment:
- ENCRYPTION_KEY=secretkey #这里没懂,建议看官方介绍
- DATABASE_USER=teslamate
- DATABASE_PASS=password #可以自定密码
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
ports:
- 4000:4000 #如果要修改前端访问端口可以设置80:4000,这样就可以直接输入域名或者IP访问,前提是端口没有占用 使用devv.ai查询端口占用命令看一下
volumes:
- ./import:/opt/app/import
cap_drop:
- all
database:
image: postgres:15
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=password #可以自定密码
- POSTGRES_DB=teslamate
volumes:
- ./teslamate-db:/var/lib/postgresql/data #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
grafana:
image: teslamate/grafana:latest
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=password #可以自定密码
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- 3000:3000
volumes:
- ./teslamate-grafana-data:/var/lib/grafana #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
mosquitto:
image: eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
# ports:
# - 1883:1883
volumes:
- ./mosquitto-conf:/mosquitto/config #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器当前目录下的"mosquitto-conf"文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
- ./mosquitto-data:/mosquitto/data #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
volumes:
teslamate-db: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
teslamate-grafana-data: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
mosquitto-conf: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
mosquitto-data: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
中文版(侵权联系删除)
version: "3"
services:
teslamate:
image: dhuar/teslamate:latest
restart: always
environment:
- ENCRYPTION_KEY=secretkey #这里没懂,建议看官方介绍
- DATABASE_USER=teslamate
- DATABASE_PASS=password #可以自定密码
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
- MQTT_HOST=mosquitto
ports:
- 4000:4000 #如果要修改前端访问端口可以设置80:4000,这样就可以直接输入域名或者IP访问,前提是端口没有占用 使用devv.ai查询端口占用命令看一下
volumes:
- ./import:/opt/app/import
cap_drop:
- all
database:
image: postgres:15
restart: always
environment:
- POSTGRES_USER=teslamate
- POSTGRES_PASSWORD=password #可以自定密码
- POSTGRES_DB=teslamate
volumes:
- ./teslamate-db:/var/lib/postgresql/data #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
grafana:
image: dhuar/grafana:latest
restart: always
environment:
- DATABASE_USER=teslamate
- DATABASE_PASS=password #可以自定密码
- DATABASE_NAME=teslamate
- DATABASE_HOST=database
ports:
- 3000:3000 #如果要修改前端访问端口可以设置80:4000,这样就可以直接输入域名或者IP访问,前提是端口没有占用 使用devv.ai查询端口占用命令看一下
volumes:
- ./teslamate-grafana-data:/var/lib/grafana #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
mosquitto:
image: eclipse-mosquitto:2
restart: always
command: mosquitto -c /mosquitto-no-auth.conf
# ports:
# - 1883:1883
volumes:
- ./mosquitto-conf:/mosquitto/config #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器当前目录下的"mosquitto-conf"文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
- ./mosquitto-data:/mosquitto/data #此处官网前面少一个./命令,这个命令映射docker内程序的文件夹到服务器指定文件夹,冒号前面是指定文件夹,后面是docker内文件夹前面可以只有设置指定到服务器某文件夹,建议先行设置,然后设置访问权限为777
volumes:
teslamate-db: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
teslamate-grafana-data: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
mosquitto-conf: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
mosquitto-data: #此处名称是对应上面设置的文件夹,如果是复制命令无需修改
修改好后 Ctrl+X然后保存退出
输入命令docker-compose up -d
运行如文件夹权限无问题即可运行
如果3000端口无法打开,可以查看grafana日志
利用docker run -d --restart=always --name=portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data 6053537/portainer
这个工具可以查看docker日志
或者docker logs <grafana_container_id>
命令查看日志
grafana_container_iddocker ps -a
命令进行查看如果提示文件夹错误那就是权限问题
利用finalshell右键teslamate-grafana-data文件夹权限,打钩全部
或者执行命令sudo chmod 777 /root/tesla/teslamate-grafana-data
然后reboot重启服务器即可运行
完结,下次有时间再弄黑群晖的