{"id":27313013,"url":"https://github.com/zainabdnaya/ft_service_42","last_synced_at":"2026-04-29T12:32:20.382Z","repository":{"id":197607242,"uuid":"350008431","full_name":"zainabdnaya/ft_service_42","owner":"zainabdnaya","description":"This is a System Administration and Networking project.","archived":false,"fork":false,"pushed_at":"2021-03-31T20:13:25.000Z","size":227,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-04T12:53:24.369Z","etag":null,"topics":["containers","docker","grafana","k8s","kubernetes","minikube","nginx","phpmyadmin","virtual-machine","yaml-configuration"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","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/zainabdnaya.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,"governance":null}},"created_at":"2021-03-21T13:34:51.000Z","updated_at":"2022-05-17T18:07:24.000Z","dependencies_parsed_at":"2023-10-01T18:19:35.716Z","dependency_job_id":null,"html_url":"https://github.com/zainabdnaya/ft_service_42","commit_stats":null,"previous_names":["zainabdnaya/ft_service_42"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zainabdnaya/ft_service_42","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainabdnaya%2Fft_service_42","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainabdnaya%2Fft_service_42/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainabdnaya%2Fft_service_42/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainabdnaya%2Fft_service_42/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zainabdnaya","download_url":"https://codeload.github.com/zainabdnaya/ft_service_42/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zainabdnaya%2Fft_service_42/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32426571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T12:24:25.982Z","status":"ssl_error","status_checked_at":"2026-04-29T12:24:24.439Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["containers","docker","grafana","k8s","kubernetes","minikube","nginx","phpmyadmin","virtual-machine","yaml-configuration"],"created_at":"2025-04-12T06:50:27.841Z","updated_at":"2026-04-29T12:32:20.342Z","avatar_url":"https://github.com/zainabdnaya.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ft_service\n## This is a System Administration and Networking project.\n\n ## sneak peek :monocle_face:\n  \u003e Kebernetes + load balancer + dockerfile +Nginx + worldpress + phpMyadmin + FTPS + Minikube\n\n ## what is kubernetes ?! :thinking:\n→Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications. groups containers that make up an application into logical units for easy management and discovery.\n\u003cbr\u003e\nWhy we use Kubernetes : \n\u003cbr\u003e\n- Manage hundreds of containers.\n- Increased usage of containers.\n- High Availability \"always running\"\n- Scalability \"high performance\" + faster\n- Backup and restore.\n \u003cbr\u003e\n→In Kubernetes, you have:\n \u003cbr\u003e\n- Pod Smallest Unit in K8s, it creates a running env A pod is a running instance of a deployment, you can run a shell into it. It has its own IP       and its own memory space, Pods connect with each other using services.\n \u003cbr\u003e\n  - Services an object that links a deployment externally or to other containers. For example, a deployment that will link the IP 192.168.0.1 to the 10 Apache servers and pick the one that has the least workload.\n\u003cbr\u003e\n- Volumes it attaches physical storage in ur hard drive that storage can be in a local machine or remote storage  outside k8s\nif u want to take ur local application and release it to ur Users yo use a Web Server,\n\u003cbr\u003e\n- Deployment is an object in Kubernetes that helps you to manage a group of identical pods. without a deployment, you’d got to produce, update, and delete a bunch of pods manually.\n\n\u003ca href=\"https://ibb.co/QF0PGPN\"\u003e\u003cimg src=\"https://i.ibb.co/PZkc8ch/Screen-Shot-2021-03-25-at-11-18-50-AM.png\" alt=\"Screen-Shot-2021-03-25-at-11-18-50-AM\" border=\"0\"\u003e\u003c/a\u003e\n## what is Minikub ?! :thought_balloon:\nMinikube it'as one Node Cluster, whew the Master processes and Work processes work on the same Node (One Machine), like (Mini-Cluster). \u003cbr\u003e\n- It will create avirtual BOX on ur laptop.\n- Node Run in that  virtual Box \u003cbr\u003e\n-\u003e :running_woman: To Run  or to config that mini-cluster , You gonna need Kublet or what we call as a Comand line \"Kubctl\".\n\u003cbr\u003e\n- The Kubelet is the star :star2:\t of the show on every node. It’s the main Kubernetes agent, and it runs on every node in the cluster. In fact, it’s common to use the terms node and kubelet interchang eably,When you join a new node to a cluster, the process installs kubelet onto the node. The kubelet is then responsible for registering the node with the cluster.\n\u003cbr\u003e\n - Kube-proxy :The last piece of the node puzzle is the kube-proxy. This runs on every node in the cluster and is responsible for local cluster networking. For example, it  makes sure each node gets its own unique IP address, and implements local IPTABLES or IPVS rules to handle routing and load-balancing of traffic on the Pod network.\n \u003cbr\u003e\n  :nerd_face: For Better Understanding + instaling minikube + use kubctl : https://www.youtube.com/watch?v=X48VuDVv0do\n \n ## what's Load Blancer  :libra: \n - Load balancing is the process of efficiently distributing network traffic among multiple backend services, and is a critical strategy for maximizing scalability and availability.\n\n ## what's MetalB :question:\n - MetalLB is a great load balancer for a home Kubernetes cluster. It allows you to assign real IPs from your home network to services running in your cluster and access them from other hosts on your home network.\n## What is Grafana \u0026 What Is It Used For?\nGrafana is an open source solution for running data analytics, pulling up metrics that make sense of the massive amount of data \u0026 to monitor our apps with the help of cool customizable dashboards.\nGrafana connects with every possible data source, commonly referred to as databases such as Graphite (Graphite, again, is a monitoring tool), Prometheus, Influx DB (InfluxDB is a time series database designed to handle high write and query loads.), ElasticSearch, MySQL, PostgreSQL etc.\n\n\u003ca href=\"https://ibb.co/nzFZPjb\"\u003e\u003cimg src=\"https://i.ibb.co/qkvXJpd/Screen-Shot-2021-03-25-at-2-44-11-PM.png\" alt=\"Screen-Shot-2021-03-25-at-2-44-11-PM\" border=\"0\"\u003e\u003c/a\u003e\n\n ## what's Telegraf :mailbox_with_mail:\n\nTelegraf is an agent for collecting, processing, aggregating, and writing metrics. :electric_plug:\t\nDesign goals are to have a minimal memory footprint with a plugin system so that developers in the community can easily add support for collecting metrics.\nCollect and send all kinds of data:\n\u003cbr\u003e\nDatabase: Connect to datasources like MongoDB, MySQL, Redis, and others to collect and send metrics.\nSystems: Collect metrics from your modern stack of cloud platforms, containers, and orchestrators.\nIoT sensors: Collect critical stateful data (pressure levels, temp levels, etc.) from IoT sensors and devices.\n\n\n## Ressources\n\n***Docker***\n \n     -https://www.freecodecamp.org/news/how-to-remove-images-in-docker/#:~:text=To%20remove%20the%20image%2C%20you,your%2Dimage%2Did%3E%20.\n     -https://docs.docker.com/engine/reference/commandline/build/#:~:text=The%20docker%20build%20command%20builds,a%20file%20in%20the%20context.\n     -https://www.scalyr.com/blog/create-docker-image\n   \n  \u003cbr\u003e\n  \n***Nginx***\n\n     -https://wiki.alpinelinux.org/wiki/Nginx#Configuration\n     -https://forhjy.medium.com/42-ft-services-install-nginx-with-kubernetes-fd22a5fcb062\n        \n***SSL***\n\n     -https://codingwithmanny.medium.com/configure-self-signed-ssl-for-nginx-docker-from-a-scratch-7c2bcd5478c6\n      \n***Minikube*** \n\n    -https://sensu.io/blog/minikube-tutorial#:~:text=Minikube%20is%20a%20utility%20you,installation%20of%20full%2Dblown%20K8s\n    -https://upcloud.com/community/tutorials/deploy-kubernetes-dashboard\n\n**Kubernetes**\n\n     -https://www.youtube.com/watch?v=X48VuDVv0do\n     In French ==\u003ehttps://devopssec.fr/article/cours-complet-apprendre-orchestrateur-kubernetes-k8s\n   \n**MySql**\n\n     -https://docs.oracle.com/en/java/java-components/advanced-management-console/2.20/install-guide/mysql-database-installation-and-configuration-advanced-management-console.html#GUID-2B24F7E4-A00C-463F-8666-10D3D1097061\n\n\n**To test:**\n\n     -RUN : ./setup.sh","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzainabdnaya%2Fft_service_42","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzainabdnaya%2Fft_service_42","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzainabdnaya%2Fft_service_42/lists"}