The `ServerlessCustomEcr` plugin is a custom Serverless plugin designed to build and push Docker images to Amazon Elastic Container Registry (ECR).
npm install serverless-custom-ecrThe ServerlessCustomEcr plugin is a custom Serverless plugin designed to build and push Docker images to Amazon Elastic Container Registry (ECR).
- Automatically builds Docker images using a specified Dockerfile.
- Pushes the built Docker images to a specified ECR repository.
You can install the plugin via npm:
```
npm install --save serverless-custom-ecr
Add the plugin to your serverless.yml file and configure the necessary options under custom.serverlessCustomEcr:
`yaml
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
`
- 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 to us-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 to latest.platform
- : The platform for which the Docker image is built. Defaults to linux/amd64.reuseImage
- : Whether to reuse the Docker image if it exists locally. Defaults to false.
The plugin hooks into the before:package:createDeploymentArtifacts lifecycle event of the Serverless framework. When you run the serverless deploy` command, the plugin will:
1. Check if the Docker image already exists in the local Docker registry.
2. If the image does not exist, it will build the Docker image using the specified Dockerfile.
3. Push the Docker image to the specified ECR repository.
This project is licensed under the ISC License. See the LICENSE file for details.