CubeDrive Installation   ->   Install 3rd-party software

Install 3rd-party software



MySQL, Java, Tomcat, Nginx 3rd-party softwares are required to run CubeDrive.

1: Database Server


MySQL is used as CubeDrive database server. In general, MySQL can be pre-installed during install Linux system. If not, please go to:

http://dev.mysql.com/downloads/mysql/

You can download and install MySQL (version 5.6.*) in your Linux server.

Create Schema

After MySQL is installed successfully, please generate a schema for the CubeDrive:


     drop database cubedrive;
     create database cubedrive DEFAULT CHARACTER SET utf8;
     use cubedrive;    
    

Create table

Email us to get the MySQL tables and inject the SQL file into the above MySQL schema:

Database-cubedrive.sql
cat Database-cubedrive.sql | /usr/bin/mysql -u root --password=root -h localhost cubedrive  

Insert default data

Download the SQL files and inject the SQL file into the above MySQL schema:

Database-initialData.sql
cat Database-initialData.sql | /usr/bin/mysql -u root --password=root -h localhost cubedrive

(Option) Update cnf file

Added below variables in /etc/my.cnf to set utf8 - support multiple language

[mysqld]
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

If you have any issue for install mysql database, please search Google online. CubeDrive does not have special requirements for the MySQL database server.


2: JDK


Download and install JDK 8 from

http://download.oracle.com

Please set JAVA_HOME in the Linux system. For example, add the following line in the file: /etc/profile.d/oracle_jdk.sh

JAVA_HOME=/usr/local/java
export JAVA_HOME
PATH=${JAVA_HOME}/bin:${PATH}:
export PATH 
save file and quit editor, run below commands:
chmod 755 /etc/profile.d/oracle_jdk.sh
source /etc/profile

3: Tomcat


Download and install Tomcat 8 in your Linux system. Tomcat also can be pre-installed during install Linux system. Please check it first

http://apache.sunsite.ualberta.ca/tomcat/tomcat-7/v7.0.65/bin/apache-tomcat-7.0.65.tar.gz
For example, you can put it under:
/opt/3rd-parts/cubedrive-server-1

Update server.xml

Edit file: /opt/3rd-parts/cubedrive-server-1/conf/server.xml

Enable

<Connector executor="tomcatThreadPool" port="8109" protocol="org.apache.coyote.http11.Http11AprProtocol" connectionTimeout="600000" redirectPort="8443" enableLookups="false" disableUploadTimeout="false" connectionUploadTimeout="36000000" URIEncoding="UTF-8"/>
<Connector executor="tomcatThreadPool" port="9109" protocol="org.apache.coyote.ajp.AjpAprProtocol" connectionTimeout="300000" keepAliveTimeout="300000" redirectPort="8443" acceptorThreadCount="5" acceptCount="500"/>

Disable

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

Enlarge Tomcat memory

The default tomcat server memory is 256m which is not enough for the system. We need enlarge tomcat memory, go to:

/opt/3rd-parts/cubedrive-server-1/bin

Edit file (catalina.sh) by adding the following line after line: #!/bin/sh

JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms2548m -Xmx2548m -Xmn768m -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseFastAccessorMethods -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/home/fzhuang/dump/sheet-server-1 -Dxr.load.xml-reader=org.ccil.cowan.tagsoup.Parser -XX:PermSize=192m -XX:MaxPermSize=192m"

Note: this line should be inserted at the top line of file: catelina.sh.

(Option) Add SSH

If you need add SSL, please get a ssl license first and update Tomcat

>$ cd /<tomcat_HOME>/conf
>$ vi server.xml
<Connector port="80"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" />
<Connector port="443"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="/etc/tomcat6/keystore" keystorePass="changeit" />

4: Nginx


Nginx is a web server which can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache. For more detail, please visit: https://nginx.org/en/


5: URL


Please also have a domain name which can be binded with your Linux IP address. For example:

www.yourCompany.com/cubedrive