/docker-flask-exiftool

Very simple server to POST a file and return ExifTool info

Primary LanguagePythonMIT LicenseMIT

Swagger generated server

Overview

This server was generated by the swagger-codegen project. By using the OpenAPI-Spec from a remote server, you can easily generate a server stub. This is an example of building a swagger-enabled Flask server.

This example uses the Connexion library on top of Flask.

This server allows to POST a file and get the result of the amazing ExifTool by Phil Harvey in JSON with the Sven Marnach's PyExifTool parser

Requirements

Python 3.5.2+

Usage

To run the server, please execute the following from the root directory:

pip3 install -r requirements.txt
python3 -m swagger_server

Sample usage (replace openjfx-13_linux-x64_bin-sdk.zip by the name of a file in your current directory):

curl -v -F 'upfile=@openjfx-13_linux-x64_bin-sdk.zip' http://localhost:8080/api/exiftool

Your Swagger definition lives here:

http://localhost:8080/api/swagger.json

To launch the integration tests, use tox:

sudo pip install tox
tox

Running with Docker

To run the server on a Docker container, please execute the following from the root directory:

# building the image
docker build -t swagger_server .

# starting up a container
docker run -p 8080:8080 swagger_server