Kein Problem, mir ist es nur aufgefallen.
Als Programmiere kenne ich das selber und “freue” mich immer über solche Meldungen,
es soll ja überall funktionieren.
Wer kennt es nicht, früher in der Uni “Aber auf meinem Rechner lief es” ;-).
Es kann auch an meinem Container bzw. am OS liegen.
Hostsystem:
System Information
------------------
Raspberry Pi 4 Model B Rev 1.2
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
Raspberry Pi reference 2022-04-04
Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 27a8050c3c06e567c794620394a8c2d74262a516, stage2
Linux SmarthomePi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux
Revision : c03112
Model : Raspberry Pi 4 Model B Rev 1.2
Throttled flag : throttled=0x0
Log:
[migrations] started
[migrations] no migrations found
usermod: no changes
───────────────────────────────────────
_____ __ __ _____ _____ _____ _____
| | | | __|_ _| | |
| --| | |__ | | | | | | | | |
|_____|_____|_____| |_| |_____|_|_|_|
_____ __ __ _ __ ____
| __ | | | | | | \
| __ -| | | | |__| | |
|_____|_____|_|_____|____/
Based on images from linuxserver.io
───────────────────────────────────────
To support LSIO projects visit:
https://www.linuxserver.io/donate/
───────────────────────────────────────
GID/UID
───────────────────────────────────────
User UID: 911
User GID: 911
───────────────────────────────────────
using keys found in /config/keys
[custom-init] No custom files found, skipping...
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Java Util Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling SLF4J API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Apache Commons Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling JULI Logger API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Avalon Logger API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling JBoss Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Log4J v1 API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Log4J v2 API support.
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Initializing Log4j2 using default configuration
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/ops4j/pax/logging/log4j2/internal/bridges/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/resolver/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/util/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Log4J2 configured using default configuration.
org.ops4j.pax.logging.pax-logging-log4j2 [org.ops4j.pax.logging.spi.support.EventAdminConfigurationNotifier] INFO : Sending Event Admin notification (configuration successful) to org/ops4j/pax/logging/Configuration
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Log4J2 configured using configuration from passed properties
2023-08-07T00:23:36,848 [ogging])] INFO [ventAdminConfigurationNotifier] Sending Event Admin notification (configuration successful) to org/ops4j/pax/logging/Configuration
2023-08-07T00:23:37,328 [artLevel] INFO [backend.application.BackendApp] ==========================================
2023-08-07T00:23:37,330 [artLevel] INFO [backend.application.BackendApp] OpenEMS Backend version [2023.8.0] started
2023-08-07T00:23:37,332 [artLevel] INFO [backend.application.BackendApp] ==========================================
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Java Util Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling SLF4J API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Apache Commons Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling JULI Logger API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Avalon Logger API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling JBoss Logging API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Log4J v1 API support.
org.ops4j.pax.logging.pax-logging-api [org.ops4j.pax.logging.internal.Activator] INFO : Enabling Log4J v2 API support.
2023-08-07T00:23:38,704 [artLevel] INFO [rg.eclipse.jetty.server.Server] jetty-11.0.13; built: 2022-12-07T20:47:15.149Z; git: a04bd1ccf844cf9bebc12129335d7493111cbff6; jvm 17.0.8+7-alpine-r2
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Initializing Log4j2 using default configuration
2023-08-07T00:23:39,078 [artLevel] INFO [ession.DefaultSessionIdManager] Session workerName=node0
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/ops4j/pax/logging/log4j2/internal/bridges/' matching criteria annotated with @Plugin
2023-08-07T00:23:39,191 [artLevel] INFO [.server.handler.ContextHandler] Started o.e.j.s.ServletContextHandler@4b8c79e6{/,null,AVAILABLE}
2023-08-07T00:23:39,204 [artLevel] INFO [rg.eclipse.jetty.server.Server] Started Server@7a8f729e{STARTING}[11.0.13,sto=0] @15418ms
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/' matching criteria annotated with @Plugin
2023-08-07T00:23:39,438 [artLevel] INFO [jetty.server.AbstractConnector] Started ServerConnector@581df2d5{HTTP/1.1, (http/1.1)}{0.0.0.0:8079}
2023-08-07T00:23:39,444 [artLevel] INFO [org.apache.felix.http ] Started Jetty 11.0.13 at port(s) HTTP:8079 on context path / [minThreads=8,maxThreads=200,acceptors=1,selectors=2]
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/resolver/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Scanning for classes in '/org/apache/logging/log4j/layout/template/json/util/' matching criteria annotated with @Plugin
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Log4J2 configured using default configuration.
org.ops4j.pax.logging.pax-logging-log4j2 [org.ops4j.pax.logging.spi.support.EventAdminConfigurationNotifier] INFO : Sending Event Admin notification (configuration successful) to org/ops4j/pax/logging/Configuration
org.ops4j.pax.logging.pax-logging-api [log4j2] INFO : Log4J2 configured using configuration from passed properties
2023-08-07T00:23:41,048 [ogging])] INFO [ventAdminConfigurationNotifier] Sending Event Admin notification (configuration successful) to org/ops4j/pax/logging/Configuration
2023-08-07T00:23:41,713 [artLevel] INFO [onent.AbstractOpenemsComponent] [modbus0] Activate Bridge.Modbus.Tcp
2023-08-07T00:23:42,008 [artLevel] INFO [onent.AbstractOpenemsComponent] [ctrlDebugLog0] Activate Controller.Debug.Log
2023-08-07T00:23:42,807 [artLevel] INFO [onent.AbstractOpenemsComponent] [_host] Activate Core.Host
2023-08-07T00:23:42,822 [_host ] ERROR [ost.NetworkConfigurationWorker] [_host] Unable to persist actual network configuration: Base-Path [/etc/systemd/network] does not exist.
io.openems.common.exceptions.OpenemsException: Base-Path [/etc/systemd/network] does not exist.
at io.openems.edge.core.host.OperatingSystemDebianSystemd.getNetworkConfiguration(OperatingSystemDebianSystemd.java:64)
at io.openems.edge.core.host.NetworkConfigurationWorker.forever(NetworkConfigurationWorker.java:34)
at io.openems.common.worker.AbstractWorker$1.run(AbstractWorker.java:129)
2023-08-07T00:23:42,826 [artLevel] INFO [onent.AbstractOpenemsComponent] [_meta] Activate Core.Meta
2023-08-07T00:23:42,961 [artLevel] INFO [onent.AbstractOpenemsComponent] [ctrlApiModbusTcp0] Activate Controller.Api.ModbusTcp.ReadWrite
2023-08-07T00:23:43,018 [dbusTcp0] INFO [s.common.worker.AbstractWorker] [ctrlApiModbusTcp0] Modbus/TCP-Api Read-Write started on port [502] with UnitId [1].
2023-08-07T00:23:43,182 [artLevel] INFO [onent.AbstractOpenemsComponent] [_power] Activate Ess.Power
2023-08-07T00:23:43,301 [artLevel] INFO [onent.AbstractOpenemsComponent] [_evcsSlowPowerIncreaseFilter] Activate Evcs.SlowPowerIncreaseFilter
2023-08-07T00:23:44,093 [artLevel] INFO [onent.AbstractOpenemsComponent] [io0] Activate Simulator.IO.DigitalInputOutput
2023-08-07T00:23:44,098 [artLevel] INFO [ulatorIoDigitalInputOutputImpl] [io0] Creating simulated DigitalOutput [io0/InputOutput0]
2023-08-07T00:23:44,104 [artLevel] INFO [ulatorIoDigitalInputOutputImpl] [io0] Creating simulated DigitalOutput [io0/InputOutput1]
2023-08-07T00:23:44,838 [artLevel] INFO [onent.AbstractOpenemsComponent] [meter0] Activate SolarEdge.Grid-Meter
2023-08-07T00:23:44,898 [artLevel] INFO [onent.AbstractOpenemsComponent] [pvInverter0] Activate SolarEdge.PV-Inverter
2023-08-07T00:23:45,387 [artLevel] INFO [rg.eclipse.jetty.server.Server] jetty-11.0.13; built: 2022-12-07T20:47:15.149Z; git: a04bd1ccf844cf9bebc12129335d7493111cbff6; jvm 17.0.8+7-alpine-r2
2023-08-07T00:23:45,588 [artLevel] INFO [ession.DefaultSessionIdManager] Session workerName=node0
2023-08-07T00:23:45,674 [artLevel] INFO [.server.handler.ContextHandler] Started o.e.j.s.ServletContextHandler@68d6904f{/,null,AVAILABLE}
2023-08-07T00:23:45,689 [artLevel] INFO [rg.eclipse.jetty.server.Server] Started Server@6d2a2b46{STARTING}[11.0.13,sto=0] @21903ms
2023-08-07T00:23:45,856 [artLevel] INFO [jetty.server.AbstractConnector] Started ServerConnector@2f892ad4{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
2023-08-07T00:23:45,863 [artLevel] INFO [org.apache.felix.http ] Started Jetty 11.0.13 at port(s) HTTP:8080 on context path / [minThreads=8,maxThreads=200,acceptors=1,selectors=2]
2023-08-07T00:23:46,464 [artLevel] INFO [onent.AbstractOpenemsComponent] [_componentManager] Activate Core.ComponentManager
2023-08-07T00:23:46,543 [artLevel] INFO [onent.AbstractOpenemsComponent] [ess0] Activate Simulator.EssSymmetric.Reacting
2023-08-07T00:23:46,576 [artLevel] INFO [onent.AbstractOpenemsComponent] [ctrlBalancing0] Activate Controller.Symmetric.Balancing
2023-08-07T00:23:46,659 [artLevel] INFO [onent.AbstractOpenemsComponent] [timeOfUseTariff0] Activate TimeOfUseTariff.Tibber
2023-08-07T00:23:46,697 [artLevel] INFO [onent.AbstractOpenemsComponent] [scheduler0] Activate Scheduler.AllAlphabetically
2023-08-07T00:23:47,478 [artLevel] INFO [onent.AbstractOpenemsComponent] [_appManager] Activate Core.AppManager
2023-08-07T00:23:47,641 [artLevel] INFO [onent.AbstractOpenemsComponent] [_predictorManager] Activate Core.PredictorManager
2023-08-07T00:23:47,682 [artLevel] INFO [onent.AbstractOpenemsComponent] [_sum] Activate Core.Sum
2023-08-07T00:23:47,777 [artLevel] INFO [onent.AbstractOpenemsComponent] [_cycle] Activate Core.Cycle
2023-08-07T00:23:47,823 [artLevel] INFO [onent.AbstractOpenemsComponent] [influx0] Activate Timedata.InfluxDB
2023-08-07T00:23:47,861 [_cycle ] ERROR [org.apache.felix.eventadmin ] EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=io/openems/edge/cycle/BEFORE_PROCESS_IMAGE] {} | [io.openems.edge.bridge.modbus.api.BridgeModbus, io.openems.edge.bridge.modbus.api.BridgeModbusTcp, io.openems.edge.common.component.OpenemsComponent, org.osgi.service.event.EventHandler] | Bundle(io.openems.edge.bridge.modbus [24]) | Handler(io.openems.edge.bridge.modbus.BridgeModbusTcpImpl@69b21ca6)]
java.lang.NoClassDefFoundError: io/openems/edge/common/type/Tuple
at io.openems.edge.bridge.modbus.api.worker.internal.TasksSupplierImpl.lambda$15(TasksSupplierImpl.java:117) ~[?:?]
at java.util.HashMap.forEach(HashMap.java:1421) ~[?:?]
at io.openems.edge.bridge.modbus.api.worker.internal.TasksSupplierImpl.getOneLowPriorityReadTask(TasksSupplierImpl.java:114) ~[?:?]
at io.openems.edge.bridge.modbus.api.worker.internal.TasksSupplierImpl.getCycleTasks(TasksSupplierImpl.java:57) ~[?:?]
at io.openems.edge.bridge.modbus.api.worker.internal.CycleTasksManager.onBeforeProcessImage(CycleTasksManager.java:90) ~[?:?]
at io.openems.edge.bridge.modbus.api.worker.ModbusWorker.onBeforeProcessImage(ModbusWorker.java:165) ~[?:?]
at io.openems.edge.bridge.modbus.api.AbstractModbusBridge.handleEvent(AbstractModbusBridge.java:132) ~[?:?]
at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:432) ~[?:?]
at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutDenylistTiming(HandlerTask.java:82) ~[?:?]
at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:107) ~[?:?]
at org.apache.felix.eventadmin.impl.handler.EventAdminImpl.sendEvent(EventAdminImpl.java:155) ~[?:?]
at org.apache.felix.eventadmin.impl.security.EventAdminSecurityDecorator.sendEvent(EventAdminSecurityDecorator.java:96) ~[?:?]
at io.openems.common.event.EventBuilder.send(EventBuilder.java:68) ~[?:?]
at io.openems.edge.core.cycle.CycleWorker.forever(CycleWorker.java:50) ~[?:?]
at io.openems.common.worker.AbstractWorker$1.run(AbstractWorker.java:129) ~[?:?]
Caused by: java.lang.ClassNotFoundException: io.openems.edge.common.type.Tuple not found by io.openems.edge.common [26]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1591) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1976) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1358) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1612) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1528) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79) ~[?:?]
at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1976) ~[?:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:525) ~[?:?]
... 15 more
2023-08-07T00:23:47,911 [artLevel] INFO [onent.AbstractOpenemsComponent] [ctrlApiWebsocket0] Activate Controller.Api.Websocket
2023-08-07T00:23:47,957 [artLevel] INFO [socket.AbstractWebsocketServer] [ctrlApiWebsocket0] Starting websocket server [port=8085]
2023-08-07T00:23:48,040 [artLevel] INFO [onent.AbstractOpenemsComponent] [ctrlApiRest0] Activate Controller.Api.Rest.ReadWrite
2023-08-07T00:23:48,066 [artLevel] INFO [rg.eclipse.jetty.server.Server] jetty-11.0.13; built: 2022-12-07T20:47:15.149Z; git: a04bd1ccf844cf9bebc12129335d7493111cbff6; jvm 17.0.8+7-alpine-r2
2023-08-07T00:23:48,108 [artLevel] INFO [jetty.server.AbstractConnector] Started ServerConnector@5702ede8{HTTP/1.1, (http/1.1)}{0.0.0.0:8084}
2023-08-07T00:23:48,111 [artLevel] INFO [rg.eclipse.jetty.server.Server] Started Server@49a5a44c{STARTING}[11.0.13,sto=0] @24327ms
2023-08-07T00:23:48,113 [artLevel] INFO [.ControllerApiRestReadOnlyImpl] [ctrlApiRest0] REST-Api Read-Write started on port [8084].
2023-08-07T00:23:48,363 [_cycle ] WARN [ms.edge.core.cycle.CycleWorker] [_cycle] Error in Controller [ctrlBalancing0]: Value for Channel [ess0/ActivePower] is invalid.
2023-08-07T00:23:48,413 [_cycle ] INFO [ebuglog.ControllerDebugLogImpl] [ctrlDebugLog0] _componentManager[Defective:null[Unsatisfied reference for $000,$003] _sum[Unsatisfied reference for componentManager] timeOfUseTariff0[Unsatisfied reference for componentManager] ctrlApiRest0[Unsatisfied reference for componentManager] _cycle[Unsatisfied reference for componentManager,sumComponent] influx0[Unsatisfied reference for componentManager,cycle] _appManager[Unsatisfied reference for componentManager,componentUtil,csoAppManagerAppHelper] ctrlApiWebsocket0[Unsatisfied reference for componentManager] _predictorManager[Unsatisfied reference for componentManager] scheduler0[Unsatisfied reference for componentManager] ctrlBalancing0[Unsatisfied reference for ess ((&(enabled=true)(!(service.pid=Controller.Symmetric.Balancing.054357bc-b6b5-4efe-b5d7-76e4d992324d))(|(id=ess0))))]|State:FAULT: A configured OpenEMS Component was not activated] _sum[State:Fault Ess SoC:50 %] ess0[SoC:50 %|L:UNDEFINED|Allowed:-13000;13000 W] io0[--] meter0[L:UNDEFINED] modbus0[CycleDelay:0 ms] pvInverter0[L:UNDEFINED]
2023-08-07T00:23:48,887 [_cycle ] INFO [ker.internal.CycleTasksManager] State: FINISHED -> WRITE (onExecuteWrite)
2023-08-07T00:23:57,783 [_cycle ] INFO [ker.internal.CycleTasksManager] State: WRITE unchanged (in onBeforeProcessImage) Delay [0] CYCLE_TIME_TOO_SHORT
2023-08-07T00:23:57,833 [_cycle ] WARN [ms.edge.core.cycle.CycleWorker] [_cycle] Error in Controller [ctrlBalancing0]: Value for Channel [meter0/ActivePower] is invalid.
2023-08-07T00:23:57,843 [_cycle ] INFO [ebuglog.ControllerDebugLogImpl] [ctrlDebugLog0] _sum[State:Ok Ess SoC:50 %|L:0 W Consumption:0 W] ctrlBalancing0[State:FAULT: Running the Controller failed] ess0[SoC:50 %|L:0 W|Allowed:-13000;13000 W] io0[--] meter0[L:UNDEFINED] modbus0[CycleDelay:0 ms] pvInverter0[L:UNDEFINED]
2023-08-07T00:23:57,848 [thread-1] INFO [hared.influxdb.InfluxConnector] [InfluxDB] [monitor] Pool: 0/5, Pending: 0, Completed: 0, Active: 0 Queue:0/1000000
2023-08-07T00:23:57,858 [_cycle ] INFO [ker.internal.CycleTasksManager] State: WRITE -> WRITE (onExecuteWrite)
2023-08-07T00:24:07,782 [_cycle ] INFO [ker.internal.CycleTasksManager] State: WRITE unchanged (in onBeforeProcessImage) Delay [0] (time is invalid)
2023-08-07T00:24:07,817 [_cycle ] WARN [ms.edge.core.cycle.CycleWorker] [_cycle] Error in Controller [ctrlBalancing0]: Value for Channel [meter0/ActivePower] is invalid.
2023-08-07T00:24:07,828 [_cycle ] INFO [ebuglog.ControllerDebugLogImpl] [ctrlDebugLog0] _sum[State:Fault Ess SoC:50 %|L:0 W Consumption:0 W] ctrlBalancing0[State:FAULT: Running the Controller failed] ess0[SoC:50 %|L:0 W|Allowed:-13000;13000 W] io0[--] meter0[L:UNDEFINED] modbus0[CycleDelay:0 ms] pvInverter0[L:UNDEFINED]
2023-08-07T00:24:07,841 [_cycle ] INFO [ker.internal.CycleTasksManager] State: WRITE -> WRITE (onExecuteWrite)
2023-08-07T00:24:07,852 [thread-1] INFO [hared.influxdb.InfluxConnector] [InfluxDB] [monitor] Pool: 1/5, Pending: 0, Completed: 0, Active: 1 Queue:0/1000000
2023-08-07T00:24:17,782 [_cycle ] INFO [ker.internal.CycleTasksManager] State: WRITE unchanged (in onBeforeProcessImage) Delay [0] (time is invalid)
2023-08-07T00:24:17,819 [_cycle ] WARN [ms.edge.core.cycle.CycleWorker] [_cycle] Error in Controller [ctrlBalancing0]: Value for Channel [meter0/ActivePower] is invalid.
2023-08-07T00:24:17,829 [_cycle ] INFO [ebuglog.ControllerDebugLogImpl] [ctrlDebugLog0] _sum[State:Fault Ess SoC:50 %|L:0 W Consumption:0 W] ctrlBalancing0[State:FAULT: Running the Controller failed] ess0[SoC:50 %|L:0 W|Allowed:-13000;13000 W] io0[--] meter0[L:UNDEFINED] modbus0[CycleDelay:0 ms] pvInverter0[L:UNDEFINED]
Dockerfile:
FROM alpine:latest AS downloader
RUN apk update && apk upgrade
RUN apk add --no-cache \
git \
py3-pip \
openjdk17-jre-headless \
nodejs \
npm
RUN pip install --break-system-packages lastversion
RUN npm install -g @angular/cli
RUN git clone -b main https://github.com/OpenEMS/openems.git /src
# Anpassung für das UI auf /websocket
COPY src/ /src
# Selber kompilieren von Edge und Backend
#WORKDIR /src
#RUN ./gradlew buildEdge
#RUN ./gradlew buildBackend
# Selber compilieren von UI
WORKDIR /src/ui
RUN npm install
RUN ng build -c "openems,openems-edge-prod,prod"
# Herunterladen der aktuellsten Version
WORKDIR /ddl
RUN lastversion --assets --filter openems-edge.jar download https://github.com/OpenEMS/openems
RUN lastversion --assets --filter openems-backend.jar download https://github.com/OpenEMS/openems
FROM ghcr.io/linuxserver/baseimage-alpine:edge
RUN apk update && apk upgrade
RUN apk add --no-cache \
openjdk17-jre-headless \
nginx \
openssl
RUN mkdir -p /app/www
WORKDIR /app
COPY --from=downloader /ddl /app
COPY --from=downloader /src/ui/target /app/www
# Kopieren von init Scripten und nginx Konfiguration
COPY root/ /
# Überschreiben von edge und backend für andere Version
#COPY app/ /app
RUN mkdir -p /{config,data,log}
VOLUME /config
VOLUME /data
VOLUME /log
EXPOSE 80 443 8075-8080 8082 8084 8085
Docker Compose:
version: "3.8"
services:
openems:
image: openems:latest
container_name: openems
hostname: openems
restart: unless-stopped
stop_grace_period: 30s
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
- /docker/openems_stack/conf:/config:rw
- /docker/openems_stack/data:/data:rw
- /docker/openems_stack/log:/log:rw
networks:
macvlan-iot:
ipv4_address: 10.13.12.32
db:
mqtt:
modbus:
proxy:
networks:
macvlan-iot:
external: true
mqtt:
external: true
db:
external: true
modbus:
external: true
proxy:
external: true