ubuntu-nextcloud/setup_nextcloud.sh

54 lines
2.2 KiB
Bash

# Prepare
sh /setup_programs.sh
apt install -y apache2 libapache2-mod-php7.4
apt install -y php7.4-gd php7.4-curl php7.4-mbstring php7.4-intl
apt install -y php7.4-pgsql
apt install -y php-apcu php-memcached php-redis
apt install -y php7.4-gmp php7.4-bcmath php-imagick php7.4-xml php7.4-zip
# Get Nextcloud
wget https://download.nextcloud.com/server/releases/nextcloud-$NEXTCLOUD_VERSION.tar.bz2
tar -xjvf nextcloud-$NEXTCLOUD_VERSION.tar.bz2
cp -r /nextcloud /var/www
rm /nextcloud-$NEXTCLOUD_VERSION.tar.bz2
rm -r /nextcloud
# Configure Nextcloud
mkdir /var/www/nextcloud/custom_apps
mkdir /var/www/nextcloud/data
chown -R www-data:www-data /var/www/nextcloud/
chmod 755 /var/www/nextcloud/
chmod -R 644 /var/www/nextcloud/
find /var/www/nextcloud/ -type d -exec chmod 755 {} +
chmod -R 770 /var/www/nextcloud/data/
chmod -R 750 /var/www/nextcloud/config/
# Get configs
wget https://git.dfosd.synology.me/docker/ubuntu-nextcloud/raw/branch/master/nextcloud-config.php -O /var/www/nextcloud/config/config.php
sed -i "s/NEXTCLOUD_PASSWORD_SALT/$NEXTCLOUD_PASSWORD_SALT/g" /var/www/nextcloud/config/config.php
sed -i "s/NEXTCLOUD_PASSWORD_SECRET/$NEXTCLOUD_PASSWORD_SECRET/g" /var/www/nextcloud/config/config.php
sed -i "s/NEXTCLOUD_UPDATER_SECRET/$(sed 's/-//g' <<< $(uuidgen))/g" /var/www/nextcloud/config/config.php
sed -i "s/REDIS_HOST/$REDIS_HOST/g" /var/www/nextcloud/config/config.php
sed -i "s/REDIS_PORT/$REDIS_PORT/g" /var/www/nextcloud/config/config.php
sed -i "s/NEXTCLOUD_DATABASE_VERSION/$NEXTCLOUD_DATABASE_VERSION/g" /var/www/nextcloud/config/config.php
sed -i "s/DB_NAME/$DB_NAME/g" /var/www/nextcloud/config/config.php
sed -i "s/DB_HOST/$DB_HOST/g" /var/www/nextcloud/config/config.php
sed -i "s/DB_PORT/$DB_PORT/g" /var/www/nextcloud/config/config.php
sed -i "s/DB_USER/$DB_USER/g" /var/www/nextcloud/config/config.php
sed -i "s/DB_PASSWORD/$DB_PASSWORD/g" /var/www/nextcloud/config/config.php
wget https://git.dfosd.synology.me/docker/ubuntu-nextcloud/raw/branch/master/apache-config.conf -O /etc/apache2/sites-enabled/default-ssl.conf
# Turn on modules
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif
a2enmod ssl
service apache2 restart