Laravel Kubernetes (EKS) Deployment Tools
Containers | Pulls |
---|---|
Container devopscorner/phpfpm Tags |
|
Container devopscorner/laravel Tags |
Index Documentation, see here for detail
Docker Compose for Build Image, eg:
- Ubuntu (Bastion SSH)
- Nginx
- PHPFpm (Laravel App)
- etc
HelmChart, Template, Helmfile Values:
- charts
- stateful
- mariadb
- mysql
- postgresql
- redis
- etc
- others
- fluentd
- grafana
- jenkins
- kibana
- nginx
- phpfpm
- etc
- stateful
- helmfile
- laravel-template.yml
- laravel-values.yml
- manifest-laravel-secret.yml
- mariadb-values.yml
- templates
- api
- backend
- configmap
- frontend
- secretref
- stateful
- svcrole
- helm-pack-lab.sh
- helm-push-lab.sh
Teraform AWS Providers, eg:
- Core
- TFState
- Resources
- Budget
- EKS
- RDS
-
Official Repositories
./get-official.sh -- or -- make sub-official
-
Community Repositories
./get-community.sh -- or -- make sub-community
-
Clone this repository
git clone [email protected]:devopscorner/laravel-eks-deployment.git
-
Get all Terraform modules
make sub-all
-
Assume Role for Terraform command
aws sts assume-role --role-arn arn-role-to-assume --role-session-name AWSCLI
-
Terraform Execution
terraform init terraform plan terraform apply
-
Terraform Cleanup (Remove ALL)
terraform destroy --- Notes: PLEASE BEWARE TO USE THIS !!!
- Set Context to Your Environment
kubectl config use-context [YOUR_K8S_CONTEXT] -- or -- kubectx [YOUR_K8S_CONTEXT]
- Create Namespace
larave-app
kubectl create namespace laravel-app
- Deploy Stateful HelmChart
make helmchart-stateful [CHART_NAME] --- eg: make helmchart-stateful mariadb
- Deploy Others HelmChart
make helmchart-others [CHART_NAME] --- eg: make helmchart-others nginx make helmchart-others laravel
- Set Context to Your Environment
kubectl config use-context [YOUR_K8S_CONTEXT] -- or -- kubectx [YOUR_K8S_CONTEXT]
- Cleanup Stateful HelmChart
make remove-helmchart-stateful [CHART_NAME] --- eg: make remove-helmchart-stateful mariadb
- Cleanup Others HelmChart
make remove-helmchart-others [CHART_NAME] --- eg: make remove-helmchart-others nginx make remove-helmchart-others laravel
-
Docker version
docker -v --- Docker version 20.10.17-rd, build c2e4e01 docker version --- Client: Version: 20.10.17-rd API version: 1.41 Go version: go1.17.11 Git commit: c2e4e01 Built: Fri Jul 22 18:31:17 2022 OS/Arch: darwin/amd64 Context: default Experimental: true Server: Docker Desktop 4.14.1 (91661) Engine: Version: 20.10.21 API version: 1.41 (minimum version 1.12) Go version: go9.7 Git commit: 3056208 Built: Tue Oct 25 18:00:19 2022 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.9 GitCommit: 1c90a442489720eec95342e1789ee8a5e1b9536f runc: Version: 1.1.4 GitCommit: v1.1.4-0-g5fd4c4d docker-init: Version: 0.19.0 GitCommit: de40ad0
-
Docker-Compose version
docker-compose -v --- Docker Compose version v2.11.1
-
AWS Cli
aws --version --- laravel/2.8.7 Python/3.9.11 Darwin/21.6.0 exe/x86_64 prompt/off
-
Terraform Cli
terraform version --- Terraform v1.3.5 on darwin_amd64 - provider registry.terraform.io/hashicorp/aws v3.74.3 - provider registry.terraform.io/hashicorp/local v2.1.0 - provider registry.terraform.io/hashicorp/null v3.1.0 - provider registry.terraform.io/hashicorp/random v3.1.0 - provider registry.terraform.io/hashicorp/time v0.7.2
-
Terraform Environment Cli
tfenv -v --- tfenv 2.2.2
- Author: Dwi Fahni Denni (@zeroc0d3)
- License: Apache v2