Webuzo Launch API

From Webuzo Wiki
Jump to: navigation, search

Overview

If you are a Cloud Service Provider and would like to offer Apps like WordPress, Joomla, etc on your Cloud Platform, this guide will help you do so. Webuzo has hundreds of Apps and its also a one in all LAMPP stack which supports Apache, MySQL, PHP, Perl, Python, SQLite, FTP Server, DNS Server, etc. If one needs a LAMP stack or any application like Magento, phpBB, etc that need to be deployed in minutes, Webuzo is the best solution in the market.


Create an OS Template

You need to create an OS template so as to deploy Webuzo. You can follow the Creating a OS Template guide.


Unattended Installation Of Webuzo

Populate the file /usr/local/webuzo/sdk/unattended.php with details required to configure Webuzo and execute the same to configure Webuzo and install scripts.

Required Inputs :
$data['ip'] = '1.1.1.1'; // Your Servers IP
$user = $data['user'] = 'soft'; // User account to be configured.
$data['email]'] = 'admin@example.com'; // Users email address
$pass = $data['pass'] = 'password';
$host = $data['host'] = 'mydomain.com';
$data['ns1'] = ''; // OPTIONAL - NameServer 1
$data['ns2'] = ''; // OPTIONAL - NameServer 2
$data['license'] = ''; // OPTIONAL - License Key : Empty installs a Free version of Webuzo.

Execute the following command to Configure Webuzo:

php /usr/local/webuzo/sdk/unattended.php

Note : The file also installs a script by default.

You can downloaded it from here : File:Unattended.zip

Launch instances for your template

Using the OS Template you just created, you can now launch any number of Webuzo Instances. Launching an Instance will differ as per your platform and is beyond the scope of this Guide. You can use the same OS Template of Webuzo to launch an APPLICATION SPECIFIC Webuzo Instance i.e. whether you want to launch a Webuzo Instance of Wordpress or Joomla or any other Application, the same OS template will be used. Now please launch one Instance using the OS template you created to proceed further.


Configure instance as per desired application

Now lets begin configuring the Instance you just launched to make it an Application Specific Instance. For this guide I will be using WordPress as the Application for the instance.


Collect Information

You will need to find out certain information about the Application :

1) Script ID : This denotes the ID of the application you want to install. You can get a list of applications provided by Softaculous and their corresponding IDs from the scripts.php file. It contains a Multidimensional ARRAY of the format 'SID' => array()

e.g. For WordPress the Script ID i.e. sid is 26

2) Webuzo License Key : Your Webuzo License key will be required. So please issue a License for this instance that was launched.


Configure Instance

Now using your code you must call the following URL of the newly launched instance to tell the instance to prepare itself as an Application Instance :

https://'''YOUR-IP''':2005/install.php?prepareinstall='''Script ID'''&license='''Webuzo License Key'''

Return Code : 1 on success, otherwise it failed

The above API CALL makes the instance download the application you specified. On success you should get the value 1 as the return value of the API CALL.


You can specify a custom Logo for your Instance. Call your URL with the Logo URL as a parameter.

https://'''YOUR-IP''':2005/install.php?preparelogo='''Logo URL'''

Return Code : 1 on success, otherwise it failed

The above API CALL sets a customized Logo. On success you should get the value 1 as the return value of the API CALL.


Restrict only a Particular Script

You can restrict the Enduser to list only a single script in the Enduser Categories. Call your URL with the Script ID as a parameter.

https://'''YOUR-IP''':2005/install.php?onlyone='''Script ID'''

Return Code : 1 on success, otherwise it failed

The above API CALL restricts only one script. On success you should get the value 1 as the return value of the API CALL.


Further Configuration

License Key

If you have already purchased a Webuzo License, it will be showed while configuring your application.

The above API URL creates a temporary license file to store the license key and produce the License key while configuring your instance.

The temporary License file is deleted on completion of the process

Name Servers

If you do not want your users set the nameservers while configuring Webuzo, you need to create a file named hidens in your /usr/local/webuzo/ folder while creating the OS template.

This will disable the nameserver fields while configuring Webuzo.

Alternately, if you do not set your Nameservers, it will be set to

ns1.example.com

ns2.example.com by default.


Finish installation

You can now hand over the URL of the Instance to the user.

Note : If you have already provided the License key, it will automatically be visible while configuring your Webuzo Server.

Initial Setup

Visit your Webuzo Instance and the user can fill in the desired details :

https://'''YOUR-IP''':2005/install.php
Web conf.png

Webuzo Panel

Users can visit the Webuzo Panel at the following URL :

https://YOUR-IP:2003/
Web enduser.png

Webuzo Amazon Integration

We have made our own integration into the AMAZON EC2 Cloud Platform. A video is also available :

  • You can use the above guide to make something similar for your cloud platform.

Support

If you need any further information, please contact us at support [at] webuzo [dot] com