Guide · Docker from the command line
Install TED from the command line
For Docker users: NAS (Synology over SSH, QNAP…), mini-PC, Raspberry Pi 4 or 5, Linux server. The public tedenergy/ted image exists for Intel / AMD and ARM64: Docker picks the right one.
- 1
Create TED's folder
It keeps settings, license, history and logs from one version to the next. Example for a Synology; on a PC or a Raspberry Pi,
~/tedis fine.TED's foldersudo mkdir -p /volume1/docker/ted - 2
Start TED
One port and one folder are enough: no variable to set.
Start TEDsudo docker run -d \ --name ted-bot \ --restart unless-stopped \ -p 5002:5000 \ -v /volume1/docker/ted:/data \ tedenergy/ted:latest - 3
Open TED
http://MACHINE-IP:5002: the setup wizard asks for the free license, then the Home Assistant address and a long-lived access token (Home Assistant › your profile › Security › Long-lived access tokens). Then getting started.
With Docker Compose
services:
ted:
image: tedenergy/ted:latest
container_name: ted-bot
restart: unless-stopped
ports:
- "5002:5000"
volumes:
- ./ted:/data
sudo docker compose up -d
Update
Updating TED
Pull the image, then recreate the container with the same command: your data stays in the folder mounted on /data.
sudo docker pull tedenergy/ted:latest
sudo docker rm -f ted-bot
# then run the step 2 command again
sudo docker compose pull && sudo docker compose up -d
Without Docker Hub
Offline installation
For a machine without access to Docker Hub: download the image archive from the download page, ted-bot-v3.5.tar.gz (52 Mo) for Intel / AMD or ted-bot-v3.5-arm64.tar.gz for ARM64.
gunzip -c ted-bot-v3.5.tar.gz | sudo docker load
sudo docker run -d --name ted-bot --restart unless-stopped \
-p 5002:5000 -v /volume1/docker/ted:/data ted-bot:latest
Both archives load as ted-bot:latest. The install_ted_prebuilt.sh script from the download page does these steps in one go (it also asks for the Home Assistant token). To update: load the new archive, then recreate the container.
Troubleshooting
Something wrong?
sudo docker ps --filter name=ted-bot
sudo docker logs --tail 80 ted-bot
“Home Assistant injoignable” (unreachable) in the wizard
Use the Home Assistant IP address with its port (http://192.168.1.50:8123): homeassistant.local is not always known inside a container.
Port 5002 is already in use
Replace -p 5002:5000 with another free port (preferably between 5003 and 5009) and open TED on that port.
Access from outside
Never expose TED's interface on the Internet: prefer a VPN. For the mobile app away from home, enable remote access in TED (Paramètres › Application mobile et accès à distance): TED then only accepts requests signed by the app, and shows the procedure.
Still stuck? Let an AI guide you · Discord
TED is running? Move on to getting started.
The setup wizard, then your first inverters: everything is explained.