Automatically expose services

This commit is contained in:
Robert Schäfer 2018-11-02 14:48:29 +01:00
parent 5e47b5fb99
commit c37d58a9c3
5 changed files with 83 additions and 51 deletions

View File

@ -4,6 +4,10 @@ First of all start minikube on your machine:
```sh ```sh
minikube start minikube start
``` ```
You can always get an overview and see what's going on with your minikube:
```sh
minikube dashboard
```
Build Docker images, using the Minikube Docker daemon: Build Docker images, using the Minikube Docker daemon:
```sh ```sh
@ -21,22 +25,13 @@ Now change into directory kubernetes and create services and deployments:
```sh ```sh
cd kubernetes cd kubernetes
kubectl create -f neo4j-deployment.yaml,neo4j-data-persistentvolumeclaim.yaml,backend-deployment.yaml,backend-service.yaml,neo4j-service.yaml kubectl create -f neo4j-deployment.yaml,neo4j-data-persistentvolumeclaim.yaml,backend-deployment.yaml,neo4j-service.json,backend-service.json
# expose the backend deployment
kubectl expose deployment backend --type=LoadBalancer
# opionally expose the neo4j deployment
kubectl expose deployment neo4j --type=LoadBalancer
``` ```
You can see the backend in action with: You can see the backend in action with:
```sh ```sh
minikube service backend minikube service backend
``` ```
Get an overview with your minikube dashboard:
```sh
minikube dashboard
```

View File

@ -0,0 +1,35 @@
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "backend",
"namespace": "default",
"selfLink": "/api/v1/namespaces/default/services/backend",
"uid": "57749bc1-dea3-11e8-ace2-080027b5d96d",
"resourceVersion": "8321",
"creationTimestamp": "2018-11-02T13:29:36Z",
"labels": {
"io.kompose.service": "backend"
}
},
"spec": {
"ports": [
{
"protocol": "TCP",
"port": 4000,
"targetPort": 4000,
"nodePort": 32633
}
],
"selector": {
"io.kompose.service": "backend"
},
"clusterIP": "10.110.129.92",
"type": "LoadBalancer",
"sessionAffinity": "None",
"externalTrafficPolicy": "Cluster"
},
"status": {
"loadBalancer": {}
}
}

View File

@ -1,19 +0,0 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -f ../docker-compose.yml
kompose.version: 1.16.0 (0c01309)
creationTimestamp: null
labels:
io.kompose.service: backend
name: backend
spec:
ports:
- name: "4000"
port: 4000
targetPort: 4000
selector:
io.kompose.service: backend
status:
loadBalancer: {}

View File

@ -0,0 +1,43 @@
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "neo4j",
"namespace": "default",
"selfLink": "/api/v1/namespaces/default/services/neo4j",
"uid": "57de6181-dea3-11e8-ace2-080027b5d96d",
"resourceVersion": "8326",
"creationTimestamp": "2018-11-02T13:29:37Z",
"labels": {
"io.kompose.service": "neo4j"
}
},
"spec": {
"ports": [
{
"name": "port-1",
"protocol": "TCP",
"port": 7687,
"targetPort": 7687,
"nodePort": 30116
},
{
"name": "port-2",
"protocol": "TCP",
"port": 7474,
"targetPort": 7474,
"nodePort": 32658
}
],
"selector": {
"io.kompose.service": "neo4j"
},
"clusterIP": "10.108.175.122",
"type": "LoadBalancer",
"sessionAffinity": "None",
"externalTrafficPolicy": "Cluster"
},
"status": {
"loadBalancer": {}
}
}

View File

@ -1,22 +0,0 @@
apiVersion: v1
kind: Service
metadata:
annotations:
kompose.cmd: kompose convert -f ../docker-compose.yml
kompose.version: 1.16.0 (0c01309)
creationTimestamp: null
labels:
io.kompose.service: neo4j
name: neo4j
spec:
ports:
- name: "7687"
port: 7687
targetPort: 7687
- name: "7474"
port: 7474
targetPort: 7474
selector:
io.kompose.service: neo4j
status:
loadBalancer: {}