Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Installation with Docker and Openhab2
- Loading branch information
1 parent
7472c44
commit fda9638
Showing
3 changed files
with
186 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,140 @@ | ||
Installation auf einem Ubuntu System mit openHAB2 und Docker | ||
============================================================ | ||
|
||
1. Voraussetzungen | ||
------------------ | ||
|
||
Für den Betrieb der CometVisu mit openHAB2 und Docker werden folgende Dinge benötigt: | ||
|
||
1. Server mit funktionierender openHAB2 Installation. | ||
2. Docker-CE und Docker Compose | ||
3. Die openHAB Erweiterung *CometVisu* | ||
|
||
.. HINT:: | ||
|
||
Es wird kein zusätzlicher Webserver, wie z.B. Apache o.ä. mit installiertem PHP Support benötigt, da dies | ||
alles Bestandteil des Containers ist. | ||
Die o.g. Punkte sind alles, was zur erfolgreichen Inbetriebnahme erfolderlich ist. | ||
|
||
|
||
2. Installation von Docker-CE und Compose auf dem Server | ||
-------------------------------------------------------- | ||
|
||
Dies alles kann durch folgenden Konsolenbefehle ausgeführt werden: | ||
|
||
.. code-block:: console | ||
# Update | ||
sudo apt-get update | ||
# Vorausetzungen installieren | ||
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common | ||
# Hinzufügen vom Docker GPG-Key | ||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - | ||
# Hinzufügen vom Docker Repositoty | ||
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | ||
# Nochmal ein Update | ||
sudo apt-get update | ||
# Installation docker-ce und Compose | ||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose | ||
3. Systemvorbereitungen | ||
----------------------- | ||
|
||
Damit openHAB mit der CometVisu kommunizieren kann, ist die entsprechende Erweiterung über die PaperUI (http://openhab_adresse:8080) | ||
-> Add-ons -> User Interfaces -> CometVisu oder über die addons.cfg zu installieren. Die Erweiterung *PHP support for CometVisu* | ||
wird in diesem Fall nicht benötigt. | ||
|
||
|
||
.. code-block:: console | ||
# Aktuellen Benutzer zur Gruppe *Docker* hinzufügen | ||
sudo usermod -aG docker $USER | ||
Nach dem Aufnehmen des Benutzers nochmal neu Anmelden | ||
|
||
.. code-block:: console | ||
# Anlegen vom Verzeichnis resource/config unter dem aktuellen Benutzer | ||
sudo mkdir -p resource/config | ||
# Anlegen einer Beispiel XML-Datei unter resource/config | ||
sudo nano resource/config/visu_config.xml | ||
.. code-block:: xml | ||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> | ||
<pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="pure" xsi:noNamespaceSchemaLocation="../visu_config.xsd" lib_version="8"> | ||
<meta> | ||
<statusbar> | ||
<status type="html"><![CDATA[ | ||
<img src="resource/icon/comet_64_ff8000.png" alt="CometVisu" /> by <a href="http://www.cometvisu.org/">CometVisu.org</a> | ||
-<a href=".?forceReload=true">Reload</a> | ||
-<a href="?config=demo">Widget Demo</a> | ||
]]></status> | ||
<status type="html" condition="!edit" hrefextend="config"><![CDATA[ | ||
- <a href="edit_config.html">Edit</a> | ||
]]></status> | ||
<status type="html" condition="edit" hrefextend="all"><![CDATA[ | ||
- <a href=".">normal Mode</a> | ||
]]></status> | ||
<status type="html"><![CDATA[ | ||
- <a href="check_config.php">Check Config</a> | ||
<div style="float:right;padding-right:0.5em">Version: SVN</div> | ||
]]></status> | ||
</statusbar> | ||
</meta> | ||
<page name="Startseite"> | ||
</page> | ||
</pages> | ||
.. code-block:: console | ||
# Anlegen der Verzeichnisse Backup und media unter resource/config | ||
sudo mkdir -p resource/config/media | ||
sudo mkdir -p resource/config/backup | ||
# Rechte für den Webserver setzen | ||
sudo chown -hR www-data:www-data resource/config | ||
4. Cometvisu per Docker installieren | ||
------------------------------------ | ||
Jetzt den Container installieren | ||
|
||
.. code-block:: docker | ||
# yaml datei Anlegen | ||
sudo nano docker-compose.yaml | ||
# Beispielinhalt für openhab2 | ||
version: '3.4' | ||
services: | ||
cometvisu: | ||
image: "cometvisu/cometvisu:latest" | ||
restart: always | ||
ports: | ||
- 80:80 | ||
volumes: | ||
- ./resource/config:/var/www/html/resource/config | ||
environment: | ||
KNX_INTERFACE: "" | ||
CGI_URL_PATH: "/rest/cv/" | ||
BACKEND_PROXY_SOURCE: "/rest" | ||
BACKEND_PROXY_TARGET: "http://<IP-Openhab2>:8080/rest" | ||
.. HINT:: | ||
Bei der YAML-Datei ist darauf zu achten, dass die Einrückungen jeweils mit 2 Leerzeichen erstellt werden. | ||
|
||
.. code-block:: console | ||
# docker starten | ||
docker-compose up -d | ||
Die CometVisu ist dann direkt unter der URL ``http://<IP-Openhab2>:`` im Browser erreichbar. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,41 +1,48 @@ | ||
{ | ||
"_base": "http://www.cometvisu.org/CometVisu/", | ||
"audio": "/latest/manual/config/widgets/audio/index.html#audio", | ||
"break": "/latest/manual/config/widgets/break/index.html#break", | ||
"colorchooser": "/latest/manual/config/widgets/plugins/colorchooser/index.html#colorchooser", | ||
"designtoggle": "/latest/manual/config/widgets/designtoggle/index.html#designtoggle", | ||
"diagram": "/latest/manual/config/widgets/plugins/diagram/index.html#diagram", | ||
"flavour": "/latest/manual/config/flavour.html#flavour", | ||
"gauge": "/latest/manual/config/widgets/plugins/gauge/index.html#gauge", | ||
"image": "/latest/manual/config/widgets/image/index.html#image", | ||
"imagetrigger": "/latest/manual/config/widgets/imagetrigger/index.html#imagetrigger", | ||
"include": "/latest/manual/config/widgets/include/index.html#include", | ||
"info": "/latest/manual/config/widgets/info/index.html#info", | ||
"infoaction": "/latest/manual/config/widgets/infoaction/index.html#infoaction", | ||
"infotrigger": "/latest/manual/config/widgets/infotrigger/index.html#infotrigger", | ||
"install-no-pakets": "/latest/manual/install/install-dev.html#install-no-pakets", | ||
"line": "/latest/manual/config/widgets/line/index.html#line", | ||
"mapping": "/latest/manual/config/mapping.html#mapping", | ||
"multitrigger": "/latest/manual/config/widgets/multitrigger/index.html#multitrigger", | ||
"page": "/latest/manual/config/widgets/page/index.html#page", | ||
"pagejump": "/latest/manual/config/widgets/pagejump/index.html#pagejump", | ||
"powerspectrum": "/latest/manual/config/widgets/plugins/powerspectrum/index.html#powerspectrum", | ||
"pushbutton": "/latest/manual/config/widgets/pushbutton/index.html#pushbutton", | ||
"refresh": "/latest/manual/config/widgets/refresh/index.html#refresh", | ||
"reload": "/latest/manual/config/widgets/reload/index.html#reload", | ||
"rgb": "/latest/manual/config/widgets/rgb/index.html#rgb", | ||
"slide": "/latest/manual/config/widgets/slide/index.html#slide", | ||
"speech": "/latest/manual/config/widgets/plugins/speech/index.html#speech", | ||
"strftime": "/latest/manual/config/widgets/plugins/strftime/index.html#strftime", | ||
"styling": "/latest/manual/config/styling.html#styling", | ||
"switch": "/latest/manual/config/widgets/switch/index.html#switch", | ||
"system-voraussetzungen": "/latest/manual/#system-voraussetzungen", | ||
"text": "/latest/manual/config/widgets/text/index.html#text", | ||
"toggle": "/latest/manual/config/widgets/toggle/index.html#toggle", | ||
"trigger": "/latest/manual/config/widgets/trigger/index.html#trigger", | ||
"urltrigger": "/latest/manual/config/widgets/urltrigger/index.html#urltrigger", | ||
"video": "/latest/manual/config/widgets/video/index.html#video", | ||
"visu-config-details": "/latest/manual/config/index.html#visu-config-details", | ||
"web": "/latest/manual/config/widgets/web/index.html#web", | ||
"widgets": "/latest/manual/config/widgets/index.html#widgets" | ||
"audio": "/develop/manual/config/widgets/audio/index.html#audio", | ||
"colorchooser": "/develop/manual/config/widgets/plugins/colorchooser/index.html#colorchooser", | ||
"gauge": "/develop/manual/config/widgets/plugins/gauge/index.html#gauge", | ||
"group": "/develop/manual/config/widgets/group/index.html#group", | ||
"image": "/develop/manual/config/widgets/image/index.html#image", | ||
"imagetrigger": "/develop/manual/config/widgets/imagetrigger/index.html#imagetrigger", | ||
"info": "/develop/manual/config/widgets/info/index.html#info", | ||
"infoaction": "/develop/manual/config/widgets/infoaction/index.html#infoaction", | ||
"infotrigger": "/develop/manual/config/widgets/infotrigger/index.html#infotrigger", | ||
"line": "/develop/manual/config/widgets/line/index.html#line", | ||
"link": "/develop/manual/config/widgets/plugins/link/index.html#link", | ||
"mapping": "/develop/manual/config/mapping.html#mapping", | ||
"multitrigger": "/develop/manual/config/widgets/multitrigger/index.html#multitrigger", | ||
"notificationcenterbadge": "/develop/manual/config/widgets/notificationcenterbadge/index.html#notificationcenterbadge", | ||
"page": "/develop/manual/config/widgets/page/index.html#page", | ||
"pagejump": "/develop/manual/config/widgets/pagejump/index.html#pagejump", | ||
"powerspectrum": "/develop/manual/config/widgets/plugins/powerspectrum/index.html#powerspectrum", | ||
"pushbutton": "/develop/manual/config/widgets/pushbutton/index.html#pushbutton", | ||
"refresh": "/develop/manual/config/widgets/refresh/index.html#refresh", | ||
"reload": "/develop/manual/config/widgets/reload/index.html#reload", | ||
"rgb": "/develop/manual/config/widgets/rgb/index.html#rgb", | ||
"roundbar": "/develop/manual/config/widgets/roundbar/index.html#roundbar", | ||
"slide": "/develop/manual/config/widgets/slide/index.html#slide", | ||
"strftime": "/develop/manual/config/widgets/plugins/strftime/index.html#strftime", | ||
"switch": "/develop/manual/config/widgets/switch/index.html#switch", | ||
"system-voraussetzungen": "/develop/manual/#system-voraussetzungen", | ||
"text": "/develop/manual/config/widgets/text/index.html#text", | ||
"toggle": "/develop/manual/config/widgets/toggle/index.html#toggle", | ||
"tr064": "/develop/manual/config/widgets/plugins/tr064/index.html#tr064", | ||
"trigger": "/develop/manual/config/widgets/trigger/index.html#trigger", | ||
"urltrigger": "/develop/manual/config/widgets/urltrigger/index.html#urltrigger", | ||
"video": "/develop/manual/config/widgets/video/index.html#video", | ||
"visu-config-details": "/develop/manual/config/index.html#visu-config-details", | ||
"web": "/develop/manual/config/widgets/web/index.html#web", | ||
"widgets": "/develop/manual/config/widgets/index.html#widgets", | ||
"xml-format": "/develop/manual/config/xml-format.html#xml-format", | ||
"xml-format-files": "/develop/manual/config/xml-format.html#xml-format-files", | ||
"xml-format-header": "/develop/manual/config/xml-format.html#xml-format-header", | ||
"xml-format-icons": "/develop/manual/config/xml-format.html#xml-format-icons", | ||
"xml-format-mappings": "/develop/manual/config/xml-format.html#xml-format-mappings", | ||
"xml-format-pages": "/develop/manual/config/xml-format.html#xml-format-pages", | ||
"xml-format-plugins": "/develop/manual/config/xml-format.html#xml-format-plugins", | ||
"xml-format-statusbar": "/develop/manual/config/xml-format.html#xml-format-statusbar", | ||
"xml-format-stylings": "/develop/manual/config/xml-format.html#xml-format-stylings", | ||
"xml-format-templates": "/develop/manual/config/xml-format.html#xml-format-templates" | ||
} |