This is a very simple Dockerfile based on Alpine Linux. It creates a very small (105MB+) weasyprint service. It uses a wsgi server by aquavitae to provide weasyprint as a web service.
A sample docker-compose configuration is as follows:
services:
weasyprint:
build: .
ports:
- '5001:5001'
To use, POST
some HTML to localhost:5001/pdf
. The response will be a rendered pdf file.
A GET
to localhost:5001/health
should result in an ok
response.
A GET
to localhost:5001/version
should output the weasyprint version (currently 0.39
).
In order to make fonts available to weasyprint, simply copy them into ./fonts
and build the image.