Join a group and update environment during live session.
I will join a docker
group and use docker client during live session.
Inspect current groups.
$ groups
milosz adm cdrom sudo dip plugdev lpadmin lxd sambashare
$ id
uid=1000(milosz) gid=1000(milosz) groups=1000(milosz),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),133(lxd),134(sambashare)
Try to use docker client.
$ docker ps
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied
Join a docker
group.
$ echo $USER
milosz
$ sudo usermod -aG docker $USER
Update environment to reflect this change.
$ newgrp docker
Inspect current groups.
$ id
uid=1000(milosz) gid=140(docker) groups=140(docker),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),133(lxd),134(sambashare),1000(milosz)
Update environment again to fix current GID.
$ newgrp -
Inspect current groups.
$ id
uid=1000(milosz) gid=1000(milosz) groups=1000(milosz),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),133(lxd),134(sambashare),140(docker)
$ groups
milosz adm cdrom sudo dip plugdev lpadmin lxd sambashare docker
Use docker client.
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e6caef079f86 louislam/uptime-kuma:1 "/usr/bin/dumb-init …" 4 weeks ago Up 6 days (healthy) 0.0.0.0:3001->3001/tcp, :::3001->3001/tcp uptime-kuma cc9f2a1492e9 lissy93/dashy:2.0.7 "/sbin/tini -- yarn …" 4 weeks ago Up 6 days (healthy) 0.0.0.0:8080->80/tcp, :::8080->80/tcp my-dashboard
That was easy and you do not need to login again.