mirror of
https://github.com/nextcloud/vm.git
synced 2025-10-26 11:27:32 +00:00
this was used for the old VMs
This commit is contained in:
parent
f0679fadf5
commit
4fc64863db
@ -1,165 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Tech and Me - www.techandme.se - ©2017
|
||||
|
||||
SCRIPTS=/var/scripts
|
||||
NCPATH=/var/www/nextcloud
|
||||
REDIS_CONF=/etc/redis/6379.conf
|
||||
REDIS_INIT=/etc/init.d/redis_6379
|
||||
REDIS_SOCK=/var/run/redis.sock
|
||||
|
||||
# Must be root
|
||||
[[ `id -u` -eq 0 ]] || { echo "Must be root to run script, in Ubuntu type: sudo -i"; exit 1; }
|
||||
|
||||
# Check if dir exists
|
||||
if [ -d $SCRIPTS ]
|
||||
then
|
||||
sleep 1
|
||||
else
|
||||
mkdir -p $SCRIPTS
|
||||
fi
|
||||
|
||||
# Get packages to be able to install Redis
|
||||
apt update -q2 && sudo apt install build-essential -q -y
|
||||
apt install tcl8.5 -q -y
|
||||
apt install php-pear php7.0-dev -q -y
|
||||
|
||||
# Install Git and clone repo
|
||||
apt install git -y -q
|
||||
git clone -b php7 https://github.com/phpredis/phpredis.git
|
||||
|
||||
# Build Redis PHP module
|
||||
sudo mv phpredis/ /etc/ && cd /etc/phpredis
|
||||
phpize
|
||||
./configure
|
||||
make && make install
|
||||
if [[ $? > 0 ]]
|
||||
then
|
||||
echo "PHP module installation failed"
|
||||
sleep 5
|
||||
exit 1
|
||||
else
|
||||
echo -e "\e[32m"
|
||||
echo "PHP module installation OK!"
|
||||
echo -e "\e[0m"
|
||||
fi
|
||||
touch /etc/php/7.0/mods-available/redis.ini
|
||||
echo 'extension=redis.so' > /etc/php/7.0/mods-available/redis.ini
|
||||
phpenmod redis
|
||||
service apache2 restart
|
||||
cd ..
|
||||
rm -rf phpredis
|
||||
|
||||
# Get latest Redis
|
||||
wget -q http://download.redis.io/releases/redis-stable.tar.gz -P $SCRIPTS && tar -xzf $SCRIPTS/redis-stable.tar.gz -C $SCRIPTS
|
||||
mv $SCRIPTS/redis-stable $SCRIPTS/redis
|
||||
|
||||
# Test Redis
|
||||
cd $SCRIPTS/redis && make
|
||||
# Check if taskset need to be run
|
||||
grep -c ^processor /proc/cpuinfo > /tmp/cpu.txt
|
||||
if grep -Fxq "1" /tmp/cpu.txt
|
||||
then
|
||||
echo "Not running taskset"
|
||||
make test
|
||||
else
|
||||
echo "Running taskset limit to 1 proccessor"
|
||||
taskset -c 1 make test
|
||||
rm /tmp/cpu.txt
|
||||
fi
|
||||
|
||||
# Install Redis
|
||||
make install
|
||||
cd utils && yes "" | sudo ./install_server.sh
|
||||
if [[ $? > 0 ]]
|
||||
then
|
||||
echo "Installation failed."
|
||||
sleep 5
|
||||
exit 1
|
||||
else
|
||||
echo -e "\e[32m"
|
||||
echo "Redis installation OK!"
|
||||
echo -e "\e[0m"
|
||||
fi
|
||||
|
||||
# Remove installation package
|
||||
rm -rf $SCRIPTS/redis
|
||||
rm $SCRIPTS/redis-stable.tar.gz
|
||||
|
||||
# Prepare for adding redis configuration
|
||||
sed -i "s|);||g" $NCPATH/config/config.php
|
||||
|
||||
# Add the needed config to Nextclouds config.php
|
||||
cat <<ADD_TO_CONFIG>> $NCPATH/config/config.php
|
||||
'memcache.local' => '\\NC\\Memcache\\Redis',
|
||||
'filelocking.enabled' => 'true',
|
||||
'memcache.distributed' => '\\NC\\Memcache\\Redis',
|
||||
'memcache.locking' => '\\NC\\Memcache\\Redis',
|
||||
'redis' =>
|
||||
array (
|
||||
'host' => '$REDIS_SOCK',
|
||||
'port' => 0,
|
||||
'timeout' => 0,
|
||||
'dbindex' => 0,
|
||||
),
|
||||
);
|
||||
ADD_TO_CONFIG
|
||||
|
||||
# Redis performance tweaks
|
||||
if grep -Fxq "vm.overcommit_memory = 1" /etc/sysctl.conf
|
||||
then
|
||||
echo "vm.overcommit_memory correct"
|
||||
else
|
||||
echo 'vm.overcommit_memory = 1' >> /etc/sysctl.conf
|
||||
fi
|
||||
sed -i "s|# unixsocket /tmp/redis.sock|unixsocket $REDIS_SOCK|g" $REDIS_CONF
|
||||
sed -i "s|# unixsocketperm 700|unixsocketperm 777|g" $REDIS_CONF
|
||||
sed -i "s|port 6379|port 0|g" $REDIS_CONF
|
||||
sed -i "s|###############|SOCKET='$REDIS_SOCK'|g" $REDIS_INIT
|
||||
sed -i "s|REDISPORT shutdown|SOCKET shutdown|g" $REDIS_INIT
|
||||
sed -i "s|CLIEXEC -p|CLIEXEC -s|g" $REDIS_INIT
|
||||
redis-cli SHUTDOWN
|
||||
|
||||
# Cleanup
|
||||
apt purge -y \
|
||||
git \
|
||||
php7.0-dev \
|
||||
binutils \
|
||||
build-essential \
|
||||
cpp \
|
||||
cpp-4.8 \
|
||||
dpkg-dev \
|
||||
fakeroot \
|
||||
g++ \
|
||||
g++-4.8 \
|
||||
gcc \
|
||||
gcc-4.8 \
|
||||
libalgorithm-diff-perl \
|
||||
libalgorithm-diff-xs-perl \
|
||||
libalgorithm-merge-perl \
|
||||
libasan0 \
|
||||
libatomic1 \
|
||||
libc-dev-bin \
|
||||
libc6-dev \
|
||||
libcloog-isl4 \
|
||||
libdpkg-perl \
|
||||
libfakeroot \
|
||||
libfile-fcntllock-perl \
|
||||
libgcc-4.8-dev \
|
||||
libgmp10 libgomp1 \
|
||||
libisl10 \
|
||||
libitm1 \
|
||||
libmpc3 \
|
||||
libmpfr4 \
|
||||
libquadmath0 \
|
||||
libstdc++-4.8-dev \
|
||||
libtsan0 \
|
||||
linux-libc-dev \
|
||||
make \
|
||||
manpages-dev
|
||||
|
||||
apt update -q2
|
||||
apt autoremove -y
|
||||
apt autoclean
|
||||
|
||||
exit 0
|
||||
Loading…
Reference in New Issue
Block a user