Docker
Docker yra atviro kodo projektas skirtas automatizuoti programinės įrangos projektams iš programinės įrangos lygmens konteinerių. Docker konteineriai su failų sistemos palaikymu, sisteminėmis programomis bei bibliotekomis - viskas ko jums reikia paleisti serverį. Garantuotai paleisite tai ką ir turite paleisti, nepriklausant nuo sistemos aplinkos kur tai darote.
Docker suteikia papildomą virtualizacijos, automatikos lygmenį operacijų sistemos lygmenyje pačiame Linux. Docker naudoja Linux resursų izoliavimą cgroups, branduolio vardinius susiejimus, ir aufs (angl. union-capable filesystem). Tai leidžia nepriklausomai valdyti kelis konteinerius vienoje Linux sistemoje, neužkraunant jos dideliomis apkrovomis kurių reikalauja virtualios mašinos. Linux branduolio vardinių sąsajų palaikymas izoliuoja kaip programos mato pačia operacijų sistemą, izoliuojami procesai, tinklas, vartotojo id, primontuotos failų sistemos, taip pat neprarandamas cgroups resursų ribojimas (CPU, atmintis, I/O, Tinklas). Nuo docker 0.9 versijos įtraukiama libcontainer biblioteka kuri tiesiogiai bendrauja su virtualizacijos sistemomis esančiomis Linux branduolyje, priedo tai apdorojama per virtualizacijos sąsajas libvirt, LXC (Linux Containers) ir systemd-nspawn.
Docker diegimas Debian sistemose
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg2 \ software-properties-common curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - sudo apt-key fingerprint 0EBFCD88 sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/debian \ $(lsb_release -cs) \ stable" sudo apt-get update sudo apt-get install docker-ce
Komandų vykdymas dockeryje
Vykdyti komandas
docker exec -it <docker_pavadinimas> id
Įjungti shellą
docker exec -it <docker_pavadinimas> bash
Konkretaus konteinerio logų pravalymas
truncate -s 0 $(docker inspect --format='{{.LogPath}}' <container_name_or_id>)
arba
echo "" > $(docker inspect --format='{{.LogPath}}' <container_name_or_id>)
Kuriant konteinerį logų limito nurodymas
docker run --log-driver json-file --log-opt max-size=10m --log-opt max-file=3 ...