diff --git a/Dockerfile b/Dockerfile index 646fb27..e761cb2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,7 +25,7 @@ RUN chmod +x /usr/local/bin/install-php-extensions && \ RUN apt-get clean && rm -rf /var/lib/apt/lists/* # Get latest Composer -COPY --from=composer:latest /usr/bin/composer /usr/bin/composer +COPY --from=docker.io/library/composer:latest /usr/bin/composer /usr/bin/composer # Copy application files COPY --chown=www-data:www-data . /var/www diff --git a/Makefile b/Makefile index acdcfbe..115d04d 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,17 @@ build: deploy: build @if [ ! -f .env ]; then cp .env.example .env; fi - kubectl create secret generic mkm-admin-env --from-env-file=.env --dry-run=client -o yaml | kubectl apply -f - - kubectl apply -f k8s/deployment.yaml + @echo "Cleaning up existing deployment if any..." + -podman kube down k8s/deployment.yaml >/dev/null 2>&1 + @echo "Generating merged deployment with ConfigMap..." + @kubectl create configmap mkm-admin-config --from-env-file=.env --dry-run=client -o yaml > k8s/merged_deployment.yaml + @echo "---" >> k8s/merged_deployment.yaml + @cat k8s/deployment.yaml >> k8s/merged_deployment.yaml + @echo "Deploying via podman kube play..." + podman kube play k8s/merged_deployment.yaml + @rm k8s/merged_deployment.yaml -.PHONY: build deploy +stop: + -podman kube down k8s/deployment.yaml >/dev/null 2>&1 + +.PHONY: build deploy stop diff --git a/k8s/deployment.yaml b/k8s/deployment.yaml index 38fe360..d7e6baa 100644 --- a/k8s/deployment.yaml +++ b/k8s/deployment.yaml @@ -5,7 +5,7 @@ metadata: labels: app: mkm-admin spec: - replicas: 3 + replicas: 1 selector: matchLabels: app: mkm-admin @@ -16,13 +16,13 @@ spec: spec: containers: - name: mkm-admin - image: mkm-admin:latest - imagePullPolicy: Always + image: localhost/mkm-admin:latest + imagePullPolicy: Never ports: - containerPort: 8000 envFrom: - - secretRef: - name: mkm-admin-env + - configMapRef: + name: mkm-admin-config resources: requests: cpu: "100m" @@ -52,12 +52,12 @@ spec: spec: containers: - name: worker - image: mkm-admin:latest - imagePullPolicy: Always + image: localhost/mkm-admin:latest + imagePullPolicy: Never command: ["php", "artisan", "horizon"] envFrom: - - secretRef: - name: mkm-admin-env + - configMapRef: + name: mkm-admin-config resources: requests: cpu: "100m"