Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Use Node.js as base image
FROM node:18-alpine

# Set working directory
WORKDIR /app

# Copy package.json and install dependencies
COPY package.json package-lock.json ./
RUN npm install

# Copy backend source code
COPY . .

# Expose the backend port
EXPOSE 5000

# Start the backend
CMD ["node", "server.js"]
Binary file removed Porject Image.png
Binary file not shown.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,8 @@ npm install dotenv-webpack
### Open new Terminal

npm start

minikube start
minikube service my-processor-service --url
minikube tunnel
kubectl get svc my-processor-service
12 changes: 12 additions & 0 deletions admin-user.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: admin-user
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: admin-user
namespace: kubernetes-dashboard
5 changes: 5 additions & 0 deletions kube-dash.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
apiVersion: v1
kind: ServiceAccount
metadata:
name: admin-user
namespace: kubernetes-dashboard
20 changes: 10 additions & 10 deletions kyube-crd.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: processors.example.com # Plural name of the resource in the API group
name: processors.example.com
spec:
group: example.com # API group
group: example.com
names:
plural: processors # Plural name for the resource
singular: processor # Singular name for the resource
kind: Processor # Kind name (CamelCase)
shortNames: # Optional short name aliases
plural: processors
singular: processor
kind: Processor
shortNames:
- proc
scope: Namespaced # Can be Namespaced or Cluster
scope: Namespaced
versions:
- name: v1
served: true
storage: true
schema:
openAPIV3Schema: # Schema validation for the custom resource
openAPIV3Schema:
type: object
properties:
spec:
Expand All @@ -37,7 +37,7 @@ spec:
description: "Email of the owner"
runtime:
type: string
enum: ["python3.10", "java21"] # Enforce specific runtime values
enum: ["python3.10", "java21"]
description: "Runtime environment (e.g., python3.10, java21)"
tags:
type: array
Expand All @@ -54,7 +54,7 @@ spec:
type: string
nullable: true
description: "Optional repository URL"
additionalPrinterColumns: # Additional columns for `kubectl get`
additionalPrinterColumns:
- name: Service Name
type: string
jsonPath: .spec.serviceName
Expand Down
39 changes: 39 additions & 0 deletions multi-port-service.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
apiVersion: v1
kind: Service
metadata:
name: my-processor-service
spec:
selector:
app: my-processor
type: LoadBalancer
ports:
- name: text-processor
port: 8080
targetPort: 8080
- name: image-processor
port: 8081
targetPort: 8081
- name: video-processor
port: 8082
targetPort: 8082
- name: audio-processor
port: 8083
targetPort: 8083
- name: pdf-processor
port: 8084
targetPort: 8084
- name: csv-processor
port: 8085
targetPort: 8085
- name: json-processor
port: 8086
targetPort: 8086
- name: xml-processor
port: 8087
targetPort: 8087
- name: excel-processor
port: 8088
targetPort: 8088
- name: markdown-processor
port: 8089
targetPort: 8089
Loading