Docker
Скачать докер для десктопа можно здесь. Переходим на сайт и регистрируемся затем нам будет доступна ссылка. Скачиваем и устанавливаем. Вовремя установки не забываем поставить галочку что мы хотим использовать контейнеры на основе линукс.
После установки давайте запустим один из примеров.
$ docker run -it --rm docker/doodle:cheers
После выполнения команд я получил вот такую ошибку
no matching manifest for windows/amd64 10.0.18362 in the manifest list entries
Теперь нужно кое что исправить:
1) Кликнем правой кнопкой мыши по иконке Docker в трее.
2) Кликнем по Settings.
3) Переходим в меню Daemon.
4) Переключаем из Basic на Advanced.
5) Изменяем или добавляем поле “experimental”: true
6) Принимаем изменения.
Переходим в консоль и снова выполняем команду
$ docker run -it --rm docker/doodle:cheers
После начинается скачивание образа, это может занять некоторое время.
Документация и исхлдный код здесь
Docker compose
Docker compose помогает управлять несколькими контейнерами. В качестве примера возьмем контейнер с MySQL и второй контейнер Adminer, и запустим их в месте как единое целое.
Давайте создадим файл с именем docker-compose.yaml и скриптом:
# Use root/example as user/password credentials
version: '3.1'
services:
db:
image: mariadb
restart: always
environment:
MYSQL_ROOT_PASSWORD: 123456
volumes:
- ./datadir:/var/lib/mysql
adminer:
image: adminer
restart: always
ports:
- 8080:8080
У докера есть volumes это просто папка примонтированая к файловой системе контейнера (шаред папка). Теперь давайте создадим пустую папку datadir рядом с файлом docker-compose.yaml и теперь давайте подымем контейнеры командой:
$ docker-compose up -d
Ждем пока все скачиваеться и запустится. В терминале мы должны увидеть следующий текст:
Creating compose-test_db_1 ... done
Creating compose-test_adminer_1 ... done
Переходим по ссылке http://localhost:8080/ у нас должна загрузиться страница с Adminer.
Пользователь: root
Пароль: 123456
Проверяем и должно все работать ))
Kitematic
Нужно залогинится в Docker для этого кликнем правой кнопкой мыши по иконке Docker в трее и затем выбираем пункт войти.
Теперь кликнем правой кнопкой мыши по иконке Docker в трее, и выбираем kitematic. У меня альфа версия и я получил сообщение с ошибкой. Нужно отдельно установить Kitematic. Официальный сайт здесь, но я взял последнюю версию здесь для меня это версия v0.17.7. Разархивирую и переносим все файлы в папку C:\Program Files\Docker\Kitematic (предварительно создав папку с именем Kitematic).
Теперь можно открыть приложение
Слева контейнеры которые уже установлены, там можно увидеть контейнеры из главы Docker compose
Давайте найдем hello-world-nginx подробности по ссылке. Но перед установкой сделаем некоторые настройки. У каждого images есть свои настройки, нажимаем на троеточие и выбираем Default network: nat.
Теперь нажимаем на кнопку CREATE. После у нас стартует контейнер и настройках можно увидеть Volume переходит в папку и создаём index.html. Проверяем в браузере и все работает.
Возврат в консоль а точнее в PowerShell
Сначала давайте переключим на Linux containers это можно сделать в меню из трея. После в настройка пункт Shared Drivers нужно дать доступ к дискам. К сожалению после того как мы переключились на линукс все контейнеры исчезли. Давайте снова выполним команды из главы Docker compose.
Список команд для докера:
- docker ps — показывает список запущенных контейнеров.
- docker images — показывает список установленных образов.
- docker stop $(docker ps -a -q) — останавливаем все запущенные контейнеры.
- docker rm $(docker ps -a -q) — удаляем все остановленные контейнеры.
- docker rmi $(docker images -q) — удаляем все образа
На этом маленький экскурс в мир докера можно считать оконченным.