## dockertest Это не настоящая задача, а заготовка на будущее. ### Что нужно сделать? Установить docker и добиться успешного **локального** запуска тестов ``` go test -v ./dockertest/... -count=1 ``` Только **после того, как тесты пройдут локально,** можете запушить решение в систему. ### С чего начать?
Дополнительные шаги для Windows 10
1. Установить WSL2 по [инструкции от Microsoft](https://docs.microsoft.com/en-us/windows/wsl/install-win10).
**Важно:** нужна именно вторая версия **WSL2**, проверьте, что она совместима с вашей системой.
Если шаг 5 не работает, включите опцию `Windows Hypervisor Platform` (Settings -> Apps -> Apps & features -> Optional features -> More Windows Features -> включить чекбокс Windows Hypervisor Platform). 2. Установите Docker Desktop по [инструкции](https://docs.docker.com/docker-for-windows/wsl/#download). Вероятно, выполнять шаги по активации поддержки WSL не потребуется, все подключится автоматически. 3. Запустите Docker Desktop (никакие контейнеры запускать не надо, только если хотите убедиться в том, что все работает).
Запустите установленную в п.1 Linux OS через WSL2.
Далее используйте этот Linux для выполнения дальнейших шагов этого README. _Замечание_: запущенный, но уже не использующийся Docker Desktop с бекэндом WSL занимает впустую много оперативной памяти, см [issue](https://github.com/microsoft/WSL/issues/4166) - можно ограничить максимальный доступный ему объем (см. [workaround](https://github.com/microsoft/WSL/issues/4166#issuecomment-526725261)), либо отключить автозапуск Docker Desktop и останавливать сервис, когда вы его не используете.
#### Установить docker https://docs.docker.com/engine/install/ После стандартной процедуры установки на Linux будет создана группа `docker`. Чтобы использовать docker cli без sudo, нужно добавить себя в эту группу: ``` sudo groupadd docker sudo usermod -aG docker $USER ``` После этого разлогиньтесь из os и залогиньтесь заново (или перезапустите систему). Для проверки можно запустить ``` docker run hello-world ``` #### Установить docker-compose https://docs.docker.com/compose/install/ #### Запустить контейнеры не через тесты В директории `dockertest` выполнить ``` docker-compose up ``` ### Что делать, если сразу не заработало? Поискать решение проблемы в интернете. Если решение найдено и проблема выглядит общей, сделать merge request с улучшением README. Если интернет не помог, спросить в чате. ### docker-compose cheat sheet Запустить все контейнеры в daemon режиме пересобрав образы: ``` docker-compose up -d --build ``` Остановить все контейнеры: ``` docker-compose down ``` ### Docker cheat sheet Получить список образов: ``` docker images ``` Список всех контейнеров: ``` docker ps -a ``` Остановить контейнер: ``` docker stop ``` Удалить контейнер: ``` docker rm ``` Удалить образ: ``` docker rmi ```