TesseractNotFoundError:两个Docker容器python应用程序(docker-compose)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TesseractNotFoundError:两个Docker容器python应用程序(docker-compose)相关的知识,希望对你有一定的参考价值。
我有在本地运行的带有tesseract的python项目,它可以在Pycharm中使用。我使用了docker-compose.yml,它有两个容器(app和t4re),如下所示:
version: '3'
services:
app:
build: .
image: ocr_app:latest
depends_on:
- tesseract
tesseract:
image: tesseractshadow/tesseract4re
container_name: t4re
我的Dockerfile如下:
FROM python:3.6.1
# Create app directory
WORKDIR /app
# Bundle app source
COPY venv/src ./src
COPY venv/data ./data
# Install app dependencies
RUN pip install -r src/requirements.txt
CMD python src/ocr.py
而且我不断收到这些错误:
FileNotFoundError: [Errno 2] No such file or directory: 'tesseract'
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path
我是docker的新手,可以阅读大量文档,但是仍然无法解决此错误。我已阅读以下答案。我想我必须使用环境变量将tesseract链接到python应用程序,但是我不知道如何。
Use Tesseract 4 - Docker Container from uwsgi-nginx-flask-docker
TesseractNotFoundError: tesseract is not installed or it's not in your path
使用前,您需要在docker映像中安装tesseract。默认情况下,python:3.6.1 image中没有tesseract。您需要在其中安装ubuntu基本映像,然后安装tesseract和python,然后继续工作。这是解决方案的docker文件:
FROM ubuntu:18.04
RUN apt-get --fix-missing update && apt-get --fix-broken install && apt-get install -y poppler-utils && apt-get install -y tesseract-ocr && \
apt-get install -y libtesseract-dev && apt-get install -y libleptonica-dev && ldconfig && apt-get install -y python3.6 && \
apt-get install -y python3-pip && apt install -y libsm6 libxext6
请根据您的要求调整python版本。
我在一个运行于Docker(一个Ubuntu容器)的项目中遇到了这个问题。为了解决这个问题,我必须:-通过requirements.txt安装pytesseract;所以您的requirements.txt应该包含:
pytesseract
-您必须安装tesseract-ocr。为此,您必须在dockerfile中包含以下行:
FROM ubuntu:18.04
ENV PYTHONUNBUFFERED 1
RUN apt-get update && apt-get install -y software-properties-common && add-apt-repository -y ppa:alex-p/tesseract-ocr
RUN apt-get update && apt-get install -y tesseract-ocr-all
RUN apt-get install -y python3-pip python3-minimal libsm6 libxext6
# To make sure that tesseract-ocr is installed, uncomment the following line.
# RUN tesseract --version
以上是关于TesseractNotFoundError:两个Docker容器python应用程序(docker-compose)的主要内容,如果未能解决你的问题,请参考以下文章
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your P
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it‘s not in your path
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your p
Pytesseract:“TesseractNotFound 错误:tesseract 未安装或不在您的路径中”,我该如何解决?