167 lines
4.5 KiB
Bash
Executable file
167 lines
4.5 KiB
Bash
Executable file
#!/bin/bash
|
|
#######################################
|
|
# OpenPhoto Install
|
|
# Run with sudo for best results
|
|
#######################################
|
|
SECONDS=0
|
|
if [[ "$(/usr/bin/whoami)" != "root" ]]; then
|
|
echo "This script must be run as root or using sudo.Script aborted."
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Updating Ubuntu and apt-get"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
apt-get update --assume-yes --quiet
|
|
apt-get upgrade --assume-yes --quiet
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Installing needed packages and modules"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
apt-get install --assume-yes --quiet apache2 mysql-server mysql-client php5 libapache2-mod-php5 php5-curl curl php5-gd php5-mcrypt php5-mysql php-pear php-apc build-essential libpcre3-dev
|
|
a2enmod rewrite
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Installing optional but recommended packages and modules"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
apt-get install --assume-yes --quiet php5-dev php5-imagick exiftran
|
|
a2enmod deflate
|
|
a2enmod expires
|
|
a2enmod headers
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Installing oauth from pecl"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
pecl install oauth
|
|
mkdir -p /etc/php5/apache2/conf.d/
|
|
echo "extension=oauth.so" >> /etc/php5/apache2/conf.d/oauth.ini
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Downloading OpenPhoto and unpacking"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
wget https://github.com/photo/frontend/tarball/master -O openphoto.tar.gz
|
|
tar -zxvf openphoto.tar.gz > /dev/null 2>&1
|
|
mv photo-frontend-* /var/www/openphoto
|
|
sudo rm openphoto.tar.gz
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Setting permissions for Dev server"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
mkdir /var/www/openphoto/src/userdata
|
|
chown www-data:www-data /var/www/openphoto/src/userdata
|
|
|
|
mkdir /var/www/openphoto/src/html/assets/cache
|
|
chown www-data:www-data /var/www/openphoto/src/html/assets/cache
|
|
|
|
mkdir /var/www/openphoto/src/html/photos
|
|
chown www-data:www-data /var/www/openphoto/src/html/photos
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Setting up Apache"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
cp /var/www/openphoto/src/configs/openphoto-vhost.conf /etc/apache2/sites-available/openphoto
|
|
sed 's/\/path\/to\/openphoto\/html\/directory/\/var\/www\/openphoto\/src\/html/g' /var/www/openphoto/src/configs/openphoto-vhost.conf > /etc/apache2/sites-available/openphoto
|
|
a2dissite default
|
|
a2ensite openphoto
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Adjusting PHP settings"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
sed -e 's/file_uploads.*/file_uploads = On/g' -e 's/upload_max_filesize.*/upload_max_filesize = 16M/g' -e 's/post_max_size.*/post_max_size = 16M/g' /etc/php5/apache2/php.ini > /etc/php5/apache2/php.ini.tmp
|
|
mv /etc/php5/apache2/php.ini.tmp /etc/php5/apache2/php.ini
|
|
|
|
echo ""
|
|
echo ""
|
|
echo "===================================================="
|
|
echo "Launching Your OpenPhoto site"
|
|
echo "===================================================="
|
|
echo ""
|
|
echo ""
|
|
|
|
/etc/init.d/apache2 restart
|
|
|
|
# finding IP address and compensating for possible EC2 installation
|
|
EC2=`curl --silent --connect-timeout 1 http://169.254.169.254/latest/meta-data/public-hostname`
|
|
if [[ $EC2 != "" ]];
|
|
then
|
|
IP=`echo $EC2 | sed -rn 's/ec2-(.*?)\.compute.*/\1/p' | sed 's/-/./g'`
|
|
else
|
|
IP=`ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}'`
|
|
fi
|
|
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo "****************************************************"
|
|
echo "===================================================="
|
|
echo "CONGRATULATIONS!!!"
|
|
echo ""
|
|
echo "The photographic heavens are applauding your"
|
|
echo "brand new installation of OpenPhoto."
|
|
echo ""
|
|
echo ""
|
|
echo "Took $SECONDS seconds to install."
|
|
echo ""
|
|
echo ""
|
|
echo "Now you can test your installation by directing your"
|
|
echo "browser to $IP"
|
|
echo "===================================================="
|
|
echo "****************************************************"
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|