1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-13 03:35:52 +01:00
verdaccio/website/docs/amazon.md
Abraham Schilling ddb42431d1 build: configure prettier as formatter for json, yaml and markdown (#1930)
* build: configure pretter as formatter for most files

* chore: reformat code (#1931)

* chore: re-format all files

* chore: force run quality anaylsis test

Co-authored-by: Juan Picado @jotadeveloper <juanpicado19@gmail.com>

Co-authored-by: Juan Picado @jotadeveloper <juanpicado19@gmail.com>
2021-04-09 17:54:19 +02:00

1.8 KiB

id title
amazon Amazon Web Services

This document describes several approaches for deploying Verdaccio in the AWS cloud.

EC2

CloudFormation template for deploying this stack.

''

Architecture:

Clients
 |
 | (HTTPS)
 v
Application Load Balancer
 |
 | (HTTP)
 v
EC2 Auto Scaling Group (Amazon Linux 2)
Docker image (Verdaccio)
 |
 | (NFS)
 v
Elastic File System

Architecture notes:

  • Deploy this stack into the region closest to your users for maximum performance.
  • We use an auto scaling group primarily for self-healing. The system requirements of Verdaccio are pretty low, so it's unlikely you'll need multiple instances to handle traffic load.
  • Because Amazon Linux 2 doesn't include Node, we run Verdaccio as a Docker image rather than natively on the instance. This is faster and more secure than relying on third party package sources for Node.
  • Elastic File System is cheap and stateful, and works across AZs. An alternative would be the third-party S3 storage plugin.
    • For backup, use AWS Backup

Estimated monthly cost for a small installation (in us-east-1):

  • ALB (1 LCU average): $22.265/mo
  • EC2 (t3.nano): $3.796/mo
  • EBS (8gb): $0.80/mo
  • EFS (5gb): $1.5/mo
  • Data transfer: (10gb): $0.9/mo
  • TOTAL: Under $30/mo

ECS

You can deploy Verdaccio as a task with an ECS Volume for persistent storage.

Note: Fargate doesn't support persistent volumes, so you have to use the S3 storage plugin.

EKS

See the documentation pages on Kubernetes and Docker.