1.问题描述
连接超时
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='paddleocr.bj.bcebos.com', port=443): Max retries exceeded with url: /PP-OCRv3/chinese/ch_PP-OCRv3_det_infer.tar (Caused by NameResolutionError("<urllib3.connection.HTTPSConnection object at 0x7f6530b7cd30>: Failed to resolve 'paddleocr.bj.bcebos.com' ([Errno -3] Temporary failure in name resolution)")
2.原因
docker里面虽然pip install paddleocr,但是由于在调用paddleocr处于离线,模型从未下载过,所以会报联网超时。
解决思路:
(1)联网情况下运行py文件
(2)离线情况下:将本机的paddleocr模型拷贝到docker容器内
3.解决
方法一:
在所在用户下会有.paddleocr文件,里面就是paddleocr在联网时所下载的模型
如本人用户是/home/smm,则路径/home/smm/.paddleocr
若在root用户下,则路径是/root/.paddleocr
docker cp /home/smm/.paddleocr 容器名:/root
方法二:
在连网情况下,运行调用paddleocr的py文件,这时会直接下载到容器中
docker run -it pic-recg python3 -u findimage.py bash
将容器重新提交新的镜像
docker commit 容器名 新的镜像名