Docker
Jedná se o nadstavbu na linuxovými kontejnery pro které se užívá zkratka LXC. Jen pro ujasněné nejedná se o virtualizaci, myslím, že bližší přirovnání je něco jako chroot a virtualenv. Základní mechanismem je zkompilovaný image nad kterým spustím proces, proces běží v uzavřeném prostředí (kontejneru) ale proces je spuštěný jako jakýkoliv jiný. Takže nelze kontejner chápat jako samostatně běžící systém, ale spíše jej chápat jako proces běžící pod libovolnou distribucí.
Základní příkazy
Základní instalace Pro Fedora 21:
yum install docker service docker start
Systém nejprve stáhneme a pak jej spustíme příkazem:
docker pull ubuntu:latest docker run -i ubuntu:latest /bin/bash
Parametr -i udává interaktivní mód, přitom pak -d nám spustí kontejner na pozadí jako deamona.
Seznam běžícíh kontejneru (parametr -a vypisuje všechny):
docker ps -a
Připojení na již vytvořený kontejner
docker start <container_id> docker attach <container_id>
Smazání kontejneru (force parametrem -f)
docker rm <container_id>
Seznam stáhnutých obrazů
docker images
Smazání nacachevaného obrázku
docker rmi <image_id>
Je možné vytvořit soubor Dockerfile, který nám popisuje vlastnosti obrazu.
FROM ubuntu:latest RUN apt-get update && apt-get install python-django
CMD /bin/bash
obraz zkompilujeme pomocí následujícího příkazu.
docker build -t ubuntu-test .
Build without cache - rebuild all project
docker build -t --no-cache=true ubuntu-test ./
if you want run with some port, then you can run following command
docker -p 8000:80 -i run ubuntu-test
pomocné příkazy
Smazaní všech stáhnutých obrazů
docker images | grep -v IMAGE | awk '{ print $3 }' | xargs docker rmi