web-dev-qa-db-fra.com

Installation d'OpenSSH sur le conteneur Alpine Docker

Lors de la première exécution du conteneur Alpine Docker et de la tentative d'installation d'Openshsh, les événements suivants se produisent:

ole@T:~$ docker run -it --rm Alpine /bin/ash
/ # apk add openssh
WARNING: Ignoring APKINDEX.d3812b7e.tar.gz: No such file or directory
WARNING: Ignoring APKINDEX.bb2c5760.tar.gz: No such file or directory
ERROR: unsatisfiable constraints:
  openssh (missing):
    required by: world[openssh]

Comment OpenSsh doit-il être installé?

49
Ole

Courir apk update première. La pâte ci-dessous contient un exemple complet:

    ole@T:~$ docker run -it --rm Alpine /bin/ash
    / # apk update
    fetch http://dl-4.alpinelinux.org/Alpine/v3.3/main/x86_64/APKINDEX.tar.gz
    fetch http://dl-4.alpinelinux.org/Alpine/v3.3/community/x86_64/APKINDEX.tar.gz
    v3.3.1-97-g109077d [http://dl-4.alpinelinux.org/Alpine/v3.3/main]
    v3.3.1-59-g48b0368 [http://dl-4.alpinelinux.org/Alpine/v3.3/community]
    OK: 5853 distinct packages available
    / # apk add openssh
    (1/3) Installing openssh-client (7.1_p2-r0)
    (2/3) Installing openssh-sftp-server (7.1_p2-r0)
    (3/3) Installing openssh (7.1_p2-r0)
    Executing busybox-1.24.1-r7.trigger
    OK: 8 MiB in 14 packages
75
Ole

Comme la réponse est déjà donnée mais je vais ajouter quelque chose.

Dans la nouvelle version, si vous souhaitez installer quelque chose sans mettre en cache localement les choses, ce qui est recommandé pour garder vos conteneurs petits, incluez le --no-cache drapeau. Exemple:

apk add --no-cache openssh

C'est un petit gain, cela vous empêche d'avoir le commun rm -rf /var/cache/apk/* à la fin de votre fichier Docker.

41
Adiii