Docker- основные команды

###################################################



Прежде всего , создаем инструкцию для создания образа(image).
Файл будет называться  Dockerfile.

Пример:

# Используем за основу контейнера Ubuntu 14.04 LTS
FROM ubuntu:14.04
# Переключаем Ubuntu в неинтерактивный режим — чтобы избежать лишних запросов
ENV DEBIAN_FRONTEND noninteractive 
# Устанавливаем локаль
RUN locale-gen ru_RU.UTF-8 && dpkg-reconfigure locales 

# Добавляем необходимые репозитарии и устанавливаем пакеты
RUN apt-get install -y software-properties-common
RUN add-apt-repository -y ppa:ondrej/php5-5.6
RUN add-apt-repository -y ppa:nginx/stable
RUN sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6C
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y wget curl php5-fpm php5-mysql e supervisor nginx

# Добавляем описание виртуального хоста
ADD astgo.ru /etc/nginx/sites-enabled/astgo.ru 
# Отключаем режим демона для Nginx (т.к. запускать будем сами)
RUN echo "\ndaemon off;" >> /etc/nginx/nginx.conf 
# Отключаем режим демона для php-fpm
RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php5/fpm/php-fpm.conf 
# Добавляем конфиг supervisor (описание процессов, которые мы хотим видеть запущенными на этом контейнере)
ADD supervisord.conf /etc/supervisor/conf.d/supervisord.conf 

# Объявляем, какие директории мы будем подключать
VOLUME ["/var/www"] 
# Объявляем, какой порт этот контейнер будет транслировать
EXPOSE 80 
# Запускаем supervisor
CMD ["/usr/bin/supervisord"] 
Описания синтаксиса:
  • FROM — указывает название образа (image), который будет взят за основу.
  • ENV — устанавливает переменную среды
  • RUN — запустить команду в контейнере (все команды исполняются с полными правами в пределах контейнера)
  • ADD — добавить файл в контейнер
  • VOLUME — указать монтируемые директории (их можно монтировать на хост машину или на другие контейнеры)
  • EXPOSE — указать транслируемые порты (их можно транслировать на хост машину или на другие контейнеры)
  • CMD — запустить процесс (это и будет процесс, вокруг которого построен контейнер)


 Далее собираем наш образ:
docker bulid -t repo/dev
 Просмотрим наши доступные образы:


docker images
Запустим наш образ, и сразу перейдем в контейнер:


docker run -ti repo/dev
Выйти с контейнера и оставить его работать в фоне:
Cntr+P Cntr+Q
Обычный выход с контейнера:
exit
 Запуск временного контейнера (после выхода он удалится):
docker run -ti -rm repo/dev
Сохраняем свой образ в репи( предварительно нужна регистрация на Docker Hub )
docker commit -m "What did you do to the image" -a "Author Name" container-id repository/new_image_name
Так же есть возможность скачать уже готовые образы командой:
docker pull <name image>
Проверить или запущены ваши контейнеры:
docker ps
Подключиться к работающему контейнеру:
docker attach id-containera
Больше команд можно найти тут --> Docker commands

Комментариев нет:

Отправить комментарий