-
Notifications
You must be signed in to change notification settings - Fork 2
Home
git clone https://github.com/pifou25/docker-jeedom.git
se placer dans le répertoire créé, copier le fichier .env.default en .env, modifier les mot de passe... puis lancer le build + run docker en mode detach:
docker compose up -d
Ceci build et démarre plusieurs containers qui ont pour nom: jeedom, db, scheduler, et adminer (ou bien phpmyadmin)
Lorsque l'installation est terminée, se connecter à Jeedom (admin / admin, modifier le mot de passe à la 1ère connexion, puis ensuite, se connecter également au market Jeedom, pour enfin accéder au Dashboard).
un mode 'try-it-online' avec le site https://labs.play-with-docker.com/ : ajouter une instance, et lancer les 2 commandes suivantes:
wget https://raw.githubusercontent.com/pifou25/docker-jeedom/master/docker-compose.yml
docker compose up -d
docker inspect {{contaier name}}
Exemple : docker inspect jeedom
ceci fourni une information intéressante qui est l'IP du container Jeedom, il faudra renseigner cette IP dans les paramètres réseau de Jeedom.
On ne se connecte pas en ssh dans un container, à la place on exécute cette commande docker:
docker exec -it {{container name}} /bin/bash
ex: docker exec -it jeedom sh
docker-compose up -d --build
stop & remove, puis (re)build and start :
docker-compose down && docker-compose up -d --build
Compose accepte un fichier .env contenant les variables à utiliser. Simple syntaxe: KEY=value
Néanmoins, les variables d'environnement et / ou celles en ligne de commande sont prioritaires.
La substitution dans le fichier yml de Docker-Compose se fait avec la syntaxe suivante: ${KEY}
. Pour un container, passer la variable d'environnement est encore plus simple:
web:
environment:
- KEY: "value"
Exemple intéressant d'un if
dans un Dockerfile en fonction d'une variable d'environnement. Pour ajouter - ou pas - xdebug par un simple paramètre...
https://github.com/llaumgui/docker-images-php-fpm/blob/main/8.0/Dockerfile
https://stackoverflow.com/questions/43654656/dockerfile-if-else-condition-with-external-arguments
Voir les bonnes idées sur ce projet: https://github.com/edgd1er/jeedom-rpi
- copier des fichiers utiles depuis le repo Jeedom (pour rester à jour des MAJ)
- build multi-plateformes et multi-arguments pour générer plusieurs TAGs
docker hub container PHP supported tags et readme sur github: supporte PHP jusqu'à 8.0 et 8.1, sur les Debian 10 (Buster) et 11 (Bullseye)
Configure mariadb env with variables
Reference Docker Compose Dockerfile and so on...
Traefik Pour Docker et en particulier ACME Challenge OVH et aussi le Certificat Wildcard Letsencrypt Traefik
Fixer le port d'une clé USB par son ID
L'image est enregistrée sur le docker hub elle n'est plus à jour :
docker pull pifou25/jeedom
lister l'image docker:
docker image ls
ou docker images
c'est pareil
démarrer une instance de l'image avec docker run ...
Démarrer l'image officielle après l'avoir téléchargé, avec le nom / hosname / volume partagé / port de publication:
$ docker run --name jeedom --hostname jeedom --detach -v $PWD/jeedom:/var/www/html -v $PWD/mysql:/var/lib/mysql --publish 80:80 pifou25/jeedom