在RUN部分Dockerfile中设置环境变量

时间:2020-04-26 00:20:14

标签: docker build dockerfile

我想创建一个预安装git 的映像,该映像可以在docker-run期间登录Github

此图片假设通过docker-run 选项-e命令中获取Github用户名和令牌。

例如:

sudo docker run -it --rm -e "username=parsalotfy" -e "token=secretsecretsecret" -e "email=parsalotfy@gmail.com" gitloggedin

我这样写Dockerfile:

FROM alpine

RUN apk update
RUN apk upgrade
RUN apk add git
RUN git clone https://$username:$token@github.com/$username/$repo.git
RUN cd $repo/
RUN git config user.email $email

COPY entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]

但是当我想构建此Dockerfile时,会发生此错误:

enter image description here

我在这里做错了什么?

-e之后,如何让Github用户登录通过docker-run选项传递用户名和密码?

谢谢。

1 个答案:

答案 0 :(得分:1)

正如有人在评论中提到的参考链接,您需要在使用前声明环境变量,例如 ENV EMAIL me@example.com 或仅 ENV EMAIL 然后使用它