{
"id": "example1",
"kind": "Template",
"apiVersion": "v1beta1",
"name": "My awesome PHP app",
"description": "Example PHP application with PostgreSQL database",
"parameters": [
{
"name": "DB_PASSWORD",
"description": "PostgreSQL admin user password",
"type": "string",
"expression": "[a-zA-Z0-9]{8}"
},
{
"name": "DB_USER",
"description": "PostgreSQL username",
"type": "string",
"expression": "admin[a-zA-Z0-9]{4}"
},
{
"name": "DB_NAME",
"description": "PostgreSQL database name",
"type": "string",
"value": "mydb"
}
],
"items": [
{
"kind": "Service",
"id": "frontend",
"apiVersion": "v1beta1",
"port": 8080,
"containerPort": 9292,
"selector": {
"name": "frontend"
}
},
{
"kind": "Service",
"id": "database",
"apiVersion": "v1beta1",
"port": 5432,
"containerPort": 5432,
"selector": {
"name": "database"
}
},
{
"kind": "ReplicationController",
"id": "frontendController",
"apiVersion": "v1beta1",
"desiredState": {
"replicas": 2,
"replicaSelector": {
"name": "frontend"
},
"podTemplate": {
"desiredState": {
"manifest": {
"id": "frontendController",
"version": "v1beta1",
"containers": [
{
"name": "nginx-php-app",
"image": "mfojtik/nginx-php-app",
"env": [
{
"name": "PGPASSWORD",
"value": "${DB_PASSWORD}"
},
{
"name": "PGUSER",
"value": "${DB_USER}"
},
{
"name": "PGDATABASE",
"value": "${DB_NAME}"
}
],
"ports": [
{
"containerPort": 9292,
"hostPort": 8080
}
]
}
]
}
},
"labels": {
"name": "frontend"
}
}
},
"labels": {
"name": "frontend"
}
},
{
"kind": "Pod",
"id": "postgresql",
"apiVersion": "v1beta1",
"desiredState": {
"manifest": {
"version": "v1beta1",
"id": "database",
"containers": [
{
"name": "postgresql",
"image": "postgres",
"env": [
{
"name": "PGPASSWORD",
"value": "${DB_PASSWORD}"
},
{
"name": "PGUSER",
"value": "${DB_USER}"
},
{
"name": "PGDATABASE",
"value": "${DB_NAME}"
}
],
"ports": [
{
"containerPort": 5432,
"hostPort": 5432
}
]
}
]
}
},
"labels": {
"name": "database"
}
}
]
}