Unoconv as a webservice
Build image
$ docker build -t unoconv-webservice .
Run image
$ docker run -d -p 80:3000 --name unoconv-webservice unoconv-webservice
Post the file you want to convert to the server and get the converted file in return.
See all possible conversions on the unoconv website.
API for the webservice is /unoconv/{format-to-convert-to} so a docx to pdf would be
$ curl --form file=@myfile.docx http://localhost/unoconv/pdf > myfile.pdf
To see all possible formats for convertion visit /unoconv/formats
To see formats for a given type /unoconv/formats/{document|graphics|presentation|spreadsheet}
To see all versions of installed dependencies lookup /unoconv/versions
Are we alive? /healthz
returns
{
uptime: 18.849
}
You can change the webservice port and filesize-limit by changing environment variables.
SERVER_PORT default is 3000
PAYLOAD_MAX_SIZE default is 1048576 (1 MB)
PAYLOAD_TIMEOUT default is 2 minutes (120 000 milliseconds)
TIMEOUT_SERVER default is 2 minutes (120 000 milliseconds)
TIMEOUT_SOCKET default is 2 minutes and 20 seconds (140 000 milliseconds)
Change it in the Dockerfile or create an env-file and load it at containerstart
$ docker run --env-file=docker.env -d -p 80:3000 --name unoconv-webservice unoconv-webservice