composer / docker

Composer in Docker

Home Page:https://hub.docker.com/_/composer/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Missing pubkeys when using multi-stage build

freezy-sk opened this issue · comments

Composer "installed" through multi-stage build (COPY --from=composer/composer /usr/bin/composer /usr/bin/composer) shows missing pubkeys when I run composer diagnose.
Running composer self-update --update-keys is not possible in non-interactive mode.
What is the best way to update these pubkeys and fix the error?

Checking composer.json: OK
Checking platform settings: OK
Checking git settings: OK git version 2.30.2
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys: FAIL
Missing pubkey for tags verification
Missing pubkey for dev verification
Run composer self-update --update-keys to set them up
Checking composer version: OK
Composer version: 2.5.5
PHP version: 7.3.33
PHP binary path: /usr/local/bin/php
OpenSSL version: OpenSSL 1.1.1k  25 Mar 2021
cURL version: 7.74.0 libz 1.2.11 ssl OpenSSL/1.1.1n
zip: extension present, unzip present, 7-Zip not available
commented

There is no best way. There are multiple solutions depending on your use-case scenario. Either install them programmatically in the image, or mount them into the image from your host.

If you don't intend to run self-update in your container (which you probably should not if you use a multi-stage build as updating composer should be done by updating the image providing composer instead), you don't really need the pubkey though.