{"id":17122829,"url":"https://github.com/ibrahimgunduz34/kubernetes-example-application","last_synced_at":"2025-04-13T05:39:09.089Z","repository":{"id":42557161,"uuid":"221001063","full_name":"ibrahimgunduz34/kubernetes-example-application","owner":"ibrahimgunduz34","description":"An example application based on Kubernetes that consist of two service instance communicate through messages between each other.","archived":false,"fork":false,"pushed_at":"2024-10-03T18:44:40.000Z","size":16,"stargazers_count":5,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-26T22:12:51.806Z","etag":null,"topics":["example","java","kubernetes","realworld"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ibrahimgunduz34.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-11-11T14:37:08.000Z","updated_at":"2023-12-21T19:59:54.000Z","dependencies_parsed_at":"2022-08-24T04:01:08.535Z","dependency_job_id":null,"html_url":"https://github.com/ibrahimgunduz34/kubernetes-example-application","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimgunduz34%2Fkubernetes-example-application","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimgunduz34%2Fkubernetes-example-application/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimgunduz34%2Fkubernetes-example-application/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimgunduz34%2Fkubernetes-example-application/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibrahimgunduz34","download_url":"https://codeload.github.com/ibrahimgunduz34/kubernetes-example-application/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670506,"owners_count":21142897,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["example","java","kubernetes","realworld"],"created_at":"2024-10-14T18:23:59.082Z","updated_at":"2025-04-13T05:39:08.917Z","avatar_url":"https://github.com/ibrahimgunduz34.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Collector\n\nIt allows to collect and download the images from multiple image gallery. Right now, it supports only Flickr.\nThe application runs in different modes as `collector` and `downloader`\n\n## Prerequisites:\n* Minikube\n* Kubernetes console tool (kubectl)\n* Docker\n* VirtualBox, KVM2 or other hypervisors supported by minikube if you need it. \n\n## How To Build The Project\n\n```\n$ docker build -t image-collector:latest -f infra/docker/Dockerfile .\n```\n\n## How To Run The Project as Collector\n```\ndocker run -it \\\n -e SPRING_PROFILES_ACTIVE=\"collector\" \\\n -e SPRING_RABBITMQ_HOST=\u003crabbitmq host\u003e \\\n image-collector:latest\n```\n\n## How To Run The Project as Downloader\n```\ndocker run -it \\\n -e SPRING_PROFILES_ACTIVE=\"downloader\" \\\n -e SPRING_RABBITMQ_HOST=\u003crabbitmq host\u003e \\\n -e DOWNLOAD_PATH=/path/to/download \\\n image-collector:latest\n```\n\n## Environment Variables:\n**SPRING_PROFILES_ACTIVE**: (required)  It can take one of`collector` or `downloader` values. \u003cbr /\u003e\n**SPRING_RABBITMQ_HOST** (default: localhost) Rabbitmq host machine \u003cbr /\u003e\n**SPRING_RABBITMQ_USER** (default: guest) Rabbitmq user  \u003cbr /\u003e\n**SPRING_RABBITMQ_PASSWORD** (default: guest) Rabbitmq password  \u003cbr /\u003e\n**DOWNLOAD_PATH** (default: application root)  path to download the images \u003cbr /\u003e\n\n## How To Create A Rabbitmq Instance for Test Purpose\n\n```$xslt\ndocker run -d \\\n--name=rabbitmq \\\n-p5672:5672 \\\n-p15672:15672 \\\n--hostname=rabbitmq \\\n-e RABBITMQ_ERLANG_COOKIE=\"rabbitmq\" \\\nrabbitmq:3.8.0-management\n```\n\n## How To Run The Application By Using The Test RabbitMQ Instance\n```\ndocker run \\\n-it \\\n--network=host \\\n-e SPRING_RABBITMQ_HOST=localhost \\\n ... (Other environment variables that depend on the profile.) \\\nimage-collector:latest\n```\n\n## How To Deploy The Project To Local Kubernetes Cluster\n* Start minikube locally.\n* Compile the application and build the docker image by the build script `infra/scripts/build_dev`. Before run the command, please uncomment the line 3. in the script, if you're using minikube with VM(s).\n\n```\n$ infra/scripts/build_dev\n```\n\n* Deploy the docker image to the local Kubernetes cluster by running the following command:\n ```\n$ kubernetes apply -f infra/kub-config\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibrahimgunduz34%2Fkubernetes-example-application","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibrahimgunduz34%2Fkubernetes-example-application","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibrahimgunduz34%2Fkubernetes-example-application/lists"}