Создание образа Docker из частного репозитория GitHub с помощью docker-compose

#docker #docker-compose

#docker #docker-compose

Вопрос:

Я знаю, что можно указать HTTP-URL-адрес GitHub в качестве контекста сборки службы:

 version: '3.9'

services:
  my-app:
    build: https://github.com/rambo/my-app.git
 

Вышеуказанное хорошо работает для общедоступных репозиториев. Но что, если Dockerfile он хранится в частном репозитории, для которого требуется аутентификация (например, через SSH). Поддерживается ли что-то вроде приведенного ниже примера?

 services:
  my-app:
    build: ssh://git@github.com:rambo/my-app.git
 

Я пробовал несколько вариантов приведенной выше конфигурации, но, похоже, ничего не работает.

Комментарии:

1. Я думаю, что репозиторий должен содержать все необходимые исходные тексты. Или вы должны создать образ на основе кода, нажать на Docker Registry, а затем использовать в Docker Compose

Ответ №1:

Да, вы можете добиться этого, используя личный токен доступа github, который имеет доступ только для чтения https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token

И тогда ваш токен — это ваше имя пользователя с пустым паролем

Например, https: //{token} @github.com/org_name/repo.git

Комментарии:

1. docs.github.com/en/authentication/…