diff --git a/mwa-haproxy-frontend-atomicapp/Dockerfile b/mwa-haproxy-frontend-atomicapp/Dockerfile new file mode 100644 index 0000000..d4a4aaf --- /dev/null +++ b/mwa-haproxy-frontend-atomicapp/Dockerfile @@ -0,0 +1,11 @@ +FROM projectatomic/atomicapp:0.1.12 + +MAINTAINER Jan Kaluza + +LABEL io.projectatomic.nulecule.specversion 0.0.2 + +LABEL Build docker build --rm --tag testing/haproxy-frontend-atomicapp . + + +ADD Nulecule /application-entity/ +ADD artifacts/ /application-entity/artifacts/ diff --git a/mwa-haproxy-frontend-atomicapp/Nulecule b/mwa-haproxy-frontend-atomicapp/Nulecule new file mode 100644 index 0000000..13bdf0f --- /dev/null +++ b/mwa-haproxy-frontend-atomicapp/Nulecule @@ -0,0 +1,36 @@ +--- +specversion: 0.0.2 +id: haproxy-frontend-atomicapp +metadata: + name: mwa-haproxy-frontend + appversion: 0.0.1 + description: > + This is a nulecule that will get you the container with micro-webapps + haproxy-frontend. +graph: + - name: mwa-haproxy-frontend + params: + - name: publicip + description: The IP address or addresses at which haproxy can be reached + - name: kubernetes_client_certificate + description: > + Client certificate to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no certificate + is needed. + default: None + - name: kubernetes_client_key + description: > + Client key to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no key + is needed. + default: None + - name: kubernetes_namespace + description: Kubernetes namespace used to query the Kubernestes API. + default: default + artifacts: + kubernetes: + - file://artifacts/kubernetes/mwa-haproxy-frontend-pod.yaml + - file://artifacts/kubernetes/mwa-haproxy-frontend-service.json + openshift: + - inherit: + - kubernetes diff --git a/mwa-haproxy-frontend-atomicapp/README.md b/mwa-haproxy-frontend-atomicapp/README.md new file mode 100644 index 0000000..0341c2c --- /dev/null +++ b/mwa-haproxy-frontend-atomicapp/README.md @@ -0,0 +1,33 @@ +## What is micro-webapps? +The goal of the [micro-webapps](https://github.com/micro-webapps/micro-webapps) project is to allow simple deployment of web applications in the cloud (multi container) environment. Admin is able to choose the frontend which will serve the web applications and then install the web applications as separate containers. For each web application, he is able to configure the URI on which the web application will be served. + +It is therefore possible to setup webserver with, for example, following structure: + +- `http://domain.tld/` running static content. +- `http://domain.tld/blog` running wordpress in separate container. +- `http://bugs.domain.tld` running Bugzilla in separate container. +- `http://another-domain.tld` running completely different domain. + +It also allows more advanced features like load-balancing. For more information, check the [micro-webapps home page](https://github.com/micro-webapps/micro-webapps). + +## What is haproxy-frontend-atomicapp? +This Docker image contains Atomic App running HAProxy as frontend for other web applications in the cloud. It is intended to be used with Kubernetes or Openshift. It fetches the list of deployed micro-webapps from the Kubernetes or Openshift API server and sets up the reverse proxy for the web applications. + +## How to use haproxy-frontend-atomicapp? + +Using [Atomic App](https://github.com/projectatomic/atomicapp) is the preferred how to deploy micro-webapps Docker images, but it is also possible to deploy it without the Atomic App as described in the description of microwebapps/haproxy-frontend Docker image. + +To deploy the haproxy-frontend-atomicapp using the Atomic App, all you have to do is running following command: + +``` +# atomicapp run microwebapps/haproxy-frontend-atomicapp +``` + + +This downloads all the Docker images needed by the haproxy-frontend and deploys it. It will also ask for the configuration variables with their description. + +You should now be able to use curl or wget to check that haproxy-frontend is responding on the $publicip or on the IP address showed in `kubectl get service` or `osc get service` output. + +## Deploying micro-webapps web application + +When haproxy-frontend is running, you can start deploying micro-webapps web applications. Check the [micro-webapps](https://hub.docker.com/u/microwebapps/dashboard/) Docker registry for list of supported web applications. \ No newline at end of file diff --git a/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-pod.yaml b/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-pod.yaml new file mode 100644 index 0000000..b83327b --- /dev/null +++ b/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-pod.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Pod +metadata: + name: haproxy-frontend + labels: + app: haproxy-frontend +spec: + containers: + - name: haproxy-frontend + image: microwebapps/haproxy-frontend + ports: + - containerPort: 80 + env: + - name: KUBERNETES_CLIENT_CERTIFICATE_DATA + value: $kubernetes_client_certificate + - name: KUBERNETES_CLIENT_KEY_DATA + value: $kubernetes_client_key + - name: KUBERNETES_NAMESPACE + value: $kubernetes_namespace diff --git a/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-service.json b/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-service.json new file mode 100644 index 0000000..3e15669 --- /dev/null +++ b/mwa-haproxy-frontend-atomicapp/artifacts/kubernetes/mwa-haproxy-frontend-service.json @@ -0,0 +1,27 @@ +{ + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "haproxy-frontend-service" + }, + "spec": { + "selector": { + "app": "haproxy-frontend" + }, + "publicIPs": ["$publicip"], + "ports": [ + { + "name": "http-port", + "protocol": "TCP", + "port": 80, + "targetPort": 80 + }, + { + "name": "https-port", + "protocol": "TCP", + "port": 443, + "targetPort": 443 + } + ] + } +} diff --git a/mwa-httpd-frontend-atomicapp/Dockerfile b/mwa-httpd-frontend-atomicapp/Dockerfile new file mode 100644 index 0000000..706388d --- /dev/null +++ b/mwa-httpd-frontend-atomicapp/Dockerfile @@ -0,0 +1,10 @@ +FROM projectatomic/atomicapp:0.1.12 + +MAINTAINER Jan Kaluza + +LABEL io.projectatomic.nulecule.specversion="0.0.2" \ + io.projectatomic.nulecule.providers="kubernetes, openshift" \ + Build="docker build --rm --tag test/httpd-frontend-atomicapp ." + +ADD /Nulecule /Dockerfile /application-entity/ +ADD /artifacts /application-entity/artifacts diff --git a/mwa-httpd-frontend-atomicapp/Nulecule b/mwa-httpd-frontend-atomicapp/Nulecule new file mode 100644 index 0000000..ebd185d --- /dev/null +++ b/mwa-httpd-frontend-atomicapp/Nulecule @@ -0,0 +1,36 @@ +--- +specversion: 0.0.2 +id: httpd-frontend-atomicapp +metadata: + name: mwa-httpd-frontend + appversion: 0.0.1 + description: > + This is a nulecule that will get you the container with micro-webapps + httpd-frontend. +graph: + - name: mwa-httpd-frontend + params: + - name: publicip + description: The IP address or addresses at which httpd can be reached + - name: kubernetes_client_certificate + description: > + Client certificate to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no certificate + is needed. + default: None + - name: kubernetes_client_key + description: > + Client key to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no key + is needed. + default: None + - name: kubernetes_namespace + description: Kubernetes namespace used to query the Kubernestes API. + default: default + artifacts: + kubernetes: + - file://artifacts/kubernetes/mwa-httpd-frontend-pod.yaml + - file://artifacts/kubernetes/mwa-httpd-frontend-service.json + openshift: + - inherit: + - kubernetes diff --git a/mwa-httpd-frontend-atomicapp/README.md b/mwa-httpd-frontend-atomicapp/README.md new file mode 100644 index 0000000..532e170 --- /dev/null +++ b/mwa-httpd-frontend-atomicapp/README.md @@ -0,0 +1,33 @@ +## What is micro-webapps? +The goal of the [micro-webapps](https://github.com/micro-webapps/micro-webapps) project is to allow simple deployment of web applications in the cloud (multi container) environment. Admin is able to choose the frontend which will serve the web applications and then install the web applications as separate containers. For each web application, he is able to configure the URI on which the web application will be served. + +It is therefore possible to setup webserver with, for example, following structure: + +- `http://domain.tld/` running static content. +- `http://domain.tld/blog` running wordpress in separate container. +- `http://bugs.domain.tld` running Bugzilla in separate container. +- `http://another-domain.tld` running completely different domain. + +It also allows more advanced features like load-balancing. For more information, check the [micro-webapps home page](https://github.com/micro-webapps/micro-webapps). + +## What is httpd-frontend-atomicapp? +This Docker image contains Atomic App running HAProxy as frontend for other web applications in the cloud. It is intended to be used with Kubernetes or Openshift. It fetches the list of deployed micro-webapps from the Kubernetes or Openshift API server and sets up the reverse proxy for the web applications. + +## How to use httpd-frontend-atomicapp? + +Using [Atomic App](https://github.com/projectatomic/atomicapp) is the preferred how to deploy micro-webapps Docker images, but it is also possible to deploy it without the Atomic App as described in the description of microwebapps/httpd-frontend Docker image. + +To deploy the httpd-frontend-atomicapp using the Atomic App, all you have to do is running following command: + +``` +# atomicapp run microwebapps/httpd-frontend-atomicapp +``` + + +This downloads all the Docker images needed by the httpd-frontend and deploys it. It will also ask for the configuration variables with their description. + +You should now be able to use curl or wget to check that httpd-frontend is responding on the $publicip or on the IP address showed in `kubectl get service` or `osc get service` output. + +## Deploying micro-webapps web application + +When httpd-frontend is running, you can start deploying micro-webapps web applications. Check the [micro-webapps](https://hub.docker.com/u/microwebapps/dashboard/) Docker registry for list of supported web applications. \ No newline at end of file diff --git a/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-pod.yaml b/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-pod.yaml new file mode 100644 index 0000000..4676593 --- /dev/null +++ b/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-pod.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Pod +metadata: + name: httpd-frontend + labels: + app: httpd-frontend +spec: + containers: + - name: httpd-frontend + image: microwebapps/httpd-frontend + ports: + - containerPort: 80 + env: + - name: KUBERNETES_CLIENT_CERTIFICATE_DATA + value: $kubernetes_client_certificate + - name: KUBERNETES_CLIENT_KEY_DATA + value: $kubernetes_client_key + - name: KUBERNETES_NAMESPACE + value: $kubernetes_namespace diff --git a/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-service.json b/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-service.json new file mode 100644 index 0000000..ebfbbae --- /dev/null +++ b/mwa-httpd-frontend-atomicapp/artifacts/kubernetes/mwa-httpd-frontend-service.json @@ -0,0 +1,27 @@ +{ + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "httpd-frontend-service" + }, + "spec": { + "selector": { + "app": "httpd-frontend" + }, + "publicIPs": ["$publicip"], + "ports": [ + { + "name": "http-port", + "protocol": "TCP", + "port": 80, + "targetPort": 80 + }, + { + "name": "https-port", + "protocol": "TCP", + "port": 443, + "targetPort": 443 + } + ] + } +} diff --git a/mwa-nginx-frontend-atomicapp/Dockerfile b/mwa-nginx-frontend-atomicapp/Dockerfile new file mode 100644 index 0000000..e4576f0 --- /dev/null +++ b/mwa-nginx-frontend-atomicapp/Dockerfile @@ -0,0 +1,11 @@ +FROM projectatomic/atomicapp:0.1.12 + +MAINTAINER Jan Kaluza + +LABEL io.projectatomic.nulecule.specversion 0.0.2 + +LABEL Build docker build --rm --tag testing/nginx-frontend-atomicapp . + + +ADD Nulecule /application-entity/ +ADD artifacts/ /application-entity/artifacts/ diff --git a/mwa-nginx-frontend-atomicapp/Nulecule b/mwa-nginx-frontend-atomicapp/Nulecule new file mode 100644 index 0000000..d04fbfe --- /dev/null +++ b/mwa-nginx-frontend-atomicapp/Nulecule @@ -0,0 +1,36 @@ +--- +specversion: 0.0.2 +id: nginx-frontend-atomicapp +metadata: + name: mwa-nginx-frontend + appversion: 0.0.1 + description: > + This is a nulecule that will get you the container with micro-webapps + nginx-frontend. +graph: + - name: mwa-nginx-frontend + params: + - name: publicip + description: The IP address or addresses at which nginx can be reached + - name: kubernetes_client_certificate + description: > + Client certificate to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no certificate + is needed. + default: None + - name: kubernetes_client_key + description: > + Client key to access Kubernetes API with new-lines escaped to "\n". + This can be done by sed ':a;N;$!ba;s/\n/\\n/g'. Set to None if no key + is needed. + default: None + - name: kubernetes_namespace + description: Kubernetes namespace used to query the Kubernestes API. + default: default + artifacts: + kubernetes: + - file://artifacts/kubernetes/mwa-nginx-frontend-pod.yaml + - file://artifacts/kubernetes/mwa-nginx-frontend-service.json + openshift: + - inherit: + - kubernetes diff --git a/mwa-nginx-frontend-atomicapp/README.md b/mwa-nginx-frontend-atomicapp/README.md new file mode 100644 index 0000000..7ff27a6 --- /dev/null +++ b/mwa-nginx-frontend-atomicapp/README.md @@ -0,0 +1,33 @@ +## What is micro-webapps? +The goal of the [micro-webapps](https://github.com/micro-webapps/micro-webapps) project is to allow simple deployment of web applications in the cloud (multi container) environment. Admin is able to choose the frontend which will serve the web applications and then install the web applications as separate containers. For each web application, he is able to configure the URI on which the web application will be served. + +It is therefore possible to setup webserver with, for example, following structure: + +- `http://domain.tld/` running static content. +- `http://domain.tld/blog` running wordpress in separate container. +- `http://bugs.domain.tld` running Bugzilla in separate container. +- `http://another-domain.tld` running completely different domain. + +It also allows more advanced features like load-balancing. For more information, check the [micro-webapps home page](https://github.com/micro-webapps/micro-webapps). + +## What is nginx-frontend-atomicapp? +This Docker image contains Atomic App running HAProxy as frontend for other web applications in the cloud. It is intended to be used with Kubernetes or Openshift. It fetches the list of deployed micro-webapps from the Kubernetes or Openshift API server and sets up the reverse proxy for the web applications. + +## How to use nginx-frontend-atomicapp? + +Using [Atomic App](https://github.com/projectatomic/atomicapp) is the preferred how to deploy micro-webapps Docker images, but it is also possible to deploy it without the Atomic App as described in the description of microwebapps/nginx-frontend Docker image. + +To deploy the nginx-frontend-atomicapp using the Atomic App, all you have to do is running following command: + +``` +# atomicapp run microwebapps/nginx-frontend-atomicapp +``` + + +This downloads all the Docker images needed by the nginx-frontend and deploys it. It will also ask for the configuration variables with their description. + +You should now be able to use curl or wget to check that nginx-frontend is responding on the $publicip or on the IP address showed in `kubectl get service` or `osc get service` output. + +## Deploying micro-webapps web application + +When nginx-frontend is running, you can start deploying micro-webapps web applications. Check the [micro-webapps](https://hub.docker.com/u/microwebapps/dashboard/) Docker registry for list of supported web applications. diff --git a/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-pod.yaml b/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-pod.yaml new file mode 100644 index 0000000..5481830 --- /dev/null +++ b/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-pod.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Pod +metadata: + name: nginx-frontend + labels: + app: nginx-frontend +spec: + containers: + - name: nginx-frontend + image: microwebapps/nginx-frontend + ports: + - containerPort: 80 + env: + - name: KUBERNETES_CLIENT_CERTIFICATE_DATA + value: $kubernetes_client_certificate + - name: KUBERNETES_CLIENT_KEY_DATA + value: $kubernetes_client_key + - name: KUBERNETES_NAMESPACE + value: $kubernetes_namespace diff --git a/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-service.json b/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-service.json new file mode 100644 index 0000000..24265f3 --- /dev/null +++ b/mwa-nginx-frontend-atomicapp/artifacts/kubernetes/mwa-nginx-frontend-service.json @@ -0,0 +1,27 @@ +{ + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "nginx-frontend-service" + }, + "spec": { + "selector": { + "app": "nginx-frontend" + }, + "publicIPs": ["$publicip"], + "ports": [ + { + "name": "http-port", + "protocol": "TCP", + "port": 80, + "targetPort": 80 + }, + { + "name": "https-port", + "protocol": "TCP", + "port": 443, + "targetPort": 443 + } + ] + } +} diff --git a/mwa-wordpress-atomicapp/Dockerfile b/mwa-wordpress-atomicapp/Dockerfile new file mode 100644 index 0000000..60c5115 --- /dev/null +++ b/mwa-wordpress-atomicapp/Dockerfile @@ -0,0 +1,11 @@ +FROM projectatomic/atomicapp:0.1.12 + +MAINTAINER Jan Kaluza + +LABEL io.projectatomic.nulecule.specversion 0.0.2 + +LABEL Build docker build --rm --tag testing/webapp-wordpress-atomicapp . + + +ADD Nulecule /application-entity/ +ADD artifacts/ /application-entity/artifacts/ diff --git a/mwa-wordpress-atomicapp/Nulecule b/mwa-wordpress-atomicapp/Nulecule new file mode 100644 index 0000000..b7ce2bf --- /dev/null +++ b/mwa-wordpress-atomicapp/Nulecule @@ -0,0 +1,39 @@ +--- +specversion: 0.0.2 +id: webapp-wordpress-atomicapp +metadata: + name: Wordpress + appversion: 1.1.0 + description: > + This is a nulecule that will get you the container with Wordpress which + is able to run with microbwe-apps frontend. +graph: + - name: aggregated-mariadb-atomicapp + source: docker://projectatomic/mariadb-centos7-atomicapp + - name: webapp-wordpress + params: + - name: mwa_vhost + description: > + Virtual-host where Owncloud should be served. + default: localhost + - name: mwa_alias + description: > + Alias which should be used to serve the Owncloud. + default: /blog + - name: db_user + description: User used to access MySQL database. + default: root + - name: db_password + description: Password used to access MySQL database. + default: MySQLPass + - name: mwa_replicas + description: > + Number of Wordpress replicas. + default: 1 + artifacts: + kubernetes: + - file://artifacts/kubernetes/wordpress-pod.yaml + - file://artifacts/kubernetes/wordpress-service.json + openshift: + - inherit: + - kubernetes diff --git a/mwa-wordpress-atomicapp/README.md b/mwa-wordpress-atomicapp/README.md new file mode 100644 index 0000000..53aad65 --- /dev/null +++ b/mwa-wordpress-atomicapp/README.md @@ -0,0 +1,38 @@ +## What is micro-webapps? +The goal of the micro-webapps project is to allow simple deployment of web applications in the cloud (multi container) environment. Admin is able to choose the frontend which will serve the web applications and then install the web applications as separate containers. For each web application, he is able to configure the URI on which the web application will be served. + +It is therefore possible to setup webserver with, for example, following structure: + +- `http://domain.tld/` running static content. +- `http://domain.tld/blog` running wordpress in separate container. +- `http://bugs.domain.tld` running Bugzilla in separate container. +- `http://another-domain.tld` running completely different domain. + +It also allows more advanced features like load-balancing. For more information, check the [micro-webapps home page](https://github.com/micro-webapps/micro-webapps). + +## What is wordpress-atomicapp? +This Docker image contains [Atomic App](https://github.com/projectatomic/atomicapp) running Wordpress based on the official Wordpres Docker image. + +## How to use wordpress-atomicapp? + +At first, you have to have the micro-webapps frontend deployed on your cloud. There are three possible frontends: + +* [microwebapps/httpd-frontend-atomicapp](https://hub.docker.com/r/microwebapps/httpd-frontend-atomicapp) +* [microwebapps/nginx-frontend-atomicapp](https://hub.docker.com/r/microwebapps/nginx-frontend-atomicapp) +* [microwebapps/haproxy-frontend-atomicapp](https://hub.docker.com/r/microwebapps/haproxy-frontend-atomicapp) + +Please read the documentation on the frontend's Docker page for instructions how to deploy the frontend. + +Once the frontend is deployed in the cluster, you just run following atomicapp command to deploy the Wordpress: + +``` +# atomicapp run microwebapps/wordpress-atomicapp +``` + +This downloads all the Docker images needed by the Wordpress and deploys it. It will also ask for the configuration variables with their description. You can also check the "answers.conf.sample" file generated by the "atomicapp", rename it to "answers.conf" and change some variables if you want. + +You should now be able to use curl, wget or web browser to access the Wordpress on the domain and path you configured. + +## Where to get more informations and documentation? + +The micro-webapps documentation is available on [micro-webapps GitHub page](https://github.com/micro-webapps/micro-webapps/). diff --git a/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-pod.yaml b/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-pod.yaml new file mode 100644 index 0000000..713535b --- /dev/null +++ b/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-pod.yaml @@ -0,0 +1,32 @@ +apiVersion: v1 +kind: ReplicationController +metadata: + name: webapp-wordpress-controller +spec: + replicas: 1 + # selector identifies the set of pods that this + # replication controller is responsible for managing + selector: + app: webapp-wordpress + # template defines the 'cookie cutter' used for creating + # new pods when necessary + template: + metadata: + name: webapp-wordpress + labels: + app: webapp-wordpress + annotations: + webconf-spec: "{\"virtualhost\": \"$mwa_vhost\", \"balancers\": { \"mybalancer\": { \"members\": [{\"url\": \"http://PODIP\"}]} }}" + spec: + containers: + - name: webapp-wordpress + image: microwebapps/wordpress + ports: + - containerPort: 80 + env: + - name: WORDPRESS_DB_PASSWORD + value: $db_password + - name: WORDPRESS_DB_USER + value: $db_user + - name: WORDPRESS_PATH + value: $mwa_alias diff --git a/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-service.json b/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-service.json new file mode 100644 index 0000000..f26bb32 --- /dev/null +++ b/mwa-wordpress-atomicapp/artifacts/kubernetes/wordpress-service.json @@ -0,0 +1,23 @@ +{ + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "webapp-wordpress", + "annotations": { + "webconf-spec": "{\"virtualhost\": \"$mwa_vhost\",\"proxy\": { \"url\": \"balancer://mybalancer$mwa_alias\", \"alias\": \"$mwa_alias\"}, \"balancers\": { \"mybalancer\": { \"method\": \"round-robin\", \"persistence\": { \"method\": \"generate_cookie\", \"cookie_name\": \"JSESSIONID\", \"url_id\": \"jsessionid\"}, \"members\": []} }}" + } + }, + "spec": { + "selector": { + "app": "webapp-wordpress" + }, + "ports": [ + { + "name": "http-port", + "protocol": "TCP", + "port": 80, + "targetPort": 80 + } + ] + } +}