libreoffice-lambda-layer
                                
                                
                                
                                    libreoffice-lambda-layer copied to clipboard
                            
                            
                            
                        LibreOffice for AWS Lambda as a layer
95 MB LibreOffice to fit inside AWS Lambda Layer compressed with Brotli or gzip
Based on the serverless-libreoffice project.
Getting Started
Click on Layers and choose "Add a layer", and "Provide a layer version ARN" and enter the following ARN.
arn:aws:lambda:us-east-1:764866452798:layer:libreoffice-brotli:1
See the table below for the list of supported regions and runtimes.
Works well with aws-lambda-libreoffice npm package
What's inside this layer?
libreoffice-brotli layer contains lo.tar.br file which is LibreOffice v6.4.0.1. Node.js has native Brotli unpacking support since version 10 so it's easy to unpack this file natively. Alternatively, you can use aws-lambda-libreoffice npm package to simplify this task.
libreoffice-gzip layer contains lo.tar.gz file which is LibreOffice v6.4.0.1.
How do I use this layer to launch LibreOffice?
If you don't use aws-lambda-libreoffice npm package, then these steps are roughly what you need to do.
- This layer just adds 
/opt/lo.tar.bror/opt/lo.tar.gzfile to your Lambda runtime - Unpack 
/opt/lo.tar.bror/opt/lo.tar.gzfile during Lambda execution into/tmpfolder which has 512 MB of free space. Make sure to do this OUTSIDE function handler code. This is an expensive task, so better to make it once on a warm start. - LibreOffice binary will be located available at 
/opt/instdir/program/soffice.bin - Check out 
/test/index.jsfor CLI arguments needed to run LibreOffice to convert a.txtfile to.pdffor more details 
Version ARNs
LibreOffice v6.4.0.1 (Amazon Linux 2)
Works with the following AWS Lambda runtimes which run on Amazon Linux 2:
- nodejs16.x
 - nodejs14.x
 - nodejs12.x
 - nodejs10.x
 - python3.8
 - java11
 
| AWS Region | Layer ARN (brotli) | 
|---|---|
| us-east-1 | arn:aws:lambda:us-east-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:us-east-1:764866452798:layer:libreoffice-gzip:1 | 
| eu-west-1 | arn:aws:lambda:eu-west-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:eu-west-1:764866452798:layer:libreoffice-gzip:1 | 
| eu-central-1 | arn:aws:lambda:eu-central-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:eu-central-1:764866452798:layer:libreoffice-gzip:1 | 
| us-west-2 | arn:aws:lambda:us-west-2:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:us-west-2:764866452798:layer:libreoffice-gzip:1 | 
| us-east-2 | arn:aws:lambda:us-east-2:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:us-east-2:764866452798:layer:libreoffice-gzip:1 | 
| ap-southeast-2 | arn:aws:lambda:ap-southeast-2:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:ap-southeast-2:764866452798:layer:libreoffice-gzip:1 | 
| eu-west-2 | arn:aws:lambda:eu-west-2:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:eu-west-2:764866452798:layer:libreoffice-gzip:1 | 
| eu-west-3 | arn:aws:lambda:eu-west-3:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:eu-west-3:764866452798:layer:libreoffice-gzip:1 | 
| ap-southeast-1 | arn:aws:lambda:ap-southeast-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:ap-southeast-1:764866452798:layer:libreoffice-gzip:1 | 
| ap-south-1 | arn:aws:lambda:ap-south-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:ap-south-1:764866452798:layer:libreoffice-gzip:1 | 
| ca-central-1 | arn:aws:lambda:ca-central-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:ca-central-1:764866452798:layer:libreoffice-gzip:1 | 
| sa-east-1 | arn:aws:lambda:sa-east-1:764866452798:layer:libreoffice-brotli:1 or arn:aws:lambda:sa-east-1:764866452798:layer:libreoffice-gzip:1 | 
LibreOffice 6.1.0.0.alpha0 (Amazon Linux 1)
Works with the following AWS Lambda runtimes which run on Amazon Linux 2:
- nodejs8.10
 - python3.7
 - python3.6
 - python2.7
 - ruby2.5
 - java8
 - go1.x
 - dotnetcore2.1
 
| AWS Region | LibreOffice Version | Layer ARN | 
|---|---|---|
| us-east-1 | 6.1.0.0.alpha0 | arn:aws:lambda:us-east-1:764866452798:layer:libreoffice:8 | 
| eu-west-1 | 6.1.0.0.alpha0 | arn:aws:lambda:eu-west-1:764866452798:layer:libreoffice:1 | 
| eu-central-1 | 6.1.0.0.alpha0 | arn:aws:lambda:eu-central-1:764866452798:layer:libreoffice:1 | 
| us-west-2 | 6.1.0.0.alpha0 | arn:aws:lambda:us-west-2:764866452798:layer:libreoffice:1 | 
| us-east-2 | 6.1.0.0.alpha0 | arn:aws:lambda:us-east-2:764866452798:layer:libreoffice:1 | 
| ap-southeast-2 | 6.1.0.0.alpha0 | arn:aws:lambda:ap-southeast-2:764866452798:layer:libreoffice:1 | 
| eu-west-2 | 6.1.0.0.alpha0 | arn:aws:lambda:eu-west-2:764866452798:layer:libreoffice:1 | 
| ap-southeast-1 | 6.1.0.0.alpha0 | arn:aws:lambda:ap-southeast-1:764866452798:layer:libreoffice:1 | 
| ap-south-1 | 6.1.0.0.alpha0 | arn:aws:lambda:ap-south-1:764866452798:layer:libreoffice:1 | 
License
MIT © Shelf