Browse Source

Add Kubernetes config and some small fixes.

master
Ray Burgemeestre 6 years ago
parent
commit
df65f631d9
7 changed files with 104 additions and 3 deletions
  1. +0
    -1
      docker_api/build.sh
  2. +1
    -0
      docker_api/publish.sh
  3. +0
    -1
      docker_web/build.sh
  4. +2
    -0
      docker_web/publish.sh
  5. +73
    -0
      kube/cheerpweb.yaml
  6. +26
    -0
      kube/ingress.yaml
  7. +2
    -1
      src/App.vue

+ 0
- 1
docker_api/build.sh View File

@@ -1,3 +1,2 @@
docker build -t cheerp:latest .
docker login
docker tag cheerp:latest rayburgemeestre/cheerp:latest

+ 1
- 0
docker_api/publish.sh View File

@@ -1 +1,2 @@
docker login
docker push rayburgemeestre/cheerp:latest

+ 0
- 1
docker_web/build.sh View File

@@ -1,3 +1,2 @@
docker build -t cheerpweb:latest .
docker login
docker tag cheerpweb:latest rayburgemeestre/cheerpweb:latest

+ 2
- 0
docker_web/publish.sh View File

@@ -0,0 +1,2 @@
docker login
docker push rayburgemeestre/cheerpweb:latest

+ 73
- 0
kube/cheerpweb.yaml View File

@@ -0,0 +1,73 @@
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: cheerpweb
spec:
replicas: 1
revisionHistoryLimit: 2
template:
metadata:
labels:
app: cheerpwebapp
tier: cheerpweb
spec:
containers:
- name: cheerpwebcontainer
image: rayburgemeestre/cheerpweb:latest
imagePullPolicy: Always
ports:
- containerPort: 80
name: http
---
apiVersion: v1
kind: Service
metadata:
name: cheerpweb
labels:
app: cheerpwebapp
tier: cheerpweb
spec:
type: NodePort
ports:
- port: 80
name: http
selector:
app: cheerpwebapp
tier: cheerpweb
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: cheerpapi
spec:
replicas: 2
revisionHistoryLimit: 2
template:
metadata:
labels:
app: cheerpapiapp
tier: cheerpapi
spec:
containers:
- name: cheerpapicontainer
image: rayburgemeestre/cheerp:latest
imagePullPolicy: Always
ports:
- containerPort: 5000
name: http
---
apiVersion: v1
kind: Service
metadata:
name: cheerpapi
labels:
app: cheerpapiapp
tier: cheerpapi
spec:
type: NodePort
ports:
- port: 5000
name: http
selector:
app: cheerpapiapp
tier: cheerpapi

+ 26
- 0
kube/ingress.yaml View File

@@ -0,0 +1,26 @@
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: cheerpweb
annotations:
# enable kube-lego for this ingress
kubernetes.io/tls-acme: "true"
spec:
# this enables tls for the specified domain names
tls:
- hosts:
- cheerp.cppse.nl
secretName: webserver-tls
rules:
- host: cheerp.cppse.nl
http:
paths:
- path: /api
backend:
serviceName: cheerpapi
servicePort: 5000
- path: /
backend:
serviceName: cheerpweb
servicePort: 80

+ 2
- 1
src/App.vue View File

@@ -245,7 +245,8 @@ __Z7webMainv();`.trim();
// iframe ready, set flag?
},
compile() {
axios.post('//localhost:5000/compile', {
// axios.post('//localhost:5000/compile', {
axios.post('//cheerp.cppse.nl/api/compile', {
flags: '',
source: this.cpp_code
})

Loading…
Cancel
Save