如何在Codenvy终端中设置环境变量

How to set environment variables in Codenvy terminal

我正在使用 Codenvy 来安装 golang,并且作为该过程的一部分,我正在设置环境变量。我可以在 docker 构建过程中很好地设置环境变量,但是当我启动生成的 Codenvy 终端时,环境变量没有设置。如何让 docker 文件中设置的环境变量出现在生成的终端中?

例如,如果我使用这个 docker 文件:

FROM codenvy/python34
ENV GOPATH /tmp/application/gopath
ENV PATH $GOPATH:$GOPATH/bin:$PATH
CMD echo $PATH && sleep 1h

...然后在 docker 构建输出中我看到

[STDOUT] /tmp/application/gopath:/tmp/application/gopath/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

...但是当我打开终端并查看 $PATH 时,我看到...

user@6ec34a856f91:~$ echo $PATH                                                                                                                                                                                         
/usr/local/bin:/usr/bin:/bin:/usr/games

答案是从 Codenvy Google 组发给我的...您需要在 /home/user/.bashrc 文件中添加行。当您的终端启动时,这会得到 运行。

RUN echo "export GOPATH=$GOPATH" >> /home/user/.bashrc
RUN echo "export PATH=$GOPATH/bin:$PATH" >> /home/user/.bashrc