mirror of
				https://git.koehlerweb.org/frodovdr/guac-install
				synced 2025-10-31 17:26:41 +01:00 
			
		
		
		
	Tomcat Variable (#13)
* Tomcat Variable I don't know a good way to know which tomcat version is already running, and of course someone could theoretically run more than one...so the upgrade script is just a variable but the install script will check apt-cache and try to install tomcat8, then tomcat7, then tomcat6... * Optional commented line Added a commented out line in case someone wants to force an older/specific tomcat install
This commit is contained in:
		| @@ -4,6 +4,21 @@ | |||||||
| VERSION="0.9.13" | VERSION="0.9.13" | ||||||
| MCJVERSION="5.1.43" | MCJVERSION="5.1.43" | ||||||
|  |  | ||||||
|  | # Update apt so we can search apt-cache for newest tomcat version supported | ||||||
|  | apt-get update | ||||||
|  |  | ||||||
|  | # tomcat8 is newest, tomcat7 and tomcat6 should work too | ||||||
|  | if [ $(apt-cache search "^tomcat8$" | wc -l) -gt 0 ]; then | ||||||
|  |     TOMCAT="tomcat8" | ||||||
|  | elif [ $(apt-cache search "^tomcat7$" | wc -l) -gt 0 ]; then | ||||||
|  |     TOMCAT="tomcat7" | ||||||
|  | else | ||||||
|  |     TOMCAT="tomcat6" | ||||||
|  | fi | ||||||
|  |  | ||||||
|  | # If you want to force a specific tomcat install and not go with the newest just set it here and uncomment: | ||||||
|  | #TOMCAT="" | ||||||
|  |  | ||||||
| # Grab a password for MySQL Root | # Grab a password for MySQL Root | ||||||
| read -s -p "Enter the password that will be used for MySQL Root: " mysqlrootpassword | read -s -p "Enter the password that will be used for MySQL Root: " mysqlrootpassword | ||||||
| debconf-set-selections <<< "mysql-server mysql-server/root_password password $mysqlrootpassword" | debconf-set-selections <<< "mysql-server mysql-server/root_password password $mysqlrootpassword" | ||||||
| @@ -24,24 +39,22 @@ fi | |||||||
| if [ $(getconf LONG_BIT | grep 64) ]; then ARCH="x86_64";  else ARCH="i386"; fi | if [ $(getconf LONG_BIT | grep 64) ]; then ARCH="x86_64";  else ARCH="i386"; fi | ||||||
|  |  | ||||||
| # Install Features | # Install Features | ||||||
| apt-get update | apt-get -y install build-essential libcairo2-dev ${JPEGTURBO} libpng12-dev libossp-uuid-dev libavcodec-dev libavutil-dev \ | ||||||
| apt-get -y install build-essential libcairo2-dev $JPEGTURBO libpng12-dev libossp-uuid-dev libavcodec-dev libavutil-dev \ |  | ||||||
| libswscale-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libpulse-dev libssl-dev \ | libswscale-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libpulse-dev libssl-dev \ | ||||||
| libvorbis-dev libwebp-dev mysql-server mysql-client mysql-common mysql-utilities tomcat8 freerdp ghostscript jq wget curl | libvorbis-dev libwebp-dev mysql-server mysql-client mysql-common mysql-utilities ${TOMCAT} freerdp ghostscript jq wget curl | ||||||
|  |  | ||||||
| # If Apt-Get fails to run completely the rest of this isn't going to work... | # If Apt-Get fails to run completely the rest of this isn't going to work... | ||||||
| if [ $? != 0 ] | if [ $? != 0 ]; then | ||||||
| then |  | ||||||
|     echo "apt-get failed to install all required dependencies" |     echo "apt-get failed to install all required dependencies" | ||||||
|     exit |     exit | ||||||
| fi | fi | ||||||
|  |  | ||||||
| SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') | SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') | ||||||
|  |  | ||||||
| # Add GUACAMOLE_HOME to Tomcat8 ENV | # Add GUACAMOLE_HOME to $TOMCAT ENV | ||||||
| echo "" >> /etc/default/tomcat8 | echo "" >> /etc/default/${TOMCAT} | ||||||
| echo "# GUACAMOLE EVN VARIABLE" >> /etc/default/tomcat8 | echo "# GUACAMOLE EVN VARIABLE" >> /etc/default/${TOMCAT} | ||||||
| echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat8 | echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/${TOMCAT} | ||||||
|  |  | ||||||
| # Download Guacample Files | # Download Guacample Files | ||||||
| wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz | wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz | ||||||
| @@ -70,7 +83,7 @@ cd .. | |||||||
|  |  | ||||||
| # Move files to correct locations | # Move files to correct locations | ||||||
| mv guacamole-${VERSION}-incubating.war /etc/guacamole/guacamole.war | mv guacamole-${VERSION}-incubating.war /etc/guacamole/guacamole.war | ||||||
| ln -s /etc/guacamole/guacamole.war /var/lib/tomcat8/webapps/ | ln -s /etc/guacamole/guacamole.war /var/lib/${TOMCAT}/webapps/ | ||||||
| ln -s /usr/local/lib/freerdp/* /usr/lib/$ARCH-linux-gnu/freerdp/. | ln -s /usr/local/lib/freerdp/* /usr/lib/$ARCH-linux-gnu/freerdp/. | ||||||
| cp mysql-connector-java-${MCJVERSION}/mysql-connector-java-${MCJVERSION}-bin.jar /etc/guacamole/lib/ | cp mysql-connector-java-${MCJVERSION}/mysql-connector-java-${MCJVERSION}-bin.jar /etc/guacamole/lib/ | ||||||
| cp guacamole-auth-jdbc-${VERSION}-incubating/mysql/guacamole-auth-jdbc-mysql-${VERSION}-incubating.jar /etc/guacamole/extensions/ | cp guacamole-auth-jdbc-${VERSION}-incubating/mysql/guacamole-auth-jdbc-mysql-${VERSION}-incubating.jar /etc/guacamole/extensions/ | ||||||
| @@ -81,11 +94,11 @@ echo "mysql-port: 3306" >> /etc/guacamole/guacamole.properties | |||||||
| echo "mysql-database: guacamole_db" >> /etc/guacamole/guacamole.properties | echo "mysql-database: guacamole_db" >> /etc/guacamole/guacamole.properties | ||||||
| echo "mysql-username: guacamole_user" >> /etc/guacamole/guacamole.properties | echo "mysql-username: guacamole_user" >> /etc/guacamole/guacamole.properties | ||||||
| echo "mysql-password: $guacdbuserpassword" >> /etc/guacamole/guacamole.properties | echo "mysql-password: $guacdbuserpassword" >> /etc/guacamole/guacamole.properties | ||||||
| rm -rf /usr/share/tomcat8/.guacamole | rm -rf /usr/share/${TOMCAT}/.guacamole | ||||||
| ln -s /etc/guacamole /usr/share/tomcat8/.guacamole | ln -s /etc/guacamole /usr/share/${TOMCAT}/.guacamole | ||||||
|  |  | ||||||
| # restart tomcat | # restart tomcat | ||||||
| service tomcat8 restart | service ${TOMCAT} restart | ||||||
|  |  | ||||||
| # Create guacamole_db and grant guacamole_user permissions to it | # Create guacamole_db and grant guacamole_user permissions to it | ||||||
|  |  | ||||||
|   | |||||||
| @@ -4,10 +4,13 @@ | |||||||
| VERSION="0.9.13" | VERSION="0.9.13" | ||||||
| MCJVERSION="5.1.43" | MCJVERSION="5.1.43" | ||||||
|  |  | ||||||
|  | # I'm assuming tomcat8, you can change it here... | ||||||
|  | TOMCAT="tomcat8" | ||||||
|  |  | ||||||
| SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') | SERVER=$(curl -s 'https://www.apache.org/dyn/closer.cgi?as_json=1' | jq --raw-output '.preferred|rtrimstr("/")') | ||||||
|  |  | ||||||
| # Stop Tomcat | # Stop Tomcat | ||||||
| service tomcat8 stop | service ${TOMCAT} stop | ||||||
|  |  | ||||||
| # Download and install Guacamole Server | # Download and install Guacamole Server | ||||||
| wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz | wget ${SERVER}/incubator/guacamole/${VERSION}-incubating/source/guacamole-server-${VERSION}-incubating.tar.gz | ||||||
| @@ -42,7 +45,7 @@ then | |||||||
| fi | fi | ||||||
|  |  | ||||||
| # Start Tomcat | # Start Tomcat | ||||||
| service tomcat8 start | service ${TOMCAT} start | ||||||
|  |  | ||||||
| # Cleanup | # Cleanup | ||||||
| rm -rf guacamole* | rm -rf guacamole* | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user