docker能帮助我避免每次ssh到新机器时都重新安装库吗?
我有一个python库的列表,每当我在校园的这台新计算机上安装ssh时,我都需要重新安装这些库。如何确保只需创建一个文件/编写一个命令,就不必重复此重新安装过程?Docker是这样做的好方法吗 我有一个requirements.txt文件,里面有我需要的所有库docker能帮助我避免每次ssh到新机器时都重新安装库吗?,docker,ssh,dockerfile,Docker,Ssh,Dockerfile,我有一个python库的列表,每当我在校园的这台新计算机上安装ssh时,我都需要重新安装这些库。如何确保只需创建一个文件/编写一个命令,就不必重复此重新安装过程?Docker是这样做的好方法吗 我有一个requirements.txt文件,里面有我需要的所有库 熊猫 matplotlib 海本 努比 sklearn opencv python 该项目有各种Jupyter笔记本,需要运行上述导入 我不太熟悉Docker文件和Docker容器: FROM my/base ADD . /srv RUN
FROM my/base
ADD . /srv
RUN pip install -r requirements.txt
RUN python sunflower.ipynb
ENTRYPOINT ["run_server"]
我是否会将我的整个项目包装在一个类似于上面看到的Dockerfile中?我必须通过将我的机器上的一个端口连接到dgx1上相应的端口,以ssh方式连接到名为dgx1.cc.gatech.edu的机器
8088:localhost:8088 username@dgx1.cc.gatech.edu
如果可以运行任何Docker命令,就可以轻松地获得对整个系统的不受限制的根访问权限。您极不可能在您描述的共享系统上运行Docker命令。Docker还有其他几个缺点,我不建议您在描述用例时使用它 另一方面,Python
requirements.txt文件本身就足以列出所需的依赖项。您可以将这些软件包安装到其中,它们将在您的控制下,并与该系统上安装的任何其他软件包隔离。使用这项服务只涉及:
#创建虚拟环境
蟒蛇3-m静脉/向日葵
#让它成为您当前的Python(“激活”它)
. ./向日葵/垃圾箱/激活
#安装所需的软件包
pip3安装-r requirements.txt
#运行脚本
蟒蛇3向日葵
#切换回Python系统
使停止工作
如果您重复ssh到同一个系统中,您可以重用相同的虚拟环境;重新运行activate
命令,软件包将已安装
(如果您没有更专门的需求,但使用了与requirements.txt
文件不同的软件包列表文件设置,则使用当前设置。)