{"id":18926554,"url":"https://github.com/kalindudc/deploy-with-k8s","last_synced_at":"2026-05-01T16:34:11.824Z","repository":{"id":245044479,"uuid":"817080961","full_name":"kalindudc/deploy-with-k8s","owner":"kalindudc","description":"a collection small apps with docker configurations / kubernetes manifests ","archived":false,"fork":false,"pushed_at":"2024-12-24T00:26:56.000Z","size":31,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-25T00:37:18.136Z","etag":null,"topics":["docker","helm","krane","kubernetes"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kalindudc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-06-19T01:38:48.000Z","updated_at":"2024-07-12T03:34:42.000Z","dependencies_parsed_at":"2024-07-10T05:01:39.993Z","dependency_job_id":"6659c0d1-0b1f-4e17-a7ef-e654e620644c","html_url":"https://github.com/kalindudc/deploy-with-k8s","commit_stats":null,"previous_names":["kalindudc/deploy-with-k8s"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kalindudc/deploy-with-k8s","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalindudc%2Fdeploy-with-k8s","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalindudc%2Fdeploy-with-k8s/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalindudc%2Fdeploy-with-k8s/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalindudc%2Fdeploy-with-k8s/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kalindudc","download_url":"https://codeload.github.com/kalindudc/deploy-with-k8s/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalindudc%2Fdeploy-with-k8s/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32505106,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","helm","krane","kubernetes"],"created_at":"2024-11-08T11:16:37.680Z","updated_at":"2026-05-01T16:34:11.799Z","avatar_url":"https://github.com/kalindudc.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Deploy with K8s\n\nThis repo will contain a collection small apps with docker configurations kubernetes manifests to be used as templates and example. The goal of this project is to make it easier for anyone to understand deployments with kubernetes.\n\n## Development requirements for this repo\n\nNote that the below requirements are only required to run the examples defined in this repository in your own local environment. The example are not meant for production environments and should be used in development / testing / homelab environments.\n\n1. [Docker](https://docs.docker.com/engine/install/)\n2. [Minikube](https://minikube.sigs.k8s.io/docs/start/?arch=%2Fmacos%2Fx86-64%2Fstable%2Fbinary+download)\n3. [kubectl](https://kubernetes.io/docs/tasks/tools/)\n4. [Helm](https://helm.sh/docs/intro/install/)\n5. [Krane](https://github.com/Shopify/krane)\n6. `golang / python / nodejs / etc... (see ./src/*/README.md)`\n\n\n## Building and deploying\n\nAll examples will use `docker` for containerization. Most application templating will be done using `helm` and deployments will use `krane` for easy to understand live results.\n\n## Example build and deploy\n\n```\n❯ make build python-echo-server\nbuild with subcommand: python-echo-server\n/Library/Developer/CommandLineTools/usr/bin/make build-python-echo-server\nRunning build for python-echo-server...\n\n./scripts/build_image.sh applications/python-echo-server\n[+] Building 0.9s (13/13) FINISHED                                                                                                                 docker:desktop-linux\n =\u003e [internal] load build definition from Dockerfile                                                                                                               0.0s\n =\u003e =\u003e transferring dockerfile: 1.39kB                                                                                                                             0.0s\n =\u003e resolve image config for docker-image://docker.io/docker/dockerfile:1                                                                                          0.5s\n =\u003e CACHED docker-image://docker.io/docker/dockerfile:1@sha256:a57df69d0ea827fb7266491f2813635de6f17269be881f696fbfdf2d83dda33e                                    0.0s\n =\u003e [internal] load metadata for docker.io/library/python:3.12.4-slim                                                                                              0.3s\n =\u003e [internal] load .dockerignore                                                                                                                                  0.0s\n =\u003e =\u003e transferring context: 671B                                                                                                                                  0.0s\n =\u003e [base 1/6] FROM docker.io/library/python:3.12.4-slim@sha256:2fba8e70a87bcc9f6edd20dda0a1d4adb32046d2acbca7361bc61da5a106a914                                   0.0s\n =\u003e [internal] load build context                                                                                                                                  0.0s\n =\u003e =\u003e transferring context: 218B                                                                                                                                  0.0s\n =\u003e CACHED [base 2/6] WORKDIR /app                                                                                                                                 0.0s\n =\u003e CACHED [base 3/6] RUN adduser     --disabled-password     --gecos \"\"     --home \"/nonexistent\"     --shell \"/sbin/nologin\"     --no-create-home     --uid \"10  0.0s\n =\u003e CACHED [base 4/6] RUN --mount=type=cache,target=/root/.cache/pip     --mount=type=bind,source=requirements.txt,target=requirements.txt     python -m pip inst  0.0s\n =\u003e CACHED [base 5/6] COPY . .                                                                                                                                     0.0s\n =\u003e CACHED [base 6/6] RUN chmod +x /app/main.py                                                                                                                    0.0s\n =\u003e exporting to image                                                                                                                                             0.0s\n =\u003e =\u003e exporting layers                                                                                                                                            0.0s\n =\u003e =\u003e writing image sha256:4d8a5727c4a92772802c8f52bb8e9df052fd81e5dc790545c223894fb0a46b48                                                                       0.0s\n =\u003e =\u003e naming to docker.io/library/python-echo-server:v1.0                                                                                                         0.0s\n =\u003e =\u003e naming to docker.io/library/python-echo-server:latest                                                                                                       0.0s\n\nWhat's next:\n    View a summary of image vulnerabilities and recommendations → docker scout quickview\n\n❯ make deploy python-echo-server\ndeploy with subcommand: python-echo-server\n/Library/Developer/CommandLineTools/usr/bin/make deploy-python-echo-server\nRunning deploy for python-echo-server...\n\n./scripts/deploy.sh -n python-echo-server -d applications/python-echo-server/deploy\n[INFO][2024-06-19 21:57:04 -0400]\n[INFO][2024-06-19 21:57:04 -0400]\t------------------------------------Phase 1: Initializing deploy------------------------------------\n[INFO][2024-06-19 21:57:05 -0400]\tAll required parameters and files are present\n[INFO][2024-06-19 21:57:05 -0400]\tDiscovering resources:\n[INFO][2024-06-19 21:57:05 -0400]\t  - Deployment/python-echo-server\n[INFO][2024-06-19 21:57:05 -0400]\t  - Service/python-echo-server-svc\n[INFO][2024-06-19 21:57:05 -0400]\n[INFO][2024-06-19 21:57:05 -0400]\t----------------------------Phase 2: Checking initial resource statuses-----------------------------\n[INFO][2024-06-19 21:57:06 -0400]\tDeployment/python-echo-server                     1 replica, 1 updatedReplica, 1 availableReplica\n[INFO][2024-06-19 21:57:06 -0400]\tService/python-echo-server-svc                    Selects at least 1 pod\n[INFO][2024-06-19 21:57:06 -0400]\n[INFO][2024-06-19 21:57:06 -0400]\t----------------------------------Phase 3: Deploying all resources----------------------------------\n[INFO][2024-06-19 21:57:06 -0400]\tDeploying resources:\n[INFO][2024-06-19 21:57:06 -0400]\t- Deployment/python-echo-server (progress deadline: 600s)\n[INFO][2024-06-19 21:57:06 -0400]\t- Service/python-echo-server-svc (timeout: 420s)\n[INFO][2024-06-19 21:57:10 -0400]\tSuccessfully deployed in 3.6s: Deployment/python-echo-server, Service/python-echo-server-svc\n[INFO][2024-06-19 21:57:10 -0400]\n[INFO][2024-06-19 21:57:10 -0400]\t------------------------------------------Result: SUCCESS-------------------------------------------\n[INFO][2024-06-19 21:57:10 -0400]\tSuccessfully deployed 2 resources\n[INFO][2024-06-19 21:57:10 -0400]\n[INFO][2024-06-19 21:57:10 -0400]\tSuccessful resources\n[INFO][2024-06-19 21:57:10 -0400]\tDeployment/python-echo-server                     1 replica, 1 updatedReplica, 1 availableReplica\n[INFO][2024-06-19 21:57:10 -0400]\tService/python-echo-server-svc                    Selects at least 1 pod\n\n❯ kcl --context minikube -n python-echo-server get all\nNAME                                     READY   STATUS    RESTARTS   AGE\npod/python-echo-server-d84844957-zl2wb   1/1     Running   0          3h24m\n\nNAME                             TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE\nservice/python-echo-server-svc   NodePort   10.107.121.68   \u003cnone\u003e        80:31016/TCP   3h24m\n\nNAME                                 READY   UP-TO-DATE   AVAILABLE   AGE\ndeployment.apps/python-echo-server   1/1     1            1           3h24m\n\nNAME                                           DESIRED   CURRENT   READY   AGE\nreplicaset.apps/python-echo-server-d84844957   1         1         1       3h24m\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalindudc%2Fdeploy-with-k8s","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkalindudc%2Fdeploy-with-k8s","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalindudc%2Fdeploy-with-k8s/lists"}