One of my first actions was to baptize my server and give it a fancy hostname.
Now lets come to the juicy part. In this article I am going to build a simple application server to handle PDF trans-code to images with a custom Java application I built.
The actions I am going to demonstrate are how to:
- Setup OpenJKD on Fedora 22
- Install Ghostscript libraries required for my application.
- Download, install and configure Apache Tomcat 7
- Install and configure Apache HTTPd.
- Installing Open JDK
Install OpenJDK
The first step is really easy. We need a JDK or a JRE in order to run Tomcat that hosts our application. The straight option is to use opensource community JAVA: OpenJDK.To do so, I entered the following commands:
# dnf install java Last metadata expiration check performed 1:09:31 ago on Mon Mar 7 12:20:26 2016. ...To check where java is and what has been installed:
# which java /bin/java # java -version openjdk version "1.8.0_72" OpenJDK Runtime Environment (build 1.8.0_72-b15) OpenJDK 64-Bit Server VM (build 25.72-b15, mixed mode)
Install Ghostscript
Most of the software I wrote rely to Ghostscript shared libraries that are called from the corresponding Java API. To install them I entered the following commands:# dnf install ghostscript Last metadata expiration check performed 1:15:36 ago on Mon Mar 7 12:20:26 2016. ..The library got installed at:
# ls -lh /lib64/libgs* .. -rwxr-xr-x. 1 root root 16M Mar 31 2015 /lib64/libgs.so.9.16 # file /lib64/libgs.so.9.16 /lib64/libgs.so.9.16: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=6601d742a4829cb3e4fe8197f1b1457f665ce130, stripped
Install Apache Tomcat 7
Apache Tomcat 7 can be downloaded from here as a tar.gz file by picking up a binary distribution as follows:# cd /opt # wget http://mirror.serversupportforum.de/apache/tomcat/tomcat-7/v7.0.68/bin/apache-at-7.0.68.tar.gz # tar -xvf apache-tomcat-7.0.68.tar.gz
Now tomcat is not provided as a service from Fedora. To do so, we need to create a simple start script in /etc/init.d:
# cd /etc/init.d # vi tomcatpaste the following to the script tomcat:
#!/bin/bash # start/ stop Tomcat script # Since you are using OpneJDK put this as your java home JAVA_HOME=/ export JAVA_HOME PATH=$JAVA_HOME/bin:$PATH export PATH # Where you have placed tomcat CATALINA_HOME=/opt/apache-tomcat-7.0.68 case $1 in start) sh $CATALINA_HOME/bin/startup.sh ;; stop) sh $CATALINA_HOME/bin/shutdown.sh ;; restart) sh $CATALINA_HOME/bin/shutdown.sh sh $CATALINA_HOME/bin/startup.sh ;; esac exit 0Now tomcat needs to be registered as a Linux service. To do so add those commands:
# cd /etc/init.d # chmod 755 tomcat # chkconfig --add tomcat # chkconfig --level 234 tomcat on # chkconfig --list tomcat
Installing Apache HTTPD
This comes as a standard service supported from Fedora distribution. To install it:# dnf install httpd ...For a very fast configuration of http you can edit httpd.conf and add a simple virtual host:
# vi /etc/httpd/conf/httpd.conf # add where "Listen 80" is: Listen My.Host.IP.Here:80Since in modern Cloud environments the linux firewall IP Tables may block everything, here are the commands to unlock the ports:DocumentRoot "/www/illumineit.com" ServerName www.illumineit.com # Other directives here
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPTYou can start the HTTP service and get its status:
# service httpd start Redirecting to /bin/systemctl start httpd.service # service httpd status Redirecting to /bin/systemctl status httpd.service httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled) Active: active (running) since Mon 2016-03-07 14:09:27 UTC; 4s ago Main PID: 1760 (httpd) Status: "Processing requests..." CGroup: /system.slice/httpd.service ├─1760 /usr/sbin/httpd -DFOREGROUND ├─1761 /usr/sbin/httpd -DFOREGROUND ├─1762 /usr/sbin/httpd -DFOREGROUND ├─1763 /usr/sbin/httpd -DFOREGROUND ├─1764 /usr/sbin/httpd -DFOREGROUND └─1765 /usr/sbin/httpd -DFOREGROUND Mar 07 14:09:27 securepdf.illumineit.com systemd[1]: Starting The Apache HTTP Server... Mar 07 14:09:27 securepdf.illumineit.com systemd[1]: Started The Apache HTTP Server.The deployment directory for tomcat where you can place your WAR files is: /opt/apache-tomcat-7.0.68/webapps/ since I have donwloaded and installed tomcat on /opt.
You can use WinSCP to copy your WAR file there:
# ls -lh /opt/apache-tomcat-7.0.68/webapps/ total 27M drwxr-xr-x. 14 root root 4.0K Mar 3 11:00 docs drwxr-xr-x. 7 root root 4.0K Mar 3 11:00 examples drwxr-xr-x. 5 root root 4.0K Mar 3 11:00 host-manager drwxr-xr-x. 5 root root 4.0K Mar 3 11:00 manager drwxr-xr-x. 3 root root 4.0K Mar 3 11:00 ROOT drwxr-xr-x. 4 root root 4.0K Mar 4 16:59 zsecure-pdf -rw-r--r--. 1 root root 27M Mar 4 16:59 zsecure-pdf.war
No comments:
Post a Comment