We’ve just deployed the Virtual Container Host (VCH) in the previous post. It’s time to run your first real world containers. In this post some containers for home automation will be deployed like Home-Assistant, Mosquitto, Node-RED.
First we deploy a container where you’ll get a GUI to have a view over your container deployment.
docker --tls run -d -p 8282:8282 --name admiral vmware/admiral Unable to find image 'vmware/admiral:latest' locally latest: Pulling from vmware/admiral 1c0b69d98c5b: Pull complete a3ed95caeb02: Pull complete f1bf54e3bee2: Pull complete a636bec27aa0: Pull complete 9cf592e78ba2: Pull complete 827165f1c6de: Pull complete 3addb704a0c6: Pull complete 2ca7dc8e087d: Pull complete e14e9eff31ca: Pull complete 2626a5abb3b1: Pull complete f2c95f6064e6: Pull complete Digest: sha256:82474001628fb5043caceb1c3c5a1c4a9b8246a84eddbf95756d46c125c51966 Status: Downloaded newer image for vmware/admiral:latest 390c91691cf551452a4aec72cadc9a420b7e5294a54624167b9ed298e067c043 |
You can browse now to http://#ip#:8282
Now we’re going to deploy containers with a persitent data volume so you easily update containers without loosing data. Keep in mind that you can’t extend data volumes but they are thin provisioned anyway. So create the persitent volumes large enough by the beginning.
docker --tls volume create --name home_assistant_user_data --opt capacity=10GB home_assistant_user_data docker --tls run -d -p 8123:8123 -v home_assistant_user_data:/config -e "TZ=Europe/Amsterdam" --name home-assistant homeassistant/home-assistant Unable to find image 'homeassistant/home-assistant:latest' locally latest: Pulling from homeassistant/home-assistant f49cf87b52c1: Pull complete a3ed95caeb02: Pull complete 7b491c575b06: Pull complete b313b08bab3b: Pull complete 51d6678c3f0e: Pull complete 09f35bd58db2: Pull complete 1bda3d37eead: Pull complete 9f47966d4de2: Pull complete 9fd775bfe531: Pull complete 075f8814af41: Pull complete 673b996ea6ee: Pull complete 13b5c6fd54a2: Pull complete 5627f8ac983a: Pull complete 9f49e962349f: Pull complete 69f64c4f5990: Pull complete Digest: sha256:7e5acf3aba08350a62d2d531a4686bf15404cf29b0a3a68183c2f9c16be46c6d Status: Downloaded newer image for homeassistant/home-assistant:latest ca5b04071b24ea42afd51ed75f085520aff008095dcb4b225bd8aeb8b1fac405 docker --tls volume create --name node_red_user_data node_red_user_data docker --tls run -p 1880:1880 -v node_red_user_data:/data --name node-red nodered/node-red-docker Unable to find image 'nodered/node-red-docker:latest' locally latest: Pulling from nodered/node-red-docker 85b1f47fba49: Pull complete a3ed95caeb02: Pull complete ba6bd283713a: Pull complete 817c8cd48a09: Pull complete 47cc0ed96dc3: Pull complete 8888adcbd08b: Pull complete 6f2de60646b9: Pull complete 1dab1bd0d0d9: Pull complete 44ad4cf8b442: Pull complete 12fcc1c70dac: Pull complete 685330fe9c23: Pull complete 7d10c54dee0f: Pull complete 1fb8963ebd30: Pull complete c451eb45c214: Pull complete Digest: sha256:890f93b7f74398c3e77d21603342fc4d0d426e357914f2f10c38884c6d653a91 Status: Downloaded newer image for nodered/node-red-docker:latest docker --tls volume create --name mosquitto_user_data mosquitto_user_data docker --tls run -d -p 1883:1883 -p 9001:9001 -v mosquitto_user_data:/mosquitto/data --name mosquitto eclipse-mosquitto Unable to find image 'eclipse-mosquitto:latest' locally latest: Pulling from library/eclipse-mosquitto 1160f4abea84: Pull complete a3ed95caeb02: Pull complete f1482e5005cd: Pull complete 670369387727: Pull complete Digest: sha256:98a147e5b169dfbaf30ed7327c3677f63601892b1750860fd40fd01b52cee1ce Status: Downloaded newer image for library/eclipse-mosquitto:latest da0af95954d89d3e7c2b93c56709ee2f1651fe21cafa312c0757203811f7c064 docker --tls volume ls DRIVER VOLUME NAME vsphere home_assistant_user_data vsphere mosquitto_user_data vsphere node_red_user_data docker --tls ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 632d654098ff homeassistant/home-assistant "python -m homeassis…" 5 days ago Up 26 hours 192.168.1.18:8123->8123/tcp home-assistant 47b1a5ac0b7c eclipse-mosquitto "/docker-entrypoint.…" 3 weeks ago Up 5 days 192.168.1.18:1883->1883/tcp, 192.168.1.18:9001->9001/tcp mosquitto 490640cc5497 nodered/node-red-docker "npm start -- --user…" 3 weeks ago Up 5 days 192.168.1.18:1880->1880/tcp node-red ddbc8657188d vmware/admiral "/entrypoint.sh" 3 weeks ago Up 5 days 192.168.1.18:8282->8282/tcp admiral |
Some basic commands to manage your containers and volumes and how to update a container:
docker --tls exec -i -t home-assistant /bin/bash docker --tls start home-assistant docker --tls restart home-assistant docker --tls image ls docker --tls volume ls docler --tls ps Update Home-Assistant: docker --tls stop home-assistant docker --tls rename home-assistant home-assistant_0.6 docker --tls pull homeassistant/home-assistant docker --tls run -d -p 8123:8123 -v home_assistant_user_data:/config -e "TZ=Europe/Amsterdam" --name home-assistant homeassistant/home-assistant Delete container or volume: docker --tls rm home-assistant_0.6 docker --tls volume rm home_assistant_user_data Copy files between container and localhost: docker --tls cp home-assistant:/config/configuration.yaml configuration.yaml docker --tls cp home-assistant:/config/customize.yaml customize.yaml docker --tls cp home-assistant:/config/automations.yaml automations.yaml docker --tls cp configuration.yaml home-assistant:/config/configuration.yaml docker --tls cp customize.yaml home-assistant:/config/customize.yaml docker --tls cp automations.yaml home-assistant:/config/automations.yaml |