https://katacoda.com/jmnote/courses/docker
https://medium.com/@sindepal/docker-sertting-for-centos-8-f1ecae57a98c
Details
$ sudo apt update
$ sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo apt-key fingerprint 0EBFCD88
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo apt update
$ sudo apt install containerd.io docker-ce-cli docker-ce
# Check which version of docker is available
$ apt-cache madison docker-ce
docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 18.06.1~ce~3-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 18.06.0~ce~3-0~ubuntu | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
...
# INSTALL DOCKER CE
$ sudo apt-get update
$ sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
# ex:intalling 19.03.5
$ sudo apt-get install docker-ce=5:19.03.5~3-0~ubuntu-xenial \
docker-ce-cli=5:19.03.5~3-0~ubuntu-xenial containerd.io
# Setup daemon for cgroup
sudo vi /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
Details
# 기존 버전 설치 여부 확인
$ dpkg -l | grep -e docker -e container
# 기존 버전 삭제
$ dpkg --purge [package_name]
# local에 업로드한 패키지 파일을 이용한 수동 설치 (Docker)
$ dpkg --install containerd.io_1.2.2-3_amd64.deb
$ dpkg --install docker-ce-cli_19.03.4_3-0_ubuntu-xenial_amd64.deb
$ dpkg --install docker-ce_19.03.4_3-0_ubuntu-xenial_amd64.deb
# 사내 Docker Registry 서버 연결 (sds.redii.net)
$ sudo ehco "\n182.193.17.192\tsds.redii.net" >> /etc/hosts;
$ docker login sds.redii.net;
## CentOS
$ rpm -Uvh containerd.ioxxxxx.rpm
$ rpm -Uvh docker-ce_xxxxx.rpm
$ rpm -Uvh ...
Details
## Docker-Compose 설치
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compos
$ sudo chmod +x /usr/local/bin/docker-compose
$ docker-compose --version
docker-compose version 1.26.0, build 1110ad01
# 사용자 계정을 Docker 그룹에 join
$ sudo usermod -aG docker $(whoami)
$ sudo usermod -aG docker [사용자계정]
Details
sudo su
export OS=xUbuntu_20.04
export VERSION=1.20
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/ /" > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
echo "deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$VERSION/$OS/ /" > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable:cri-o:$VERSION.list
curl -L https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:$VERSION/$OS/Release.key | apt-key add -
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS/Release.key | apt-key add -
apt-get update
apt-get install cri-o cri-o-runc
systemctl status cri-o
systemctl start cri-o
Details
$ docker info --format {{.DockerRootDir}}
$ docker stop $(docker ps -q)
$ sudo systemctl stop docker
$ sudo vi /etc/docker/daemon.json
{
"data-root": "/data/docker"
}
$ sudo mkdir -p /data/docker
$ sudo chmod 711 /data/docker
# rsync command
$ sudo rsnyc -axPS /var/lib/docker /data
$ sudo systemctl restart docker.service
$ sudo docker info --format {{.DockerRootDir}}
Details
## Way1. Docker Service Proxy Configuration
$ sudo su
$ mkdir -p /etc/systemd/system/docker.service.d
$ vi /etc/systemd/system/docker.service.d/proxy.conf
[Service]
Environment="HTTP_PROXY=http://x.x.x.x:8080/"
Environment="HTTPS_PROXY=http://x.x.x.x:8080/"
Environment="NO_PROXY=127.0.0.1,localhost,sds.redii.net"
$ systemctl daemon-reload
$ systemctl restart docker
$ systemctl show --property Environment docker
## Way2. config.json
$ vi ~/.docker/config.json
{
"auths": {},
"HttpHeaders": {
"User-Agent": "Docker-Client/19.03.13 (linux)"
},
"proxies": {
"default": {
"httpProxy": "http://70.10.15.10:8080",
"httpsProxy": "http://70.10.15.10:8080",
"noProxy": "sds.redii.net,70.50.182.152"
}
}
}
# Ubuntu (debootstrap)
$ sudo apt-get install debootstrap
# cmd: debotstrap <code_name> <directory_name>
$ sudo debotstrap trusty trusty
$ sudo tar -C trustry -c . | docker import - trusty
$ tar -cv --files-from /dev/null | docker import - scratch
https://stackoverflow.com/questions/40214617/docker-no-route-to-host
$ sudo vi /etc/docker/daemon.json
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
https://qulogic.gitlab.io/posts/2019-10-20-migrating-to-podman/
https://docs.docker.com/develop/develop-images/multistage-build/
$ sudo vi /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H 0.0.0.0:2375
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker.service