Использование Docker из РФ 🇷🇺
Проблема
В ночь на 30 мая 2024 г. сервис Docker Hub закрыл доступ для пользователей из России.
Since Docker is a US company, we must comply with US export control regulations. In an effort to comply with these, we now block all IP addresses that are located in Cuba, Iran, North Korea, Republic of Crimea, Sudan, and Syria.
Сообщение указывает на то, что Docker, как американская компания, обязана соблюдать экспортные контрольные регуляции США, которые включают блокировку IP-адресов из Кубы, Ирана, Северной Кореи, Крыма, Судана и Сирии.
Решение
Список актуальных зеркал docker hub (docker registry-mirrors):
- https://mirror.gcr.io - зеркало Google
- https://dockerhub.timeweb.cloud - зеркало Timeweb
- https://dockerhub1.beget.com - зеркало Бегет
- https://c.163.com - зеркало Китай
- https://registry.docker-cn.com - зеркало Китай
- https://daocloud.io - зеркало Китай
- https://cr.yandex/mirror - зеркало Яндекс
- https://noohub.ru - зеркало noosoft
- https://quay.io - зеркало Redhat
- https://registry.access.redhat.com - зеркало Redhat
- https://registry.redhat.io - зеркало Redhat
- https://public.ecr.aws - зеркало Amazon
Linux
Добавляем в файл зеркала
Regular setup
cat << EOF | sudo tee -a /etc/docker/daemon.json
{ "registry-mirrors" : [ "https://dockerhub.timeweb.cloud", "https://huecker.io", "https://mirror.gcr.io", "https://c.163.com", "https://registry.docker-cn.com", "https://daocloud.io" ] }
EOF
Rootless mode
cat > ~/.config/docker/daemon.json <<EOF
{ "registry-mirrors" : [ "https://dockerhub.timeweb.cloud", "https://huecker.io", "https://mirror.gcr.io", "https://c.163.com", "https://registry.docker-cn.com", "https://daocloud.io" ] }
EOF
Перезапускам процесс docker
sudo systemctl restart docker
Готово ✅
MacOS
Открываем конфигурационный файл:
vim $HOME/.docker/daemon.json
Добавляем в файл (внимание на запятые в конце строк)
"registry-mirrors" : [ "https://dockerhub.timeweb.cloud", "https://huecker.io", "https://mirror.gcr.io", "https://c.163.com", "https://daocloud.io", "https://registry.docker-cn.com" ],
"experimental": true
Перезапускаем docker, Готово ✅
Windows
Добавляем изменения в файл C:\ProgramData\docker\config\daemon.json
Авто-фикс файла daemon.json для Linux
Источник: https://github.com/StasPlov/docker-unlock/tree/main
wget -O unlock.sh https://raw.githubusercontent.com/StasPlov/docker-unlock/main/unlock.sh ; \
chmod +x unlock.sh ; \
./unlock.sh
Альтернативный вариант
Запуск с явным указанием зеркала, пример:
docker pull cr.yandex/mirror/alpine
docker pull huecker.io/library/alpine:latest
Большое спасибо всем за внимание!
Подписывайтесь на мой канал artydev & Co.