Docker Hub для Windows 10

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) — удаляем все образа

На этом маленький экскурс в мир докера можно считать оконченным.