123 lines
4.7 KiB
Bash
123 lines
4.7 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
sudo apt-get update
|
|
sudo apt-get -y upgrade
|
|
|
|
# Installation Wkhtmltopdf
|
|
if [ ! -f /usr/local/bin/wkhtmltopdf ]
|
|
then
|
|
sudo dpkg -i /vagrant/data/Apps/wkhtmltox-0.12.1_linux-precise-amd64.deb
|
|
sudo apt-get -f install -y
|
|
fi
|
|
|
|
# Installation
|
|
if [ ! -f /usr/bin/php5 ]
|
|
then
|
|
sudo apt-get update
|
|
sudo apt-get -y install htop unzip apache2 mysql-client-5.5 php5 php-apc php5-curl php5-xmlrpc php5-xsl php5-mysqlnd php5-xdebug
|
|
sudo a2enmod autoindex deflate expires headers rewrite
|
|
fi
|
|
|
|
# Installation MariaDB
|
|
MARIADB_VERSION="10.0"
|
|
MYSQL_PASS=scores
|
|
if [ ! -f /etc/mysql/vagrant ]
|
|
then
|
|
sudo apt-get install software-properties-common
|
|
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
|
|
sudo add-apt-repository 'deb http://nwps.ws/pub/mariadb/repo/10.0/ubuntu precise main'
|
|
sudo apt-get update
|
|
sudo debconf-set-selections <<< "mariadb-server-$MARIADB_VERSION mysql-server/root_password password $MYSQL_PASS"
|
|
sudo debconf-set-selections <<< "mariadb-server-$MARIADB_VERSION mysql-server/root_password_again password $MYSQL_PASS"
|
|
sudo apt-get -y --allow-unauthenticated install mariadb-server
|
|
#sudo sed -i -e 's/datadir = \/var\/lib\/mysql/datadir = \/home\/vhosts\/mysql/g' /etc/mysql/my.cnf
|
|
sudo sed -i -e 's/bind-address[ \t]*= 127.0.0.1/bind-address = 0.0.0.0/g' /etc/mysql/my.cnf
|
|
sudo sed -i -e 's/max_connections[ \t]*= 100/max_connections = 20/g' /etc/mysql/my.cnf
|
|
sudo service mysql restart
|
|
mysql -hlocalhost -uroot -p$MYSQL_PASS < /vagrant/data/Apps/phpmyadmin.sql
|
|
sudo touch /etc/mysql/vagrant
|
|
fi
|
|
|
|
# --- Installation phpMyAdmin
|
|
PHPMYADMIN_VERSION="4.3.7"
|
|
PHPMYADMIN_PATH="phpMyAdmin-$PHPMYADMIN_VERSION-all-languages"
|
|
if [ ! -d "/home/vhosts/$PHPMYADMIN_PATH" ]
|
|
then
|
|
if [ -f "/vagrant/data/Apps/$PHPMYADMIN_PATH.tar.xz" ]
|
|
then
|
|
tar xJvf "/vagrant/data/Apps/$PHPMYADMIN_PATH.tar.xz" --directory /home/vhosts/
|
|
mysql -hlocalhost -uroot -p$MYSQL_PASS < /vagrant/data/Apps/phpmyadmin.sql
|
|
mysql -hlocalhost -uroot -p$MYSQL_PASS < /home/vhosts/$PHPMYADMIN_PATH/examples/create_tables.sql
|
|
sudo service mysql restart
|
|
cp /vagrant/data/Apps/config.inc.php /home/vhosts/$PHPMYADMIN_PATH/
|
|
chmod 0444 /home/vhosts/$PHPMYADMIN_PATH/config.inc.php
|
|
fi
|
|
fi
|
|
|
|
# Configuration PHP / Apache
|
|
sudo sed -i -e 's/short_open_tag = Off/short_open_tag = On/g' /etc/php5/apache2/php.ini
|
|
sudo sed -i -e 's/;date.timezone =/date.timezone = Europe\/Paris/g' /etc/php5/apache2/php.ini
|
|
sudo sed -i -e 's/post_max_size = 8M/post_max_size = 50M/g' /etc/php5/apache2/php.ini
|
|
sudo sed -i -e 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /etc/php5/apache2/php.ini
|
|
sudo sed -i -e 's/session.gc_maxlifetime = 1440/session.gc_maxlifetime = 86400/g' /etc/php5/apache2/php.ini
|
|
sudo sed -i -e 's/;opcache.enable=0/opcache.enable=1/g' /etc/php5/apache2/php.ini
|
|
sudo cp -f /vagrant/data/PHP/xdebug.ini /etc/php5/conf.d/xdebug.ini
|
|
|
|
# Browscap
|
|
sudo cp -f /vagrant/data/PHP/php_browscap.ini /etc/php5/apache2/
|
|
sudo sed -i -e 's/;browscap = extra\/browscap.ini/browscap = \/etc\/php5\/apache2\/php_browscap.ini/g' /etc/php5/apache2/php.ini
|
|
|
|
if [ ! -f /usr/lib/php5/20090626/chartdir.lic ]
|
|
then
|
|
sudo cp -R /vagrant/data/ChartDirector/lib/fonts /usr/lib/php5/20090626/
|
|
sudo cp /vagrant/data/ChartDirector/lib/libchartdir.so /usr/lib/php5/20090626/
|
|
sudo cp /vagrant/data/ChartDirector/lib/phpchartdir530.dll /usr/lib/php5/20090626/
|
|
sudo cp /vagrant/data/ChartDirector/chartdir.lic /usr/lib/php5/20090626/
|
|
sudo cp /vagrant/data/ChartDirector/chartdir.ini /etc/php5/conf.d/
|
|
fi
|
|
|
|
# Configuration PHP / CLI
|
|
sudo sed -i -e 's/short_open_tag = Off/short_open_tag = On/g' /etc/php5/cli/php.ini
|
|
sudo sed -i -e 's/;date.timezone =/date.timezone = Europe\/Paris/g' /etc/php5/cli/php.ini
|
|
|
|
# Configuration Apache
|
|
sudo cp -f /vagrant/data/Apache/httpd.conf /etc/apache2/
|
|
if [ ! -d /home/vhosts/apachelog ]
|
|
then
|
|
sudo mkdir /home/vhosts/apachelog
|
|
fi
|
|
if [ ! -d /home/vhosts/test ]
|
|
then
|
|
sudo mkdir /home/vhosts/test
|
|
fi
|
|
|
|
if [ ! -f /vagrant/vhosts/phpmyadmin ]
|
|
then
|
|
cp /vagrant/data/Apache/phpmyadmin /vagrant/vhosts/phpmyadmin
|
|
fi
|
|
if [ ! -f /vagrant/vhosts/test ]
|
|
then
|
|
cp /vagrant/data/Apache/test /vagrant/vhosts/test
|
|
fi
|
|
|
|
# Disable all website
|
|
cd /etc/apache2/sites-available/
|
|
DVHOSTS=''
|
|
for f in *; do DVHOSTS+=" $f"; done;
|
|
sudo a2dissite $DVHOSTS
|
|
|
|
# Copy Vhosts files
|
|
VHOSTS='default'
|
|
cd /vagrant/vhosts/
|
|
for f in *; do
|
|
if [ -f $f ]
|
|
then
|
|
sudo cp -f $f /etc/apache2/sites-available/
|
|
VHOSTS+=" $f"
|
|
fi
|
|
done;
|
|
sudo a2ensite $VHOSTS
|
|
|
|
# Restart apache
|
|
sudo service apache2 restart
|