在我的 Dockerfile
中,我创建了一个 Conda 环境并安装了我需要的所有软件包。在 Dockerfile
的末尾,我想在创建容器时启动一项服务。
原来的Dockerfile
不是Conda环境,命令如下:
EXPOSE 8868
CMD ["/bin/bash","-c","hub install deploy/hubserving/ocr_system/ && hub serving start -m ocr_system"]
我想像这样修改命令:
activate myenv
hua install and hub servering start
如何激活容器中的 Conda 环境?
答案 0 :(得分:1)
如果您知道 conda
的位置(比方说 /opt/miniconda3/condabin/conda
),那么您可以直接使用 conda run
。类似的东西:
CMD ['/opt/miniconda3/condabin/conda', 'run', '--no-capture-output',
'hub', 'install', 'deploy/hubserving/ocr_system/', '"&&"',
'hub', 'serving', 'start', '-m=ocr_system']
参数分隔可能需要一些调整,但这就是它的精神。如果这是一个非基础环境,那么您可能还需要一个 --name|-n
参数到 {{ 1}}。