最近在使用docker 使用alpine鏡像遇到一個(gè)問題治筒,當(dāng)運(yùn)行一個(gè)shell腳本時(shí)報(bào)錯(cuò)
exec user process caused "exec format error"
找了很多資料,最后找到原因如下:
alpine 默認(rèn)是沒有安裝/bin/bash的饱亮,所以我們執(zhí)行shell腳本時(shí)印荔,會(huì)找不到相應(yīng)的bash運(yùn)行腳本忱嘹,解決方法如下:
1映凳、使用別的鏡像:如ubuntu,centos,但是這樣存在一個(gè)問題,鏡像會(huì)比較大
2畏鼓、構(gòu)建一個(gè)自己的鏡像酱酬,后續(xù)基于鏡像即可:具體dockerfile內(nèi)容如下:
FROM alpine:latest
RUN apk update \
&& apk upgrade \
&& apk add --no-cache bash \
bash-doc \
bash-completion \
&& rm -rf /var/cache/apk/* \
&& /bin/bash