Nextcloud: Difference between revisions

From DaqWiki
Jump to navigation Jump to search
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
= owncloud =
== Links ==
== Links ==


* https://daq00.triumf.ca/nextcloud
* http://cernbox.web.cern.ch/
* http://cernbox.web.cern.ch/
* https://cernbox.cern.ch/cernbox/doc/index.html
* https://cernbox.cern.ch/cernbox/doc/index.html
* https://nextcloud.com/
* https://nextcloud.com/
* https://daqstore.triumf.ca/nextcloud


NOTE: owncloud has been renamed/forked into nextcloud.
NOTE: owncloud has been renamed/forked into nextcloud.
Line 26: Line 24:
</pre>
</pre>


configure apache httpd with ssl and certbot: [SLinstall#Configure_HTTPS_server_.28CentOS7.29]
configure apache httpd with ssl and certbot: [[SLinstall#Configure_HTTPS_server_.28CentOS7.29]]
 
add this to ssl-daqstore.conf
<pre>
<Directory /var/www/html/nextcloud/>
AllowOverride All
</Directory>
</pre>


systemctl restart httpd
systemctl restart httpd
== Self registration ==
* check that email notifications work
* cd /var/www/html/owncloud/apps
* git clone https://github.com/pellaeon/registration.git
* cd registration
* git checkout master ### use latest version
* go to owncloud settings -> apps -> show disabled apps -> enable "registration"
* you will be bumped into the "upgrade" page, with luck there will be no errors
To test registration:
* open browser that does not remember you (firefox)
* go to owncloud, click on "register"
* enter email address, send the request, wait for reply email to arrive
* the reply email has a web link for completing account creation, go there
* select the new user name, new user password, say yes
* new account is created automatically, notice is sent to the owncloud administrators
There is no owncloud app for self registration "with approval". If somebody starts
creating spam user accounts and filling them with evil contents shared the world,
it is only possible to delete the badnicks after the fact.


== nextcloud ==
== nextcloud ==
Line 74: Line 56:
</pre>
</pre>


== Installation ==
== Installation (Ubuntu LTS 20.04) ==


On el6, update php from 5.3 to 5.6:
(we are migrating nextcloud-12 from daqstore to daq00)


<pre>
* install apache2, php, etc per https://daq.triumf.ca/DaqWiki/index.php/Ubuntu#Install_PHP
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
* apt install php-curl php-simplexml php-zip php-doctrine-dbal php-gd php-intl php-bcmath php-gmp php-imagick
yum remove php-common
* cd nextcloud
yum install "php56w*" --exclude "php56w-conflicting" --exclude php56w-mysqlnd
* sudo -u www-data /bin/bash
</pre>
* ./php ./updater/updater.phar ### updates to nextcloud-13
* if crash, install missing php module, rm data/updater-ocs8zykhjqsy/.step and try again
* again ### updates to nextcloud-14
* again ### updates to nextcloud-15
* again ### updates to nextcloud-16
* again ### updates to nextcloud-17
* again ### updates to nextcloud-18 ### occ upgrade now runs locally
* again ### updates to nextcloud-19
* again ### updates to nextcloud-20
* that's it Nextcloud Updater - version: v20.0.0beta4-11-g68fa0d4
* open https://daq00.triumf.ca/nextcloud/index.php ### Internal Server Error
* /etc/php.ini change post_max_size and upload_max_filesize to 100M, memory_limit to 600M, output_buffering to 0.
 
== Self registration ==


From https://download.owncloud.org/download/repositories/stable/owncloud/
* check that email notifications work
follow instructions for CentOS6 with php5.6: CentOS_6_PHP56 owncloud-8.2.2-1
* go to nextcloud settings -> apps -> show disabled apps -> enable "registration"
* you will be bumped into the "upgrade" page, with luck there will be no errors
* adjust settings under "admin -> additional settings, at the very bottom"


Note: this will install php5.6 and httpd-2.4 from el6 software collections.
To test registration:


<pre>
* open browser that does not remember you (firefox)
rpm --import https://download.owncloud.org/download/repositories/stable/CentOS_6_PHP56/repodata/repomd.xml.key
* go to nextcloud, click on "register"
wget http://download.owncloud.org/download/repositories/stable/CentOS_6_PHP56/ce:stable.repo -O /etc/yum.repos.d/ce:stable.repo
* enter email address, send the request, wait for reply email to arrive
yum clean expire-cache
* the reply email has a web link for completing account creation, go there
yum install owncloud
* select the new user name, new user password, say yes
</pre>
* new account is created automatically, notice is sent to the owncloud administrators
 
There is no owncloud app for self registration "with approval". If somebody starts
creating spam user accounts and filling them with evil contents shared the world,
it is only possible to delete the badnicks after the fact.


Actual repo files are here: http://download.owncloud.org/download/repositories/stable/CentOS_6_PHP56/
== php-8 update ==


Restart the web server (this restarts the httpd-2.2)
For Ubuntu-24 php-8.3.6, adjust settings:
* edit /etc/php/8.3/apache2/php.ini
* change post_max_size and upload_max_filesize to 100M, memory_limit to 600M, output_buffering to 0.
* change opcache.interned_strings_buffer to 50, opcache.memory_consumption to 512
* systemctl restart apache2


<pre>
Update database missing indexes:
service httpd restart
* cd /nextcloud/
</pre>
* sudo -u www-data /bin/bash
* php ./occ db:add-missing-indices


Open https://daqshare.triumf.ca/owncloud/index.php
Update nextcloud:
* php ./updater/updater.phar
* php ./occ maintenance:repair --include-expensive
* php ./occ db:add-missing-indices


* enter username "admin", password "admin"
Update to nextcloud-31:
* push "finish install" (or whatever it was)
* php ./updater/updater.phar
* you will be logged in as admin user
* again...
* ...
* php ./occ maintenance:repair --include-expensive
* follow instructions at https://doc.owncloud.org/server/8.2/admin_manual/contents.html
* php ./occ db:add-missing-indices


In .htacess, add this:
== nextcloud 33 update ==


<pre>
Update from  nextcloud 31 to 32 to 33 bombed out with errors in "creating backups"
SSLRequireSSL


<IfModule mod_headers.c>
Manual update:
      Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains; preload"
* download the zip file
</IfModule>
* backup /nextcloud
</pre>
* delete all old files except data and config
* unzip the new files
* run occ upgrade, etc

Latest revision as of 21:38, 23 April 2026

Links

NOTE: owncloud has been renamed/forked into nextcloud.

Installation (el7)

on el7, upgrade php:

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum erase php
yum install mod_php71w php71w-opcache
yum install "php71w*" --exclude "*mysql*"

utter selinux incantations:

setsebool -P httpd_can_sendmail=1
setsebool -P httpd_execmem true

configure apache httpd with ssl and certbot: SLinstall#Configure_HTTPS_server_.28CentOS7.29

add this to ssl-daqstore.conf

<Directory /var/www/html/nextcloud/>
AllowOverride All
</Directory>

systemctl restart httpd

nextcloud

cd /var/www/html
wget https://download.nextcloud.com/server/releases/nextcloud-12.0.4.tar.bz2
tar xjvf nextcloud-12.0.4.tar.bz2
chown -R apache.apache nextcloud

semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud'
semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/3rdparty/aws/aws-sdk-php/src/data/logs(/.*)?'
restorecon -Rv '/var/www/html/nextcloud'

zfs create pool/nextcloud

/bin/mv -v nextcloud/data /pool/nextcloud/
/bin/ln -s /pool/nextcloud/data nextcloud/

semanage fcontext -a -t httpd_sys_rw_content_t '/pool/nextcloud/data(/.*)?'
restorecon -Rv /pool/nextcloud/data

Installation (Ubuntu LTS 20.04)

(we are migrating nextcloud-12 from daqstore to daq00)

  • install apache2, php, etc per https://daq.triumf.ca/DaqWiki/index.php/Ubuntu#Install_PHP
  • apt install php-curl php-simplexml php-zip php-doctrine-dbal php-gd php-intl php-bcmath php-gmp php-imagick
  • cd nextcloud
  • sudo -u www-data /bin/bash
  • ./php ./updater/updater.phar ### updates to nextcloud-13
  • if crash, install missing php module, rm data/updater-ocs8zykhjqsy/.step and try again
  • again ### updates to nextcloud-14
  • again ### updates to nextcloud-15
  • again ### updates to nextcloud-16
  • again ### updates to nextcloud-17
  • again ### updates to nextcloud-18 ### occ upgrade now runs locally
  • again ### updates to nextcloud-19
  • again ### updates to nextcloud-20
  • that's it Nextcloud Updater - version: v20.0.0beta4-11-g68fa0d4
  • open https://daq00.triumf.ca/nextcloud/index.php ### Internal Server Error
  • /etc/php.ini change post_max_size and upload_max_filesize to 100M, memory_limit to 600M, output_buffering to 0.

Self registration

  • check that email notifications work
  • go to nextcloud settings -> apps -> show disabled apps -> enable "registration"
  • you will be bumped into the "upgrade" page, with luck there will be no errors
  • adjust settings under "admin -> additional settings, at the very bottom"

To test registration:

  • open browser that does not remember you (firefox)
  • go to nextcloud, click on "register"
  • enter email address, send the request, wait for reply email to arrive
  • the reply email has a web link for completing account creation, go there
  • select the new user name, new user password, say yes
  • new account is created automatically, notice is sent to the owncloud administrators

There is no owncloud app for self registration "with approval". If somebody starts creating spam user accounts and filling them with evil contents shared the world, it is only possible to delete the badnicks after the fact.

php-8 update

For Ubuntu-24 php-8.3.6, adjust settings:

  • edit /etc/php/8.3/apache2/php.ini
  • change post_max_size and upload_max_filesize to 100M, memory_limit to 600M, output_buffering to 0.
  • change opcache.interned_strings_buffer to 50, opcache.memory_consumption to 512
  • systemctl restart apache2

Update database missing indexes:

  • cd /nextcloud/
  • sudo -u www-data /bin/bash
  • php ./occ db:add-missing-indices

Update nextcloud:

  • php ./updater/updater.phar
  • php ./occ maintenance:repair --include-expensive
  • php ./occ db:add-missing-indices

Update to nextcloud-31:

  • php ./updater/updater.phar
  • again...
  • php ./occ maintenance:repair --include-expensive
  • php ./occ db:add-missing-indices

nextcloud 33 update

Update from nextcloud 31 to 32 to 33 bombed out with errors in "creating backups"

Manual update:

  • download the zip file
  • backup /nextcloud
  • delete all old files except data and config
  • unzip the new files
  • run occ upgrade, etc