Upload
itcrowd-almaty
View
466
Download
6
Embed Size (px)
Citation preview
Николай НосковDOCKER — С ЧЕМ ЕДЯТ И ДЛЯ ЧЕГО ИСПОЛЬЗУЮТ
Linux Kernel >=2.6cgroups (control group)
Docker - это не виртуальная машина!
КОНТЕЙНЕРНАЯ ВИРТУАЛИЗАЦИЯ
ЗАЧЕМ ОН НАМ НУЖЕН?
НО ПОЧЕМУ ЭТО СТОИТ ВЫЯСНИТЬ?
ЭТО ТРЕНДОН КЛЁВЫЙ
Образ Docker (docker image)"Слепок" системы с необходимым набором библиотек
Контейнер DockerЗапущенный образ докера в хостовой системе.
FROM debian:jessie
MAINTAINER NGINX Docker Maintainers "[email protected]"
ENV NGINX_VERSION 1.9.14-1~jessie
RUN apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 \
&& echo "deb http://nginx.org/packages/mainline/debian/ jessie nginx" >> /etc/apt/sources.list \
&& apt-get update \
&& apt-get install --no-install-recommends --no-install-suggests -y \
ca-certificates \
nginx=${NGINX_VERSION} \
nginx-module-xslt \
nginx-module-geoip \
nginx-module-image-filter \
nginx-module-perl \
nginx-module-njs \
gettext-base \
&& rm -rf /var/lib/apt/lists/*
RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log
EXPOSE 80 443
CMD ["nginx", "-g", "daemon off;"]
DOCKER NGINX - 10M+ СКАЧИВАНИЙ
FROM nginx
COPY nginx.conf /etc/nginx/nginx.conf
Надо конечно же его собратьdocker build -t itcrowd/nginx .
И можно запускатьdocker run -d --name MyCoolNginx -p 8080:80 -v /my/webroot:/var/www itcrowd/nginx
МОЙ РАБОЧИЙ DOCKERFILE NGINX-А
РАБОЧИЙ DOCKER COMPOSEstrannik-nginx:
image: vesnateam/nginx
restart: always
ports:
- "80:80"
volumes:
- /home/strannik/www/data/source:/var/www
links:
- strannik-php
strannik-php:
image: vesnateam/php7
restart: always
volumes:
- /home/strannik/www/data/source:/var/www
links:
- strannik-mysql:mysql
strannik-mysql:
image: mariadb
restart: always
ports:
- "3306:3306"
volumes:
- /home/strannik/www/data/mysql:/var/lib/mysql
И можно запускатьdocker-compose -f docker-compose.yml -d run
ПРИМЕРЫ!
XGU DockerThe Docker Survey, 2016Awesome DockerContainer Hacks and Fun Images
ПОЛЕЗНЫЕ ССЫЛКИ