Composer ile özel depoları yüklemeye çalışırken aşağıdaki mesajı alıyorsanız ve manuel etkileşimi önlemek istiyorsanız bu örneği kullanabilirsiniz.


Cloning failed using an ssh key for authentication, enter your GitHub credentials to access private repos
Head to https://github.com/settings/tokens/new?scopes=repo&description=Composer+on+clone-php+2019-05-31+2137
to retrieve a token. It will be stored in "/root/.composer/auth.json" for future use by Composer.
Token (hidden):

Kurulum


Daha önce diğer projeler için her iki adımı da tamamladıysanız, aşağıdaki "Token" ve "Environment" adımlarını atlayabilirsiniz.


composer.json


Aşağıdakinin composer.json dosyanız olduğunu varsayalım.


{
"repositories": [
{
"type": "git",
"url": "git@github.com:myprivate/repo.git",
"no-api": true #This is not compulsory
}
]
}

Token alımı


  1. GitHub'ın Personal Access Tokens sayfasına gidin.

  2. "Generate new token" butonunu tıklayın.

  3. "Note" bölümüne anlamlı birşey yazın, scope bölümü için "repo" seçeneğini seçin ve "Generate token" butonunu tıklayın.

  4. Token'i bir yere not edin.

Ortam hazırlığı


Add entry below to ~/.bash_profile file.


export COMPOSER_AUTH='{"github-oauth":{"github.com":"AB8cd4cab23a9d5399934a7d7698d3fa74e9cfAB"}}'

docker-composer.yaml


Aşağıdaki ortam değişkenini docker-compose.yaml dosyasına ekleyin.


COMPOSER_AUTH: "${COMPOSER_AUTH}"

Test


Eğer composer instal/update/require komutlarını kullanırsanız, token problemi yaşamayacaksınız.