在docker pull之后定位目录

hm2xizp9  于 2021-07-14  发布在  Java
关注(0)|答案(2)|浏览(525)

我正在尝试使用docker从这个存储库复制结果。
我已经完成了拉使用

  1. docker pull gasparjan/crnn_ocr:cpu

并使用

  1. docker run --rm -it -v /home:/data -p 8004:8000 gasparjan/crnn_ocr:cpu

执行以下命令:

  1. python3 predict.py --G 0 --model_path %PATH_TO_MODEL% \
  2. --image_path %PATH_TO_IMAGES% \
  3. --validate --num_instances 512 --max_len 21

我需要 PATH_TO_MODEL 我如何定位 model.json 刚刚调出的文件?
我已经尝试从这里使用解决方案,但不幸的是,我无法找到拉目录。
我还尝试从github下载repo,然后传递 model.json 文件并产生一个错误

  1. FileNotFoundError: [Errno 2] No such file or directory: '/Users/Luke/Downloads/CRNN-OCR-lite-master/models/OCR_IAM_ver1/model.json'

请告知。
我用的是macos big sur。

sxpgvts3

sxpgvts31#

运行此线路后:

  1. docker run --rm -it -v /home:/data -p 8004:8000 gasparjan/crnn_ocr:cpu

您将被放置在容器的命令行中。你可以和我一起四处看看 ls :

  1. sudo docker run --rm -it -v /home:/data -p 8004:8000 gasparjan/crnn_ocr:cpu
  2. root@0e2914bb1aad:/#
  3. root@0e2914bb1aad:/# ls -la
  4. total 124
  5. drwxr-xr-x 1 root root 4096 Apr 27 13:36 .
  6. drwxr-xr-x 1 root root 4096 Apr 27 13:36 ..
  7. -rwxr-xr-x 1 root root 0 Apr 27 13:36 .dockerenv
  8. drwxr-xr-x 1 root root 4096 May 14 2019 bin
  9. drwxr-xr-x 2 root root 4096 Apr 12 2016 boot
  10. drwxr-xr-x 3 root root 4096 Apr 27 13:35 data
  11. drwxr-xr-x 5 root root 360 Apr 27 13:36 dev
  12. drwxr-xr-x 1 root root 4096 Apr 27 13:36 etc
  13. drwxr-xr-x 2 root root 4096 Apr 12 2016 home
  14. drwxr-xr-x 1 root root 4096 May 14 2019 lib
  15. drwxr-xr-x 1 root root 4096 May 14 2019 lib64
  16. drwxr-xr-x 2 root root 4096 Jan 22 2019 media
  17. drwxr-xr-x 2 root root 4096 Jan 22 2019 mnt
  18. drwxr-xr-x 2 root root 4096 May 14 2019 models
  19. drwxr-xr-x 2 root root 4096 Jan 22 2019 opt
  20. -rw-rw-r-- 1 root root 8034 May 11 2019 predict.py
  21. dr-xr-xr-x 378 root root 0 Apr 27 13:36 proc
  22. drwx------ 1 root root 4096 May 14 2019 root
  23. drwxr-xr-x 1 root root 4096 May 14 2019 run
  24. drwxr-xr-x 1 root root 4096 Jan 22 2019 sbin
  25. drwxr-xr-x 2 root root 4096 Jan 22 2019 srv
  26. dr-xr-xr-x 13 root root 0 Apr 27 13:37 sys
  27. drwxrwxrwt 1 root root 4096 May 14 2019 tmp
  28. -rw-rw-r-- 1 root root 8572 May 10 2019 train.py
  29. drwxr-xr-x 1 root root 4096 Jan 22 2019 usr
  30. -rw-rw-r-- 1 root root 23446 May 10 2019 utils.py
  31. drwxr-xr-x 1 root root 4096 Jan 22 2019 var
  32. root@0e2914bb1aad:/# ls -la /models
  33. total 55892
  34. drwxr-xr-x 2 root root 4096 May 14 2019 .
  35. drwxr-xr-x 1 root root 4096 Apr 27 13:36 ..
  36. -rw-r--r-- 1 root root 490 Jan 24 2019 arguments.txt
  37. -rw-r--r-- 1 root root 11482392 Mar 24 2019 checkpoint_weights.h5
  38. -rw-r--r-- 1 root root 34189880 Jan 24 2019 final_model.h5
  39. -rw-r--r-- 1 root root 11482392 Jan 24 2019 final_weights.h5
  40. -rw-r--r-- 1 root root 136 Jan 24 2019 loss_history.pickle.dat
  41. -rw-r--r-- 1 root root 31729 Jan 24 2019 model.json
  42. -rw-r--r-- 1 root root 15524 Jan 24 2019 model_summary.txt

所以文件在 /models/model.json 在容器里面!
至于图像,我在容器里找不到任何图像。我想你应该供应你自己的。在这种情况下,请看命令( /home:/data ). 这是绑定挂载,意思是 /home 在您的pc和 /data 容器中现在有相同的文件夹。
所以我会尝试添加一些图像到你的电脑 /home 文件夹,然后在容器内运行:

  1. python3 predict.py --G 0 --model_path /models/model.json \
  2. --image_path /data \
  3. --validate --num_instances 512 --max_len 21
展开查看全部
dm7nw8vv

dm7nw8vv2#

我是个新手。但我想我有办法。
我拉了docker图像,似乎如果你用python3命令中的模型替换%path\u to\u model%——它可以工作!
下面是最终命令的样子:

  1. python3 predict.py --G 0 --model_path models \
  2. --image_path %PATH_TO_IMAGES% \
  3. --validate --num_instances 512 --max_len 21

如果你这样做了 ls 一旦进入docker容器,就可以看到所有目录。

  1. __pycache__ boot dev home lib64 mnt opt proc run srv tmp usr var
  2. bin data etc lib media models predict.py root sbin sys train.py utils.py

我不确定这是否有用,但请告诉我。
干杯!

相关问题