Как создать изображение докеров из репозитория github

В официальных документах мы можем видеть:

# docker build github.com/creack/docker-firefox

Это прекрасно работает для меня. docker-firefox - это репозиторий и имеет Dockerfile внутри корневого каталога.
Затем я хочу загрузить изображение redis и точную версию 2.8.10:

# docker build github.com/docker-library/redis/tree/99c172e82ed81af441e13dd48dda2729e19493bc/2.8.10
2014/11/05 16:20:32 Error trying to use git: exit status 128 (Initialized empty Git repository in /tmp/docker-build-git067001920/.git/
error: The requested URL returned error: 403 while accessing https://github.com/docker-library/redis/tree/99c172e82ed81af441e13dd48dda2729e19493bc/2.8.10/info/refs

fatal: HTTP request failed
)

Я получил ошибку выше. Какой правильный формат с изображением сборщика докеры из репозитория github?

Ответ 1

docker build uri#ref:dir

Git URL-адреса принимают контекстную конфигурацию в разделе фрагментов, разделенные двоеточием:. Первая часть представляет собой ссылку, что Git будет проверяться, это может быть либо ветка, либо тег, либо фиксация ША. Вторая часть представляет собой подкаталог внутри репозитория который будет использоваться как контекст сборки.

Например, запустите эту команду, чтобы использовать каталог с именем docker в контейнер ветки:

docker build https://github.com/docker/rootfs.git#container:docker

https://docs.docker.com/engine/reference/commandline/build/

Ответ 2

То, что вы указали как URL-адрес репо, не является допустимым репозитаром git. При попытке попробовать вы получите сообщение об ошибке

git clone github.com/docker-library/redis/tree/99c172e82ed81af441e13dd48dda2729e19493bc/2.8.10

Допустимый URL для этого репо - github.com/docker-library/redis. Поэтому вы можете попробовать следующее:

docker build github.com/docker-library/redis

Но это тоже не сработает. Чтобы построить из github, docker требует Dockerfile в корне репозитория, howerer, это репо не предоставляет этого. Поэтому я предлагаю вам только клонировать это репо и создавать образ, используя локальный файл Docker.

Ответ 3

Можно использовать следующий пример, который устанавливает контейнер Centos 7 для тестирования формата файла ORC. Обязательно избегайте знака #:

$ docker build https://github.com/apache/orc.git\#:docker/centos7 -t orc-centos7

Ответ 4

Докер работает -p 3000: 3000 -e github = ' https://github.com/URL ' -it IMAGE_NAME