Application Manifest Example

Here you can see several simple examples of widgets and manifests for packaging Hello World application and separate stacks packaged with all required settings

You can use these pieces of code as a basis while preparing your own packaged application.

Hello World Application Manifest

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{
    "jpsType": "install",
    "jpsVersion": "0.2",
    "application": {
        "id": "helloworld",
        "name": "Hello world!",
        "version": "1.0",
        "type": "php",
        "homepage": "https://jelastic.com/",
        "logo": "https://jelastic.com/assets/img/jelastic-logo-middle.png",
        "description": {
            "text": "Hello World"
        },
        "env": {
            "topology": {
                "engine": "php5.3",
                "nodes": [{
                        "extip": false,
                        "count": 1,
                        "cloudlets": 16,
                        "nodeType": "apache2"
                    }
                ],
                "ssl": false,
                "ha": false
            },
            "deployments": [{
                    "archive": "http://app.jelastic.com/xssu/cross/download/RDYYHFNuUQYJBFpPZQ08F0UWCRlUHxdBD0ZlTS4gcQJFFBJUDwIBQmNTTEBI",
                    "name": "Hello World",
                    "context": "ROOT"
                }
            ],
            "configs": []
        },
        "success": {
            "text": "Hello World is successfully installed",
            "email": "Hello World is successfully installed"
        }
    }
}

Simple Examples of Packaged Stack Manifests

MariaDB

MariaDB is a drop-in replacement for MySQL. MariaDB strives to be the logical choice for database professionals looking for a robust, scalable, and reliable SQL server. To accomplish this, Monty Program works to hire the best and brightest developers in the industry, work closely and cooperatively with the larger community of users and developers in the true spirit of Free and open source software, and release software in a manner that balances predictability with reliability.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
	"jpsType": "install",
	"jpsVersion": "0.2",
	"application": {
		"id": "maria",
		"name": "MariaDB",
		"version": "10",
		"type": "php",
		"homepage": "https://mariadb.org/",
		"logo": "https://app.jelastic.com/xssu/cross/download/RDYYHARmBlMPB1gYYAwSPRTE0IWCBNVHBBKDkBtG3p3clQQEEFUDwIBQmNTTEBI/view",
		"description": {
			"text": "<p>MariaDB is a drop-in replacement for MySQL.</p><p>MariaDB strives to be the logical choice for database professionals looking for a robust, scalable, and reliable SQL server. To accomplish this, [Monty Program](http://montyprogram.com) works to hire the best and brightest developers in the industry, work closely and cooperatively with the larger community of users and developers in the true spirit of Free and open source software, and release software in a manner that balances predictability with reliability. </p>"
		},
		"env": {
			"topology": {
				"engine": "php5.3",
				"nodes": [{
						"extip": false,
						"count": 1,
						"cloudlets": 16,
						"nodeType": "mariadb10"
					}
				],
				"ssl": false,
				"ha": false
			}
		},
		"success": {
			"text": "Admin panel URL: <a href="${nodes.mariadb10.url}">${nodes.mariadb10.url}<\/a><br><br>Find out more information about using MariaDB in the platform: <br></a><a href="https://www.virtuozzo.com/application-platform-docs/connection-to-mariadb">Connection to MariaDB</a><br><a href="https://www.virtuozzo.com/application-platform-docs/mariadb-master-slave-replication">Master-Slave Replication</a><br><a href="https://www.virtuozzo.com/application-platform-docs/mariadb-remote-access">Remote Access to MySQL/MariaDB</a><br><a href="https://www.virtuozzo.com/application-platform-docs/dump-import-export-mariadb">Dump import/export to MariaDB</a><br>"
		}
	}
}

MongoDB

MongoDB is an open source, document-oriented database designed with both scalability and developer agility in mind. The goal of MongoDB is to bridge the gap between fast and scalable key-value stores and relational databases with rich functionality.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
	"jpsType": "install",
	"jpsVersion": "0.2",
	"application": {
		"id": "mongo",
		"name": "MongoDB",
		"version": "2.4",
		"type": "java",
		"homepage": "http://www.mongodb.com/",
		"logo": "https://app.jelastic.com/xssu/cross/download/RDYYHAZmDFIOUw5LbQFqREVHWUMBRURKCxtpH34idw4SQxZSDwIBQmNTTEBI/view",
		"description": {
			"text": "MongoDB is an open source, document-oriented database designed with both scalability and developer agility in mind. The goal of MongoDB is to bridge the gap between fast and scalable key-value stores and relational databases with rich functionality."
		},
		"env": {
			"topology": {
				"engine": "java7",
				"nodes": [{
						"extip": false,
						"count": 1,
						"cloudlets": 16,
						"nodeType": "mongodb"
					}
				],
				"ssl": false,
				"ha": false
			}
		},
		"success": {
			"text": "Admin panel URL: <a href="${nodes.mongodb.url}">${nodes.mongodb.url}<\/a><br><br>Find out more information about using MongoDB in the platform: <br></a><a href="https://www.virtuozzo.com/application-platform-docs/connection-to-mongodb">Connection to MongoDB</a><br><a href="https://www.virtuozzo.com/application-platform-docs/connection-to-mongodb-for-php">Connection to MongoDB for PHP applications</a><br><a href="https://jelastic.com/blog/mongodb-auto-clustering/">MongoDB Replica Set</a><br><a href="https://www.virtuozzo.com/application-platform-docs/remote-access-to-mongodb">Remote Access to MongoDB</a><br><a href="https://www.virtuozzo.com/application-platform-docs/dump-import-export-to-mongodb">Dump import/export to MongoDB</a><br>"
		}
	}
}

TomEE+

TomEE combines the simplicity of Tomcat with the power of Java EE. This long awaited solution helps development and operations teams solve the need to deliver high performance products to gain a competitive edge without introducing complex technology.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
	"jpsType": "install",
	"jpsVersion": "0.2",
	"application": {
		"id": "tomee",
		"name": "TomEE+",
		"version": "1.5",
		"type": "java",
		"homepage": "http://tomee.apache.org/",
		"logo": "https://app.jelastic.com/xssu/cross/download/RDYYHA40B1AJBltJMFA%2BQ0NHDkUCHxIRWBQ%2BS312JlVDQBVUDwIBQmNTTEBI/view",
		"description": {
			"text": "Apache TomEE, pronounced \"Tommy\", is an all-Apache Java EE 6 Web Profile certified stack where Tomcat is top dog. Apache TomEE is assembled from a vanilla Apache Tomcat zip file. We start with Tomcat, add our jars and zip up the rest. The result is Tomcat with added EE features - TomEE.<br><br>Apache TomEE Plus has all the features of TomEE with the addition of JAX-RS, JAX-WS, JMS and the Java Connector Architecture. The additional functionality is delivered via Apache CXF, Apache ActiveMQ and the Geronimo Connector library"
		},
		"env": {
			"topology": {
				"engine": "java7",
				"nodes": [{
						"extip": false,
						"count": 1,
						"cloudlets": 16,
						"nodeType": "tomee"
					}
				],
				"ssl": false,
				"ha": false
			}
		},
		"success": {
			"text": "Find out more information about using TomEE in the platform: <br><a href="https://www.virtuozzo.com/application-platform-docs/tomee">TomEE App Server</a><br><a href="https://www.virtuozzo.com/application-platform-docs/environment-variables-tomcat-jetty">Tomcat/TomEE Environment Variables</a><br><a href="https://www.virtuozzo.com/application-platform-docs/tomcat-server-clustering">Tomcat Clustering</a><br><a href="https://www.virtuozzo.com/application-platform-docs/tomcat-security">Tomcat Security</a><br>"
		}
	}
}

NGINX

NGINX is a high performance, high concurrency web server excelling at large scale content delivery, web acceleration and protecting application containers.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{
	"jpsType": "install",
	"jpsVersion": "0.2",
	"application": {
		"id": "nginx",
		"name": "NGINX",
		"version": "1.4",
		"type": "php",
		"homepage": "http://nginx.com/",
		"logo": "https://app.jelastic.com/xssu/cross/download/RDYYHAYyVgANAF0dNwRoRRYVXhQEHBFECUZqHHkiJgZLQkRQDwIBQmNTTEBI/view",
		"description": {
			"text": "NGINX&reg; is a high performance, high concurrency web server excelling at large scale content delivery, web acceleration and protecting application containers."
		},
		"env": {
			"topology": {
				"engine": "php5.3",
				"nodes": [{
						"extip": false,
						"count": 1,
						"cloudlets": 16,
						"nodeType": "nginxphp"
					}
				],
				"ssl": false,
				"ha": false
			}
		},
		"success": {
			"text": "Find out more information about using NGINX in the platform: <br><a href="https://www.virtuozzo.com/application-platform-docs/nginx">NGINX App Server</a><br><a href="https://www.virtuozzo.com/application-platform-docs/nginx-security-configurations">Apache & NGINX Modules</a><br><a href="https://www.virtuozzo.com/application-platform-docs/nginx-modules">NGINX Modules</a><br><a href="https://www.virtuozzo.com/application-platform-docs/caching-nginx-server">Caching in NGINX App Server</a><br>"
		}
	}
}

What’s next?