serverless-custom-ecr
v0.0.3
Published
The `ServerlessCustomEcr` plugin is a custom Serverless plugin designed to build and push Docker images to Amazon Elastic Container Registry (ECR).
Downloads
199
Readme
Serverless Custom ECR Plugin
The ServerlessCustomEcr
plugin is a custom Serverless plugin designed to build and push Docker images to Amazon Elastic Container Registry (ECR).
Features
- Automatically builds Docker images using a specified Dockerfile.
- Pushes the built Docker images to a specified ECR repository.
Installation
You can install the plugin via npm:
npm install --save serverless-custom-ecr
Configuration
Add the plugin to your serverless.yml
file and configure the necessary options under custom.serverlessCustomEcr
:
service: my-service
provider:
name: aws
runtime: nodejs14.x
custom:
serverlessCustomEcr:
repository: my-ecr-repo
accountId: 123456789012
region: us-east-1
dockerfile: ./Dockerfile
tag: latest
platform: linux/amd64
reuseImage: true
plugins:
- serverless-custom-ecr
Configuration Options
repository
: The name of the ECR repository where the Docker image will be pushed.accountId
: Your AWS account ID.region
: The AWS region where your ECR repository is located. Defaults tous-east-1
.dockerfile
: The path to the Dockerfile used to build the Docker image. Defaults to./Dockerfile
.tag
: The tag to apply to the Docker image. Defaults tolatest
.platform
: The platform for which the Docker image is built. Defaults tolinux/amd64
.reuseImage
: Whether to reuse the Docker image if it exists locally. Defaults tofalse
.
Usage
The plugin hooks into the before:package:createDeploymentArtifacts
lifecycle event of the Serverless framework. When you run the serverless deploy
command, the plugin will:
- Check if the Docker image already exists in the local Docker registry.
- If the image does not exist, it will build the Docker image using the specified Dockerfile.
- Push the Docker image to the specified ECR repository.
License
This project is licensed under the ISC License. See the LICENSE file for details.