Files
archived-teslamate/docs/installation/docker.md
T
2020-03-02 10:29:09 +01:00

2.2 KiB

Simple Docker Setup

This setup is recommended only if you are running TeslaMate on your home network, as otherwise your Tesla credentials might be at risk. If you intend to expose TeslaMate directly to the internet consider using the advanced Docker setup.

Requirements

  • Docker
  • A Machine that's always on, so TeslaMate can continually fetch data
  • External internet access, to talk to tesla.com

If you are new to Docker, see Installing Docker and Docker Compose

Setup

Create a file called docker-compose.yml with the following content:

docker-compose.yml

version: '3'

services:
  teslamate:
    image: teslamate/teslamate:latest
    restart: always
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
      - MQTT_HOST=mosquitto
    ports:
      - 4000:4000
    volumes:
      - ./import:/opt/app/import
    cap_drop:
      - all

  database:
    image: postgres:12
    restart: always
    environment:
      - POSTGRES_USER=teslamate
      - POSTGRES_PASSWORD=secret
      - POSTGRES_DB=teslamate
    volumes:
      - teslamate-db:/var/lib/postgresql/data

  grafana:
    image: teslamate/grafana:latest
    restart: always
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
    ports:
      - 3000:3000
    volumes:
      - teslamate-grafana-data:/var/lib/grafana

  mosquitto:
    image: eclipse-mosquitto:1.6
    restart: always
    ports:
      - 1883:1883
    volumes:
      - mosquitto-conf:/mosquitto/config
      - mosquitto-data:/mosquitto/data

volumes:
    teslamate-db:
    teslamate-grafana-data:
    mosquitto-conf:
    mosquitto-data:

Start Docker

Afterwards start the stack with docker-compose up. To run the containers in the background add the -d flag: docker-compose up -d.

Usage

  1. Open the web interface http://your-ip-address:4000
  2. Sign in with your Tesla account
  3. The Grafana dashboards are available at http://your-ip-address:3000.