norboten · cheat sheet

A container is disposable; its data must not be — cheat sheet

containers, boot-systemd
$ docker ps --format 'table {{.Names}}\t{{.Image}}\t{{.Ports}}\t{{.Status}}'
$ docker inspect NAME --format '{{json .Mounts}}'          # anonymous volume, named volume or bind
$ docker inspect NAME --format '{{.HostConfig.PortBindings}}'
$ docker port NAME                                         # what is published, on which address
$ docker exec NAME redis-cli config get save               # "" = snapshots off
$ docker exec NAME redis-cli save                          # write dump.rdb now
$ docker cp NAME:/data/dump.rdb /var/lib/app/              # copy out of a running container
$ docker run -v /host/dir:/data …                          # bind mount
$ docker run -v name:/data …                               # named volume
$ docker run -p 127.0.0.1:6379:6379 …                      # publish on the loopback only
$ docker volume ls; docker volume inspect NAME
$ ss -ltnp 'sport = :6379'                                 # who listens, on which address
$ systemctl cat UNIT; sudo systemctl edit UNIT             # the unit and a drop-in
$ journalctl -u UNIT -o cat                                # the container's own log under systemd