Skip to content

Instantly share code, notes, and snippets.

@usul
Forked from sukharevd/wildfly-install.sh
Last active December 15, 2016 21:00
Show Gist options
  • Save usul/7c0ccc7d0144de04c5d9 to your computer and use it in GitHub Desktop.
Save usul/7c0ccc7d0144de04c5d9 to your computer and use it in GitHub Desktop.
#!/bin/bash
#title :wildfly-install.sh
#description :The script to install Wildfly 8.x
#more :http://sukharevd.net/wildfly-8-installation.html
#author :Dmitriy Sukharev
#date :20140601
#usage :/bin/bash wildfly-install.sh
#modified by :usul
#date :20141022
#description :Script now install 2 wildfly as master and slave
WILDFLY_VERSION=8.1.0.Final
WILDFLY_FILENAME=wildfly-$WILDFLY_VERSION
WILDFLY_ARCHIVE_NAME=$WILDFLY_FILENAME.tar.gz
WILDFLY_DOWNLOAD_ADDRESS=http://download.jboss.org/wildfly/$WILDFLY_VERSION/$WILDFLY_ARCHIVE_NAME
INSTALL_DIR=/opt
WILDFLY_FULL_DIR=$INSTALL_DIR/$WILDFLY_FILENAME
WILDFLY_DIR_SALVE=$INSTALL_DIR/wildfly-slave
WILDFLY_DIR_MASTER=$INSTALL_DIR/wildfly-master
WILDFLY_USER="wildfly"
WILDFLY_SERVICE_SLAVE="wildfly-slave"
WILDFLY_SERVICE_MASTER="wildfly-master"
WILDFLY_STARTUP_TIMEOUT=240
WILDFLY_SHUTDOWN_TIMEOUT=30
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root."
exit 1
fi
echo "Downloading: $WILDFLY_DOWNLOAD_ADDRESS..."
[ -e "$WILDFLY_ARCHIVE_NAME" ] && echo 'Wildfly archive already exists.'
if [ ! -e "$WILDFLY_ARCHIVE_NAME" ]; then
wget -q $WILDFLY_DOWNLOAD_ADDRESS
if [ $? -ne 0 ]; then
echo "Not possible to download Wildfly."
exit 1
fi
fi
echo "Cleaning up..."
rm -f "$WILDFLY_DIR_SLAVE"
rm -f "$WILDFLY_DIR_MASTER"
rm -rf "$WILDFLY_FULL_DIR"
rm -rf "/var/run/$WILDFLY_SERVICE_SLAVE/"
rm -f "/etc/init.d/$WILDFLY_SERVICE_SLAVE"
rm -rf "/var/run/$WILDFLY_SERVICE_MASTER/"
rm -f "/etc/init.d/$WILDFLY_SERVICE_MASTER"
echo "Installation..."
mkdir $WILDFLY_FULL_DIR
tar -xzf $WILDFLY_ARCHIVE_NAME -C $INSTALL_DIR
mv $WILDFLY_FULL_DIR $WILDFLY_DIR_SLAVE
useradd -s /sbin/nologin $WILDFLY_USER
chown -R $WILDFLY_USER:$WILDFLY_USER $WILDFLY_DIR_SLAVE
chown -R $WILDFLY_USER:$WILDFLY_USER $WILDFLY_DIR_SLAVE/
tar -xzf $WILDFLY_ARCHIVE_NAME -C $INSTALL_DIR
mv $WILDFLY_FULL_DIR $WILDFLY_DIR_MASTER
chown -R $WILDFLY_USER:$WILDFLY_USER $WILDFLY_DIR_MASTER
chown -R $WILDFLY_USER:$WILDFLY_USER $WILDFLY_DIR_MASTER/
echo "Registrating Wildfly as service..."
# if Debian-like distribution
if [ -r /lib/lsb/init-functions ]; then
cp $WILDFLY_DIR/bin/init.d/wildfly-init-debian.sh /etc/init.d/$WILDFLY_SERVICE_SLAVE
sed -i -e 's,NAME=wildfly,NAME='$WILDFLY_SERVICE_SLAVE',g' /etc/init.d/$WILDFLY_SERVICE_SLAVE
WILDFLY_SERVICE_CONF_SLAVE=/etc/default/$WILDFLY_SERVICE_SLAVE
cp $WILDFLY_DIR/bin/init.d/wildfly-init-debian.sh /etc/init.d/$WILDFLY_SERVICE_MASTER
sed -i -e 's,NAME=wildfly,NAME='$WILDFLY_SERVICE_MASTER',g' /etc/init.d/$WILDFLY_SERVICE_MASTER
WILDFLY_SERVICE_CON_MASTER=/etc/default/$WILDFLY_SERVICE_MASTER
fi
chmod 755 /etc/init.d/$WILDFLY_SERVICE_SLAVE
chmod 755 /etc/init.d/$WILDFLY_SERVICE_MASTER
if [ ! -z "$WILDFLY_SERVICE_CONF_SLAVE" ]; then
echo "Configuring service..."
echo JBOSS_HOME=\"$WILDFLY_DIR_SLAVE\" > $WILDFLY_SERVICE_CONF_SLAVE
echo JBOSS_USER=$WILDFLY_USER >> $WILDFLY_SERVICE_CONF_SLAVE
echo STARTUP_WAIT=$WILDFLY_STARTUP_TIMEOUT >> $WILDFLY_SERVICE_CONF_SLAVE
echo SHUTDOWN_WAIT=$WILDFLY_SHUTDOWN_TIMEOUT >> $WILDFLY_SERVICE_CONF_SLAVE
fi
if [ ! -z "$WILDFLY_SERVICE_CONF_MASTER" ]; then
echo "Configuring service..."
echo JBOSS_HOME=\"$WILDFLY_DIR_MASTER\" > $WILDFLY_SERVICE_CONF_MASTER
echo JBOSS_USER=$WILDFLY_USER >> $WILDFLY_SERVICE_CONF_MASTER
echo STARTUP_WAIT=$WILDFLY_STARTUP_TIMEOUT >> $WILDFLY_SERVICE_CONF_MASTER
echo SHUTDOWN_WAIT=$WILDFLY_SHUTDOWN_TIMEOUT >> $WILDFLY_SERVICE_CONF_MASTER
fi
echo "Configuring application server..."
sed -i -e 's,<deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000"/>,<deployment-scanner path="deployments" relative-to="jboss.server.base.dir" scan-interval="5000" deployment-timeout="'$WILDFLY_STARTUP_TIMEOUT'"/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
sed -i -e 's,<inet-address value="${jboss.bind.address:127.0.0.1}"/>,<any-address/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
sed -i -e 's,<socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>,<socket-binding name="ajp" port="${jboss.ajp.port:28009}"/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
sed -i -e 's,<socket-binding name="http" port="${jboss.http.port:8080}"/>,<socket-binding name="http" port="${jboss.http.port:28080}"/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
sed -i -e 's,<socket-binding name="https" port="${jboss.https.port:8443}"/>,<socket-binding name="https" port="${jboss.https.port:28443}"/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
sed -i -e 's,<socket-binding name="osgi-http" interface="management" port="8090"/>,<socket-binding name="osgi-http" interface="management" port="28090"/>,g' $WILDFLY_DIR/standalone/configuration/standalone.xml
service $WILDFLY_SERVICE start
echo "Done."
@KovalyshevMikhail
Copy link

Don't run on Fedora... It's bad script...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment