运行一个运行python程序的shell脚本,然后运行一个R程序
我有一个shell脚本,它运行一个Python程序来预处理一些数据,然后运行一个R程序来执行一些长时间运行的任务。 我正在学习使用Docker,而且我一直在运行
FROM r-base:latest FROM python COPY . /usr/local/src/scripts WORKDIR /usr/local/src/scripts CMD ["./myscript.sh"]
据我了解,它有以下几点:
- 得到R.
- 获取Python
- 复制我的当前目录到
/usr/local/src/scripts
- 将目录切换到
/usr/local/src/scripts
- 运行
./myscript.sh
在myscript.sh
里面我使用R CMD ...
语法来运行我的R脚本。 但是,当这个泊坞窗图像运行时,我得到以下错误:
./myscript.sh: line 8: R: command not found
这表明脚本在容器中运行时,不能识别R程序。 我可以确认./myscript.sh
在本地工作,但我不能公开任何专有代码。
FROM命令设置Dockerfile构build的基础映像。 你应该只有其中之一。 之后,如果您需要其他不在基本映像中的工具,请运行使用平台相关软件包pipe理器的命令,例如
RUN apt-get update && apt-get install -y \ package-foo \ package-bar
这将是一个基于Debian的图像,如Ubuntu。