Вы можете использовать личный токен Github, который имеет доступ для чтения к репозиторию Github. Используйте токен в качестве имени пользователя с пустым паролем:
https://${TOKEN}:@github.company.com/org/repo.git#branch:dir
Вы можете разместить URL с токеном, и предполагается, что Dockerfile
находится в корневом каталоге репо.
Любой из приведенных ниже примеров сохраняется в docker-compose.yaml
. Вы можете построить их, используя команду:
docker-compose build
главная ветвь
Вот пример:
version: "3"
services:
reference:
build: "https://f4d***3a8:@github.company.com/org/repo.git"
command: ["./wait-for-it.sh", "--timeout=60", "config-server:8888", "--", "java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
This works! At this point, you can define an environment variable for the token such your OPS team can provide their own token.
Env токен со значением по умолчанию
- Вы можете получить
TOKEN
из среды или использовать стандартный
version: "3"
services:
reference:
build: "https://${TOKEN:-f4d2***3a8}:@github.company.com/org/repo.git"
command: ["./wait-for-it.sh", "--timeout=60", "config-server:8888", "--", "java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
Dockerfile в ветке разработки
- Вы можете использовать ветку в URL с
#branch
version: "3"
services:
reference:
build: "https://${TOKEN:-f4d***a8}:@github.company.com/org/repo.git#develop"
command: ["./wait-for-it.sh", "--timeout=60", "config-server:8888", "--", "java","-D
Dockerfile в ветви и другой каталог
Использовать каталог после ветви #branch:dir
. В приведенном ниже примере используется каталог docker-ci/
в репо github.company.com/org/repo.git
.
version: "3"
services:
reference:
build: "https://${TOKEN:-f4d***a8}:@github.company.com/org/repo.git#develop:docker-ci"
command: ["./wait-for-it.sh", "--timeout=60", "config-server:8888", "--", "java","-D