Installez la bibliothèque python sur Lambda à l'aide de [/ tmp]

problème

La taille limite du package de déploiement de Lambda ne peut pas dépasser 250 Mo.

Solution

Créer une couche Lambda Installez la bibliothèque à l'aide du dossier [/ tmp] de Lambda (512 Mo) Cette fois, je vais expliquer la méthode 2.

Créer un fichier requirements.txt

requirements-lambda.txt


numpy==1.16.3

create.sh


#!/bin/bash

if [ -d "deploy" ]; then rm -Rf deploy; fi
mkdir deploy
pip install -r requirements-lambda.txt -t deploy/requirements-lambda/
cd deploy/requirements-lambda
rm -r PIL
rm -r Pillow*
zip -9 -r ../lambda-requirements.zip .
cd ..
rm -r requirements-lambda

Décompressez pour gérer le programme sur Lambda (taille inférieure à 50 Mo)

handle.py


import os
import sys
import zipfile

pkgdir = '/tmp/requirements'
zip_requirements = 'lambda-requirements.zip'

if os.environ.get("AWS_EXECUTION_ENV") is not None:
    if not os.path.exists(pkgdir):

        root = os.environ.get('LAMBDA_TASK_ROOT', os.getcwd())
        zip_requirements = os.path.join(root, zip_requirements)
        zipfile.ZipFile(zip_requirements, 'r').extractall(pkgdir)

        sys.path.append(pkgdir)

Téléchargez depuis S3 et décompressez (la taille est de 50 Mo ou plus)

handle.py


import boto3
import os
import sys
import zipfile

REQUIREMENTS_BUCKET_NAME = ''
REQUIREMENTS_KEY = ''

pkgdir = '/tmp/requirements'
zip_requirements = '/tmp/lambda-requirements.zip'

sys.path.append(pkgdir)

if os.environ.get("AWS_EXECUTION_ENV") is not None:
    if not os.path.exists(pkgdir):

        s3 = boto3.resource('s3')
        bucket = s3.Bucket(REQUIREMENTS_BUCKET_NAME)
        bucket.download_file(REQUIREMENTS_KEY, zip_requirements)

        zipfile.ZipFile(zip_requirements, 'r').extractall(pkgdir)
        os.remove('zip_requirements')

        sys.path.append(pkgdir)

Recommended Posts

Installez la bibliothèque python sur Lambda à l'aide de [/ tmp]
Installer Python sur CentOS à l'aide de Pyenv
Installez Python sur CentOS en utilisant pyenv
Installer python sur WSL
Installez Python sur Pidora.
Installez Scrapy sur python3
Installez Python sur Mac
Installer Python 3 dans un environnement Mac
Installez Python3.4 sur CentOS 6.6
Installer une bibliothèque externe pour python
Installez python sur Windows
Installez Python 2.7.3 sur CentOS 5.4
Installez Python 3.3 sur Ubuntu 12.04
Installez Python 3.4 sur Mac
Installez Python 3.6 sur Docker
Installez Python 3.8.6 sur macOS BigSur à l'aide de pyenv
Installez psycopg2 (bibliothèque pgsql pour python3) sur Apple Silicon
Installez Python 3.8 sur RHEL 8 (AppStream)
Installer pygame sur python3.4 sur Mac
Windows10: installation de la bibliothèque dlib pour python
Installez Python 3.8 sur CentOS 7 (SCL)
Installez la bibliothèque python tierce sur Cinema4D
Vérifiez types_map lors de l'utilisation de mimetypes avec AWS Lambda (Python)
Installez pandas 0.14 sur python3.4 [sur Mac]
Installez OpenCV sur Ubuntu + python
Python --Installez MySQLDB sur EC2
Installez Python 3.8 sur CentOS 8 (AppStream)
Diffusion sur LINE en utilisant python
[Python] [Chainer] [Windows] Installer Chainer sous Windows
Installez PyCall sur Raspberry PI et essayez d'utiliser la bibliothèque GPIO pour Python de Ruby
Installer python3 et autour de la bibliothèque de calcul scientifique sur Ubuntu (virtualenv + pip)
Comment installer Python à l'aide d'Anaconda
Récapitulatif si vous utilisez AWS Lambda (Python)
Installez Python 3 sur le serveur Sakura (FreeBSD)
Installer anaconda sur Mac → Ajouter une bibliothèque
Installez Python 3.8 sur Ubuntu 20.04 (norme du système d'exploitation)
installation de python2.7 dans un environnement Windows 32 bits
Remarques sur l'utilisation de MeCab depuis Python
Installez xgboost (version python) sur Windows
Installez Python sur Windows + pip + virtualenv
Installez Pytorch sur Blender 2.90 python sous Windows
Installez Python 3.7 Anaconda sur MAC, mais Python 2
Installer python3 sur Mac (El Capitan)
Exécutez Python selon la planification sur AWS Lambda
Windows10: Installation de la bibliothèque MeCab pour python
Étude sur Tokyo Rent en utilisant Python (3-2)
Remarques sur l'installation de Python à l'aide de PyEnv
Notes sur l'utilisation de rstrip avec python.
Installez Python 3.9 sur Ubuntu 20.04 (norme du système d'exploitation?)
Installer l'environnement de développement Python sur Windows 10
Installez confluent-kafka pour Python sur Ubuntu
Étude sur Tokyo Rent en utilisant Python (3-3)
Installer le framework Python django à l'aide de pip
Installez Python 2.7 sur Ubuntu 20.04 (norme du système d'exploitation?)
Étapes pour installer python3 sur Mac
Installer python
Remarques sur l'utilisation d'OpenCV avec Windows10 Python 3.8.3.
[AWS] Utilisation de fichiers ini avec Lambda [Python]