我正在尝试通过docker容器运行opencv。我已经建立了形象,而运行容器直接
docker run -v /home/ganaraj/nndetect:/detect -ti opecv3 bash
访问bash
$>cd /detect/prediction
$>prediction 1.jpg
0
我得到了我期望的输出(最后的0)。你知道吗
但我真的希望把它作为一个命令行程序来运行。你知道吗
我两个都试过了
docker run -v /home/ganaraj/nndetect:/detect -ti opecv3 /detect/prediction/prediction 1.png
docker run -v /home/ganaraj/nndetect:/detect -ti opecv3 /detect/prediction/prediction /detect/prediction/1.png
但这两个都不能提供我期望的结果。你知道吗
正确的方法是什么,这样我就可以像命令行工具一样(通过docker)轻松地运行这个应用程序并获得输出?你知道吗
我也试过了
docker run -v /home/ganaraj/nndetect:/detect -it -d opecv3 bin/bash
然后:
docker exec -it 3d618d63316c /detect/prediction/prediction /detect/prediction/1.png
但我还是得到了同样的回答。你知道吗
Client:
Version: 1.8.3
API version: 1.20
Go version: go1.4.2
Git commit: f4bf5c7
Built: Mon Oct 12 05:37:18 UTC 2015
OS/Arch: linux/amd64
Server:
Version: 1.8.3
API version: 1.20
Go version: go1.4.2
Git commit: f4bf5c7
Built: Mon Oct 12 05:37:18 UTC 2015
OS/Arch: linux/amd64
docker exec是mainly for debugging purpose。你知道吗
当您想要执行一个命令(这里是python程序)时,最好只为该命令运行一个容器。你知道吗
这样,不必在主机上安装python,只需键入以下内容即可使用
determined_rosalind
:这将启动一个transient容器来运行python程序,退出并被删除(
rm
选项)。你知道吗我终于让它工作了-但我不知道“为什么”这使它工作。。如果有人解释了原因,也请加上。。你知道吗
但我想把最终的解决方案公布在这里也许是个好主意。。你知道吗
我使用以下命令启动容器:
docker run -v /home/ganaraj/nndetect:/detect -w /detect/prediction -it -d opecv3 bash
现在我可以用这个命令做预测了,效果很好
docker exec -it determined_rosalind ./prediction 1.png
相关问题 更多 >
编程相关推荐