Deploy OpenEMS Edge to Docker
This chapter explains how OpenEMS can be deployed using our official Docker image.
Prerequisites:
-
A amd64 or arm64 device running Linux. You need the IP address and SSH access.
-
A working docker environment. To setup follow instruction from docs.docker.com.
1. Prepare system
1.2. Check docker installation
admin@raspi5:~$ docker --version
Docker version 27.3.1, build ce12230
if not already installed, follow Setup docker
1.3. Setup docker
To setup docker follow the instructions from docs.docker.com.
2. Start Container
2.1. Create a Docker compose
Paste content into a docker-compose.yml in a directory of your choice:
services:
openems-edge:
image: openems/edge:latest
container_name: openems_edge
hostname: openems_edge
restart: unless-stopped
volumes:
- openems-edge-conf:/var/opt/openems/config:rw
- openems-edge-data:/var/opt/openems/data:rw
ports:
- 8080:8080 # Apache-Felix
volumes:
openems-edge-conf:
openems-edge-data:
3. OpenEMS Edge UI
If you want to add the OpenEMS Edge UI to your setup, you can do so by adjusting your docker-compose.yml file to look like this:
services:
openems-edge:
image: openems/edge:latest
container_name: openems_edge
hostname: openems_edge
restart: unless-stopped
volumes:
- openems-edge-conf:/var/opt/openems/config:rw
- openems-edge-data:/var/opt/openems/data:rw
ports:
- 8080:8080 # Apache-Felix
- 8085:8085 # UI-Websocket
openems-ui:
image: openems/ui-edge:latest
container_name: openems_ui
hostname: openems_ui
restart: unless-stopped
volumes:
- openems-ui-conf:/etc/nginx:rw
- openems-ui-log:/var/log/nginx:rw
environment:
- WEBSOCKET_HOST=openems_edge
- WEBSOCKET_PORT=8085
ports:
- 80:80
- 443:443
volumes:
openems-edge-conf:
openems-edge-data:
openems-ui-conf:
openems-ui-log:
Summary of the changes:
-
Open a Port for UI Websocket (8085) on the
openems-edgeservice -
Added a new service
openems-uito the docker-compose file -
Added the volumes
openems-ui-confandopenems-ui-log
4. Changing the Language in the UI
To change the language in the OpenEMS UI:
-
Open the OpenEMS Edge UI in your browser.
-
Click the menu-icon in the top-left corner of the UI.
-
Click on the user to enter user settings.
-
Choose your preferred language from the "Sprache wählen"/"Select language" dropdown.
-
The UI will immediately switch to the selected language.
5. Next Steps
After successful deployment:
-
Open your browser and go to
http://localhostor the IP address of your device. -
Log in using default credentials provided in the documentation.
-
Verify that your OpenEMS Edge instance is connected and running.
-
For additional configuration, see: