运行一个运行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"] 

据我了解,它有以下几点:

  1. 得到R.
  2. 获取Python
  3. 复制我的当前目录到/usr/local/src/scripts
  4. 将目录切换到/usr/local/src/scripts
  5. 运行./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。