我想下载一个sdk,具体取决于运行我的docker镜像的操作系统类型.如何在docker脚本中编写以下伪代码
RUN variable x = getOS()
if [ "$x" = "Darwin" ]; then
RUN wget -q http://xxx/android-ndk-xxxx-darwin-x86_64.bin
else
RUN wget -q http://xxx/android-ndk-xxxx-linux-x86_64.bin
最佳答案 使用uname命令.
x=$(uname)
在达尔文系统上,它应输出达尔文.
在您的dockerfile中,RUN命令可能如下所示:
RUN [ "$(uname)" = Darwin ] && system=darwin || system=linux; \
wget -q http://xxx/android-ndk-xxxx-${system}-x86_64.bin
或者像这样(为了支持任意系统):
RUN system=$(uname); \
wget -q http://xxx/android-ndk-xxxx-${system,}-x86_64.bin