docker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docker [2017/05/09 14:48] tmaierdocker [2022/01/31 11:28] (current) tmaier
Line 1: Line 1:
 ====== Docker ====== ====== Docker ======
-===== Start Docker Daemon ===== 
-sudo systemctl start docker 
  
 +===== Docker Registry Proxy =====
  
 +https://docs.docker.com/config/daemon/systemd/#httphttps-proxy
  
 +===== Bootstrap basic Debian image =====
 +
 +<code>
 +mkdir jessie-chroot
 +sudo debootstrap jessie ./jessie-chroot http://http.debian.net/debian/
 +</code>
 +
 +Build docker image from tarball
 +
 +<code>
 +cd jessie-chroot
 +sudo tar cpf - . | docker import - debian
 +</code>
 +
 +Build new container
 +
 +<code>
 +docker run -it --rm debian /bin/bash
 +</code>
 +
 +===== Start Container from Dockerhub Image =====
 +
 +<code>
 +docker run --name nifi -p 8080:8080 -d apache/nifi:latest
 +</code>
 +
 +With interactive shell:
 +
 +<code>
 +docker run -it apache/nifi bash
 +</code>
 +
 +===== Jump into Container =====
 +
 +<code>
 +docker exec -it nifi bash
 +</code>
 +
 +===== Stop Container =====
 +
 +<code>
 +docker stop nifi
 +</code>
 +
 +===== Remove Containers, Images, Volumes =====
 +
 +<code>
 +docker stop $(docker ps -aq) && docker rm $(docker ps -aq) && docker rmi $(docker images -aq) && docker volume rm $(docker volume ls -q)
 +</code>
 +
 +===== Aliases =====
 +//(Docker aliases to set for the shell)//
 +<code>
 +alias dps='docker ps -a --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}\t{{.Image}}\t{{.Command}}" | (read -r; printf "%s\n" "$REPLY"; sort -k 1 )'
 +</code>
 +
 +
 +===== Docker Logging =====
 +====== Logging with rsyslog ======
 +/etc/rsyslog.d/docker.conf
 +<code>
 +# Docker config
 +$AddUnixListenSocket /tmp/syslog.sock
 +
 +# syslogtag enthält noch PID
 +# programname nur appname/tag: 598-rddnsmasq
 +$template myFormat,"%timereported% %programname%%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"
 +
 +template(
 +  name="docker_container_file"
 +  type="string"
 +  string="/var/log/docker/%programname%.log"
 +  option.casesensitive="on"
 +)
 +
 +# 23: local7
 +if $syslogfacility == 23 then {
 +  if $programname startswith "bw_" then {
 +    action(name="docker-containers-bitwarden" type="omfile" file="/var/log/docker/bitwarden.log" template="myFormat")
 +  } else {
 +    action(name="docker-containers" type="omfile" dynaFile="docker_container_file" template="myFormat")
 +  }
 +}
 +</code>
 +
 +/etc/docker/daemon.json
 +<code>
 +{
 +  "log-driver": "syslog",
 +  "log-opts":
 +    {
 +      "tag": "{{.Name}}",
 +      "syslog-facility": "local7",
 +      "syslog-address": "unixgram:///tmp/syslog.sock"
 +    }
 +}
 +</code>
 +
 +Restart rsyslog, the docker daemon and then all containers to switch to the new driver. Otherwise the docker daemon shows the following error message for the affected containers: "Configured log driver does not support reads, enabling local file cache for container logs".
  • docker.1494334092.txt.gz
  • Last modified: 2020/12/29 02:09
  • (external edit)