issue-14: structure kubernetes
All checks were successful
Cadoles/hydra-sql/pipeline/pr-develop This commit looks good
All checks were successful
Cadoles/hydra-sql/pipeline/pr-develop This commit looks good
This commit is contained in:
@ -1,11 +1,3 @@
|
||||
ARG ADDITIONAL_PACKAGES="
|
||||
bash
|
||||
mysql-client
|
||||
php81-cli
|
||||
php81-pdo_pgsql
|
||||
php81-pdo_mysql
|
||||
php81-mysqli
|
||||
php81-pgsql
|
||||
"
|
||||
ARG ADDITIONAL_PACKAGES="bash mysql-client php81-cli php81-pdo_pgsql php81-pdo_mysql php81-mysqli php81-pgsql"
|
||||
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-base
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-standalone
|
@ -1,11 +1,3 @@
|
||||
ARG ADDITIONAL_PACKAGES="
|
||||
bash
|
||||
mysql-client
|
||||
php81-cli
|
||||
php81-pdo_pgsql
|
||||
php81-pdo_mysql
|
||||
php81-mysqli
|
||||
php81-pgsql
|
||||
"
|
||||
ARG ADDITIONAL_PACKAGES="bash mysql-client php81-cli php81-pdo_pgsql php81-pdo_mysql php81-mysqli php81-pgsql"
|
||||
|
||||
FROM reg.cadoles.com/cadoles/symfony:alpine-php-8.1-standalone
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
nameReference:
|
||||
- kind: Secret
|
||||
fieldSpecs:
|
||||
- path: spec/superuserSecret/name
|
||||
kind: Cluster
|
||||
- path: spec/bootstrap/initdb/secret/name
|
||||
kind: Cluster
|
@ -0,0 +1,32 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1alpha1
|
||||
kind: Component
|
||||
|
||||
generatorOptions:
|
||||
disableNameSuffixHash: true
|
||||
|
||||
configurations:
|
||||
- ./configurations/cnpg-cluster.yaml
|
||||
|
||||
resources:
|
||||
- ./resources/hydra-sql-cnpg-cluster.yaml
|
||||
|
||||
secretgenerator:
|
||||
- name: hydra-sql-postgres-admin
|
||||
type: secret
|
||||
literals:
|
||||
- username=postgres
|
||||
- password=notsosecret
|
||||
- name: hydra-sql-postgres-user
|
||||
type: Secret
|
||||
literals:
|
||||
- username=hydra-sql
|
||||
- password=NotSoSecretButThisIsBad
|
||||
|
||||
vars:
|
||||
- name: APP_DATABASE_SERVICE_NAME
|
||||
objref:
|
||||
name: hydra-sql-postgres
|
||||
kind: Cluster
|
||||
apiVersion: postgresql.cnpg.io/v1
|
||||
fieldref:
|
||||
fieldpath: metadata.name
|
@ -0,0 +1,17 @@
|
||||
apiVersion: postgresql.cnpg.io/v1
|
||||
kind: Cluster
|
||||
metadata:
|
||||
name: hydra-sql-postgres
|
||||
spec:
|
||||
instances: 3
|
||||
primaryUpdateStrategy: unsupervised
|
||||
superuserSecret:
|
||||
name: hydra-sql-postgres-admin
|
||||
bootstrap:
|
||||
initdb:
|
||||
database: hydra-sql
|
||||
owner: hydra-sql
|
||||
secret:
|
||||
name: hydra-sql-postgres-user
|
||||
storage:
|
||||
size: 20Gi
|
10
misc/k8s/kustomization/base/kustomization.yaml
Normal file
10
misc/k8s/kustomization/base/kustomization.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
namePrefix: hydra-sql-
|
||||
|
||||
components:
|
||||
- components/hydra-sql-cnpg
|
||||
|
||||
resources:
|
||||
- resources/hydra-sql-kube
|
@ -0,0 +1,6 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- ./resources/hydra-sql-service.yaml
|
||||
- ./resources/hydra-sql-deployment.yaml
|
@ -0,0 +1,55 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
io.kompose.service: hydra-sql
|
||||
name: hydra-sql
|
||||
spec:
|
||||
replicas: 3
|
||||
|
||||
selector:
|
||||
matchLabels:
|
||||
io.kompose.service: hydra-sql
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
io.kompose.service: hydra-sql
|
||||
spec:
|
||||
restartPolicy: Always
|
||||
containers:
|
||||
- image: reg.cadoles.com/cadoles/hydra-sql-kube
|
||||
imagePullPolicy: Always
|
||||
name: hydra-sql-php-fpm
|
||||
args: ["/usr/sbin/php-fpm81", "-F", "-e"]
|
||||
resources: {}
|
||||
env:
|
||||
- name: PHP_FPM_LISTEN
|
||||
value: 127.0.0.1:9000
|
||||
- name: PHP_MEMORY_LIMIT
|
||||
value: 128m
|
||||
- name: PHP_FPM_MEMORY_LIMIT
|
||||
value: 128m
|
||||
- name: PHP_FPM_LOG_LEVEL
|
||||
value: warning
|
||||
- name: APP_DATABASE_SERVICE_NAME
|
||||
value: $(APP_DATABASE_SERVICE_NAME)-rw
|
||||
- image: reg.cadoles.com/cadoles/hydra-sql-kube
|
||||
imagePullPolicy: Always
|
||||
name: hydra-sql-nginx
|
||||
args: ["/usr/sbin/nginx"]
|
||||
env:
|
||||
- name: NGINX_APP_UPSTREAM_BACKEND_SERVER
|
||||
value: 127.0.0.1:9000
|
||||
- name: NGINX_APP_ROOT
|
||||
value: "/public"
|
||||
- name: NGINX_APP_PHP_INDEX
|
||||
value: "/index.php"
|
||||
- name: NGINX_ERROR_LOG_LEVEL
|
||||
value: "warn"
|
||||
- name: NGINX_APP_PHP_NON_FILE_PATTERN
|
||||
value: "^/index\\.php(/|$)"
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
resources: {}
|
@ -0,0 +1,14 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
io.kompose.service: hydra-sql
|
||||
name: hydra-sql
|
||||
spec:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
- name: hydra-sql-http
|
||||
port: 80
|
||||
targetPort: 8080
|
||||
selector:
|
||||
io.kompose.service: hydra-sql
|
3
misc/k8s/kustomization/base/secrets/.gitignore
vendored
Normal file
3
misc/k8s/kustomization/base/secrets/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
*
|
||||
!.gitignore
|
||||
!.gitkeep
|
0
misc/k8s/kustomization/base/secrets/.gitkeep
Normal file
0
misc/k8s/kustomization/base/secrets/.gitkeep
Normal file
21
misc/k8s/kustomization/overlays/dev/kustomization.yaml
Normal file
21
misc/k8s/kustomization/overlays/dev/kustomization.yaml
Normal file
@ -0,0 +1,21 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: hydra-sql-dev
|
||||
|
||||
resources:
|
||||
- ../../base
|
||||
- resources/namespace.yaml
|
||||
- resources/ingress.yaml
|
||||
|
||||
patches:
|
||||
- path: patches/update-replicas-for-hydra-sql.yaml
|
||||
- path: patches/add-registry-pull-secret.yaml
|
||||
target:
|
||||
kind: Deployment
|
||||
version: v1
|
||||
|
||||
secretGenerator:
|
||||
- files:
|
||||
- secrets/dockerconfig/.dockerconfigjson
|
||||
name: regcred-dev
|
||||
type: kubernetes.io/dockerconfigjson
|
@ -0,0 +1,4 @@
|
||||
- op: add
|
||||
path: "/spec/template/spec/imagePullSecrets"
|
||||
value:
|
||||
- name: regcred-dev
|
@ -0,0 +1,8 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
io.kompose.service: hydra-sql
|
||||
name: hydra-sql
|
||||
spec:
|
||||
replicas: 1
|
21
misc/k8s/kustomization/overlays/dev/resources/ingress.yaml
Normal file
21
misc/k8s/kustomization/overlays/dev/resources/ingress.yaml
Normal file
@ -0,0 +1,21 @@
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: hydra-sql
|
||||
annotations:
|
||||
nginx.ingress.kubernetes.io/proxy-body-size: "138m"
|
||||
nginx.ingress.kubernetes.io/enable-cors: "true" #cf 01
|
||||
nginx.ingress.kubernetes.io/cors-allow-headers: "X-Forwarded-For" #cf 01
|
||||
spec:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: hydra-sql.dev.local
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
pathType: Prefix
|
||||
backend:
|
||||
service:
|
||||
name: hydra-sql
|
||||
port:
|
||||
number: 8080
|
@ -0,0 +1,4 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: hydra-sql-dev
|
3
misc/k8s/kustomization/overlays/dev/secrets/.gitignore
vendored
Normal file
3
misc/k8s/kustomization/overlays/dev/secrets/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
*
|
||||
!.gitignore
|
||||
!.gitkeep
|
Reference in New Issue
Block a user