https://github.com/lewiswatson/carshare-kubernetes
Deploy carshare.ninja in minikube
https://github.com/lewiswatson/carshare-kubernetes
helm-charts kubernetes minikube
Last synced: 15 days ago
JSON representation
Deploy carshare.ninja in minikube
- Host: GitHub
- URL: https://github.com/lewiswatson/carshare-kubernetes
- Owner: LewisWatson
- License: apache-2.0
- Created: 2017-04-25T05:31:44.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-05-03T17:36:51.000Z (about 9 years ago)
- Last Synced: 2025-10-30T17:48:27.239Z (9 months ago)
- Topics: helm-charts, kubernetes, minikube
- Homepage: https://carshare.ninja
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# carshare-kubernetes
## Prerequisites
* [minikube] v0.14.0+
* [Kubernetes Helm][helm]
## Start [minikube]
```bash
minikube start
```
## Deploy [Mongo Data Store][mongo]
[carshare-api] uses [mongo] for data persistence.
```bash
kubectl create -f mongo-rc.yaml
kubectl create -f mongo-service.yaml
```
## Deploy [Carshare API][carshare-api]
```bash
kubectl create -f carshare-api-rc.yaml
kubectl create -f carshare-api-service.yaml
```
## Deploy [Carshare Web][carshare-web]
```bash
kubectl create -f carshare-web-rc.yaml
kubectl create -f carshare-web-service.yaml
```
## Configure Ingress
Ingress is not enabled by default in [minikube].
```bash
minikube addons enable ingress
```
Initialise [helm] on the cluster
```bash
helm init
```
Deploy the [NGINX Ingress Helm Chart][nginx-ingress].
```bash
helm install --name my-release stable/nginx-ingress
```
Create Ingress
```bash
kubectl create -f ingress.yaml
```
## Test
You can test the system by adding `carshare.test` to your `/ets/hosts` file.
```bash
echo "$(minikube ip) carshare.test" | sudo tee -a /etc/hosts
```
You should be able to access [carshare-web] by navigating to [carshare.test](http://carshare.test) in a browser.

You should also be able to make a `GET` request on [carshare-api].
```bash
$ curl http://carshare.test/api/v0/carShares
{"errors":[{"status":"403","title":"Forbidden"}]}
```
It should respond with an error 404 forbidden as you will not be authenticated.
[minikube]: https://github.com/kubernetes/minikube
[helm]: https://github.com/kubernetes/helm
[nginx-ingress]: https://github.com/kubernetes/charts/tree/master/stable/nginx-ingress
[carshare-web]: https://github.com/LewisWatson/carshare-web
[carshare-api]: https://github.com/LewisWatson/carshare-back
[mongo]: https://hub.docker.com/_/mongo/