diff --git a/.docker/webservice.dockerfile b/.docker/webservice.dockerfile index 385637d4..cd0f71be 100644 --- a/.docker/webservice.dockerfile +++ b/.docker/webservice.dockerfile @@ -16,4 +16,9 @@ COPY .docker/webservice.py /application USER docker +VOLUME ["/config"] + +# This config file is optional +ENV OCRMYPDF_WEBSERVICE_SETTINGS "/config/config.py" + ENTRYPOINT ["python3", "/application/webservice.py"] diff --git a/.docker/webservice.py b/.docker/webservice.py index ff9f2f46..b4b3fa8e 100644 --- a/.docker/webservice.py +++ b/.docker/webservice.py @@ -32,11 +32,9 @@ import shlex app = Flask(__name__) app.secret_key = "secret" +app.config['MAX_CONTENT_LENGTH'] = 50_000_000 +app.config.from_envvar("OCRMYPDF_WEBSERVICE_SETTINGS", silent=True) -uploaddir = TemporaryDirectory(prefix="ocrmypdf-upload") -downloaddir = TemporaryDirectory(prefix="ocrmypdf-download") - -app.config["UPLOAD_FOLDER"] = uploaddir ALLOWED_EXTENSIONS = set(["pdf"]) @@ -45,9 +43,13 @@ def allowed_file(filename): def do_ocrmypdf(file): + uploaddir = TemporaryDirectory(prefix="ocrmypdf-upload") + downloaddir = TemporaryDirectory(prefix="ocrmypdf-download") + filename = secure_filename(file.filename) up_file = os.path.join(uploaddir.name, filename) file.save(up_file) + down_file = os.path.join(downloaddir.name, filename) cmd_args = [arg for arg in shlex.split(request.form["params"])]