Soru Alp tabanlı bir docker görüntüsü ile bash nasıl kullanılır?


Openjdk: 8-jdk-alpinden bir docker görüntüsü yarattım fakat basit komutları çalıştırmaya çalıştığımda aşağıdaki hataları alıyorum:

RUN bash
/bin/sh: bash: not found

RUN ./gradlew build
env: can't execute 'bash': No such file or directory

41
2017-12-03 05:14


Menşei




Cevaplar:


Alp docker görüntüsünün varsayılan olarak bash yüklü olmaması. Almak için aşağıdaki komutları eklemeniz gerekecek bash:

RUN apk update && apk add bash

Eğer kullanıyorsanız Alpine 3.3+ o zaman yapabilirsin

RUN apk add --no-cache bash

docker görüntü boyutunu küçük tutmak için. (Yorumdan @sprkysnrky'ye teşekkürler)


66
2017-12-03 05:18



apk upgrade gerekli değil. - Matt
Veya son sürümlerde (Alpine 3.3+) sadece yapabilirsiniz RUN apk add --no-cache bash Yani görüntü boyutunuzu küçük tutmak için hiçbir şeyi temizlemeniz gerekmez. - joelnb
Teşekkürler, bu yararlı bilgilerle cevabı güncelledim. - anubhava
Teşekkür ederim! Sorunumu çözmede çok yardımcı oldu. - rray


Kullanmayı deneyin RUN /bin/sh bash yerine.


23
2017-12-03 05:24



OP bash istedi. sh bash değil. - Blauhirn
Ama bu zaten çok yararlı bir yorum - çoğu insan sh ile iyi olacak - ve görüntü boyutu ek 50mb gerektirmez - kboom
Kolay ve anlaşılır. Çoğu zaman sadece boktan komutları çalıştırmamız gerekir (ls, ps, her neyse), sh bu senaryoları kapsar. Teşekkürler! - Bevilaqua


RUN /bin/sh -c "apk add --no-cache bash"

benim için çalıştı.


5
2018-01-04 02:28