Portainer.io
Portainer Community Edition è un progetto opensource che permette di gestire i nostri container docker da una semplice interfaccia web.
E’ quindi possibile gestire docker (container, volumi, reti, etc), ottenere informazioni sullo stato della macchina host e dei container.
Portainer può essere utilizzato non solo per gestire il demone Docker ma anche per amministrare infrastrutture organizate con Swarm e Kubernetes. Avviarlo è molto semplice in quanto Portainer CE è distribuito come container.
Per avviare Portainer in locale è sufficiente lanciare
# docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
Dopo pochi sencondi basterà aprire la pagina web http://localhost:9000 impostare la password per l’utente amministratore e il gioco è fatto.
Esporre Docker
Nel caso in cui si volesse aggiungere a Portainer altri host Docker si dovrà prima esporre le api. Per esporre le api bisogna modificare il comando di avvio del demone.
Editiamo il file /lib/systemd/system/docker.service e cerchiamo la riga ExecStart:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
aggiungiamo -H=tcp://0.0.0.0:2375
ExecStart=/usr/bin/dockerd -H fd:// -H=tcp://0.0.0.0:2375 --containerd=/run/containerd/containerd.sock
riavviamo il demone docker systemctl restart docker.
In questo modo le api saranno accessibili in chiaro a chiunque per cui consiglio di utilizzare questa modalità solo per lavboratorio. nel caso un cui sia necessario avere accesso a macchine in produzione è meglio implementare un strato TLS e un sistema di controllo degli accessi.
Le opinioni in quanto tali sono opinabili e nulla ti vieta di approfondire l’argomento.
Risorse: