Skip to content

Latest commit

 

History

History
65 lines (55 loc) · 3.63 KB

README.md

File metadata and controls

65 lines (55 loc) · 3.63 KB

aws-eks-helm-deploy

This tool using for CI/CD, you can make deploying an Pod to Kubernetes quickly

Quick run:

docker run \                        
  -e AWS_ACCESS_KEY_ID=<YOUR_AWS_ACCESS_KEY_ID> \
  -e AWS_SECRET_ACCESS_KEY=<YOUR_AWS_SECRET_ACCESS_KEY> \
  -e AWS_DEFAULT_REGION=<YOUR_AWS_DEFAULT_REGION> \
  -e KUBECONFIG_FILE_S3_URL=s3://<YOUR_BUCKET>/<folder>/<kubeconfig-file> \
  -e EKS_CHART_NAME=<YOUR_CHART_NAME> \
  -e EKS_CHART_VERSION=<YOUR_CHART_VERSION> \
  -e EKS_IMAGE_REPOSITORY=<YOUR_IMAGE_REPOSITORY> \
  -e EKS_CONTAINER_PORT=<YOUR_CONTAINER_PORT> \
  -e EKS_CONTAINER_HEALTH_CHECK_PATH=<YOUR_READINESS_LIVENESS_PORT> \
  -e EKS_NAMESPACE=<YOUR_CHART_NAMESPACE> \
  qitpy/aws-eks-helm-deploy

Example:

docker run \                        
  -e AWS_ACCESS_KEY_ID=2pf8F1tZMhbIuFfclVGz \
  -e AWS_SECRET_ACCESS_KEY=bUbFefyoaf4Fq8V8AIIV/gVrbL8i0uxl9hRd2Xqrp \
  -e AWS_DEFAULT_REGION=ap-southeast-1 \
  -e KUBECONFIG_FILE_S3_URL=s3://my-public-bucket/files/kubeconfig-file \
  -e EKS_CHART_NAME=my-chart-name \
  -e EKS_IMAGE_REPOSITORY=helloword \
  -e EKS_CHART_VERSION=1 \
  -e EKS_CONTAINER_PORT=80 \
  -e EKS_CONTAINER_HEALTH_CHECK_PATH="/" \
  -e EKS_NAMESPACE=default \
  qitpy/aws-eks-helm-deploy

Variables (*):

Field Required/Optional Default Value Example Values
AWS_ACCESS_KEY_ID Required null FAKE_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY Required null FAKE_SECRET_ACCESS_KEY
AWS_DEFAULT_REGION Required null us-west-2
KUBECONFIG_FILE_S3_URL Required null s3://fake-bucket/fake-path/kubeconfig.yaml
EKS_IMAGE_REPOSITORY Required null fake-repo
EKS_CHART_NAME Required null fake-chart
EKS_NAMESPACE Required null fake-namespace
EKS_CHART_VERSION Optional latest 1.0.0
EKS_CONTAINER_PORT Optional 80 8080
EKS_CONTAINER_HEALTH_CHECK_PATH Optional / /health
RESOURCE_LIMITS_CPU Optional default of helm creating 2
RESOURCE_LIMITS_MEMORY Optional default of helm creating 4Gi
RESOURCE_REQUEST_CPU Optional default of helm creating 1
RESOURCE_REQUEST_MEMORY Optional default of helm creating 2Gi

Please, note:

  1. this tool require S3 Bucket to hold kubeconfig file, that mean you need to add your kubeconfig file to your S3 Bucket before using.
  2. your AWS credential need at least AmazonS3ReadOnlyAccess.
  3. ensure that your cluster-namespace has already existed.