
Prerrequisitos:
Este tutorial esta basado en una imagen ubuntu-20.04.2.0-desktop-amd64.iso



Antes que nada, debemos actualizar nuestro sistema utilizando los comandos:
sudo apt-get update
sudo apt-get upgrade
Asimismo debemos establecer el nombre del host:
sudo hostname myopenhab.tudominio.es
Procedemos con la instalación del Docker y el Docker-Compose
————————————-
Documentación relacionada:
https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
https://docs.docker.com/compose/install/ → Linux
————————————-
Se instala el repositorio sobre HTTPS:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release

Instalación del Docker
Añadimos la clave GPG oficial de Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Utilice el siguiente comando para configurar el repositorio estable
echo \
“deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable” | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Actualizamos nuevamente el APT:
sudo apt-get update
Y procedemos a instalar la última versión de Docker Engine y containerd:
sudo apt-get install docker-ce docker-ce-cli containerd.
Y verificamos la versión instalada
docker –version

Para poder ejecutar Docker en caso de no ser root, añadimos el usuario al grupo “docker”
sudo usermod -aG docker $USER + +Y creamos en nuevo grupo “docker”
newgrp docker
Procedemos a ejecutar una imagen de prueba para validar si Docker-Engine esta instalado y funcionando correctamente:
docker run hello-world

Instalación del Docker-Compose
Se ejecuta el comando para descagar la ultima versión del Docker-Compose:
sudo curl -L “https://github.com/docker/compose/releases/download/1.29.0/docker-compose-$(uname -s)-$(uname -m)” -o /usr/local/bin/docker-composse

Aplicamos los permisos ejecutables al binario:
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
Se comprueba la instalación y versión del Docker-Compose:
docker-compose –version

*Instalación del OpenHAB Cloud Service
Vamos a la ruta en la que queramos instalarlo desde GIT:
cd /home/ubuntu
Clonamos el directorio:
git clone https://github.com/openhab/openhab-cloud.git

Luego nos vamos a la ruta para configurar el OHCS en el Docker Compose:
cd /home/ubuntu/openhab-cloud/deployment/docker-compose
Guardamos una copia del fichero .env:
sudo cp .env .env.BAK
Asimismo creamos el fichero config.json desde la plantilla config.json.template
sudo cp config.json.template config.json
Y editamos ambos archivos según los ajustes que necesitemos:
sudo nano .env // Cambiar todos los campos

sudo nano config.json //Cambiar “registration_enabled” a true para la inicialización (volver a false al registrarse)


Editar el “docker-compose.yml”:
sudo nano docker-compose.yml
Añadir esto (vvv) debajo de la línea que empieza con ./config.json.template
– ./config.json:/opt/openhabcloud/config.json

Continuar editando el “docker-compose.yml”: +
y copiar (por la indexación) esta (vvv) línea (que está en otras secciones) al final de la sección “traefik:”:
+# restart: always

Extrae una imagen asociada con un servicio definido en el fichero docker-compose.yml, es decir, ejecutamos lo que esta en este fichero:
sudo docker-compose pull

Iniciamos la imagen recientemente creada:
sudo docker-compose up -d

Vemos los archivos de logs de ejecución de esta imagen:
sudo docker-compose logs -f app

En este punto ya podemos ir a nuestro Dominio y ver que se ejecuta perfectamente:
