Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/abderrsfa/ft_services
Builds custom docker images, and uses them to deploy and expose a Kubernetes cluster. The cluster has 7 different services: Nginx, WordPress, phpMyAdmin, MySQL, Grafana, InfluxDB, and an FTPS server.
https://github.com/abderrsfa/ft_services
1337 42born2code docker ftps grafana influxdb kubernetes metallb nginx phpmyadmin telegraf wordpress
Last synced: about 11 hours ago
JSON representation
Builds custom docker images, and uses them to deploy and expose a Kubernetes cluster. The cluster has 7 different services: Nginx, WordPress, phpMyAdmin, MySQL, Grafana, InfluxDB, and an FTPS server.
- Host: GitHub
- URL: https://github.com/abderrsfa/ft_services
- Owner: AbderrSfa
- License: apache-2.0
- Created: 2021-03-03T15:49:46.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-08-09T16:47:08.000Z (about 3 years ago)
- Last Synced: 2023-03-02T13:23:06.702Z (over 1 year ago)
- Topics: 1337, 42born2code, docker, ftps, grafana, influxdb, kubernetes, metallb, nginx, phpmyadmin, telegraf, wordpress
- Language: PHP
- Homepage:
- Size: 518 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# π‘ ft_services
## π§ Description
ft_services is a system administration project meant to introduce the workings of Kubernetes. The goal is to create a K8s cluster to run an infrastructure of seven different services. Before running the script that sets everything up, you need to have a hypervisor (VirtualBox, HyperKit...), kubectl, and minikube installed on your machine.## π§ Usage
To deploy and expose the whole infrastrucre, simply run:`sh setup`
Or alternatively:
`./setup`
PS: If you use the second method, you might need to change the permissions of the file. Use `chmod` to do that.
Running the script will deploy a MySQL/WordPress/phpMyAdmin stack, all behind an Nginx instance to redirect traffic to the appropriate service. Additionally, an FTPS server is setup. All services are monitored by telegraf and a Grafana/InfluxDB stack.
All services are accessible on the IP 192.168.99.149 at different ports:
```
Nginx on ports 80 (HTTP) and 443 (HTTPS)Wordpress on port 5050
PHPMyAdmin on port 5000
Grafana on port 3000
FTPS on ports 20, 21. And 30000 (passive mode)
```
## π Screenshots:
### Infrastructure diagram:
![Screenshot 2021-05-28 201606](https://user-images.githubusercontent.com/58333462/120032466-22b1ca80-bff2-11eb-9d1c-c6f638b007a4.png)### Kubernetes dashboard:
### Grafana dashboards:
![do-any-grafana-dashboard-designs](https://user-images.githubusercontent.com/58333462/120032550-41b05c80-bff2-11eb-9e37-faf3bcf2e764.jpg)