bash - 在 Dockerfile 中使用 linux source 命令会出错
问题描述
我下载并安装Go
这样的编程语言:
curl -OL https://golang.org/dl/go1.17.3.linux-amd64.tar.gz
tar -C /usr/local -xvf go1.17.3.linux-amd64.tar.gz
touch /etc/profile.d/go.sh
echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile.d/go.sh
source /etc/profile.d/go.sh
它有效。但我想创建一个Docker
包含 Go 并准备使用的图像。所以我确实喜欢这样Dockerfile
:
RUN curl -OL https://golang.org/dl/go1.17.3.linux-amd64.tar.gz
RUN tar -C /usr/local -xvf go1.17.3.linux-amd64.tar.gz
RUN touch /etc/profile.d/go.sh
RUN echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile.d/go.sh
RUN source /etc/profile.d/go.sh
但这给了我错误:
> [25/25] RUN source /etc/profile.d/go.sh:
#28 0.737 /bin/sh: 1: source: not found
我该怎么做?我使用ubuntu 20.04
作为基础 Docker 映像
解决方案
推荐阅读
- javascript - 在其他页面上没有问题的 EJS 部分在一个页面上抛出 500 错误
- javascript - Strapi 发送邮件不工作。你能帮我吗?
- azure - 此区域不允许此订阅进行缩放操作
- git - 我可以发出“git remote update”来下载远程 git 的一部分吗
- typescript - 在浏览器应用程序中使用 apache-arrow - Typescript 编译器错误
- python - 使用 Python 在 GEE 中应用 reducer 后返回空 bandNames
- .net - .Net Framework 4.8 为什么哦为什么
- polygon - 无法使用 levelplot 将多边形叠加到栅格图层
- sensors - Labview 中的传感器 VL53L0X 与 MyRio
- api - 从 API 数据中 Flutter 多选 ListView