first commit
This commit is contained in:
3
areas/nextcloud/00-init.md
Normal file
3
areas/nextcloud/00-init.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Nextcloud install
|
||||
|
||||
Here I document my practicing of installing Nextcloud on a linux server (ubuntu 20.04) with different methods.
|
||||
21
areas/nextcloud/01-requirements.md
Normal file
21
areas/nextcloud/01-requirements.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# Requirements (20240311)
|
||||
|
||||
| Platform | Options |
|
||||
| ----------- | -------------------------------------------------------------- |
|
||||
| OS (64-bit) | - **Ubuntu 22.04 LTS** (recommended) |
|
||||
| | - Ubuntu 20.04 LTS |
|
||||
| | |
|
||||
| Database | - MySQL 8.0+ or MariaDB 10.3/10.5/**10.6** (recommended)/10.11 |
|
||||
| | - PostgresSQL 12/13/14/15/16 |
|
||||
| | |
|
||||
| Webserver | - **Apache 2.4 with `mod_php` or `php-fpm`** (recommended) |
|
||||
| | - nginx with `php-fpm` |
|
||||
| | |
|
||||
| PHP Runtime | - 8.0 (deprecated) |
|
||||
| | - 8.1 |
|
||||
| | - **8.2 (recommended)** |
|
||||
| | - 8.3 |
|
||||
|
||||
## Comments
|
||||
|
||||
The package repos of Ubuntu 20.04 LTS only support php up to version 7.4. Higher versions are not delivered by the apt package manager. The latest version of php is 8.3 (20240312).
|
||||
87
areas/nextcloud/02-php_modules-and-configuration.md
Normal file
87
areas/nextcloud/02-php_modules-and-configuration.md
Normal file
@@ -0,0 +1,87 @@
|
||||
## Source
|
||||
|
||||
<https://docs.nextcloud.com/server/latest/admin_manual/installation/php_configuration.html>
|
||||
|
||||
## PHP Modules
|
||||
|
||||
This section lists all required and optional PHP modules. Consult the
|
||||
[PHP manual](https://php.net/manual/en/extensions.php) for more information on modules.
|
||||
You can check the presence of a module by typing `php -m | grep -i <module_name>`.
|
||||
If you get a result, the module is present.
|
||||
|
||||
Required:
|
||||
|
||||
- PHP
|
||||
- PHP module ctype
|
||||
- PHP module curl
|
||||
- PHP module dom
|
||||
- PHP module fileinfo (included with PHP)
|
||||
- PHP module filter (only on Mageia and FreeBSD)
|
||||
- PHP module GD
|
||||
- PHP module hash (only on FreeBSD)
|
||||
- PHP module JSON (included with PHP >= 8.0)
|
||||
- PHP module libxml (Linux package libsml2 must be >=2.7.0)
|
||||
- PHP module mbstring
|
||||
- PHP module openssl (included with PHP >=8.0)
|
||||
- PHP module posix
|
||||
- PHP module session
|
||||
- PHP module SimpleXML
|
||||
- PHP module XMLReader
|
||||
- PHP module XMLWriter
|
||||
- PHP module zip
|
||||
- PHP module zlib
|
||||
|
||||
Database connectors
|
||||
|
||||
- PHP module pdo_mysql (MySQL/MariaDB)
|
||||
|
||||
_Recommended_ packages:
|
||||
|
||||
- PHP module intl (increases language translation performance and fixes sorting of non-ASCII characters)
|
||||
- PHP module sodium (for Argon2 for password hashing, bcrypt is used as fallback,
|
||||
but if passwords were hashed with Argon2 already and the module is missing, your users can't log in.)
|
||||
|
||||
Required for specific apps:
|
||||
|
||||
...
|
||||
|
||||
For preview generation (_optional_):
|
||||
|
||||
- PHP module imagick
|
||||
- avconv or ffmpeg
|
||||
- OpenOffice or LibreOffice
|
||||
|
||||
For command line updater (_optional_):
|
||||
|
||||
- PHP module phar (upgrades Nextcloud by running `sudo -u www-data php /var/www/nextcloud/updater/updater.phar`)
|
||||
|
||||
## ini values
|
||||
|
||||
The following ini settings should be adapted if needed for Nextcloud:
|
||||
|
||||
- `apc.enable_cli`: see [Memory caching](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html)
|
||||
- `disable_funcitons`: avoid disabling functions unless you know exactly what you are doing
|
||||
- `max_execution_time`: see [Uploading big files](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html)
|
||||
- `memory_limit`: should be at least 512MB. See also [Uploading big files](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html)
|
||||
- `opcache.enable` and friends: See [Memory caching](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html) and [Server tuning](https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html)
|
||||
- `open_basedir`: see [Hardening and security](https://docs.nextcloud.com/server/latest/admin_manual/installation/harden_server.html)
|
||||
- `upload_tmp_dir`: see [Uploading big files](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html)
|
||||
|
||||
## php.ini configuration notes
|
||||
|
||||
Keep in mind that chagnes to `php.ini` may have to be configured on more than one ini file. This can be the case, for example, for the `date.timezone` setting. You can search for a parameter with the following command: `grep -r date.timezone /etc/php`.
|
||||
|
||||
### php.ini used by the Web server:
|
||||
|
||||
```apache2
|
||||
/etc/php/8.0/apache2/php.in
|
||||
or
|
||||
/etc/php/8.0/fpm/php.ini
|
||||
or ...
|
||||
```
|
||||
|
||||
### php.ini used by the php-cli ans so by Nextcloud CRON jobs:
|
||||
|
||||
```
|
||||
/etc/php/8.0/cli/php.ini
|
||||
```
|
||||
19
areas/nextcloud/03-required-pkgs.md
Normal file
19
areas/nextcloud/03-required-pkgs.md
Normal file
@@ -0,0 +1,19 @@
|
||||
# Packages to install
|
||||
|
||||
## classical LAMP stack
|
||||
|
||||
- apache2
|
||||
- mariadb-server
|
||||
- libapache2-mod-php
|
||||
- php
|
||||
- php-{bcmath,curl,ctype,dom,gd,gmp,imagick,intl,mbstring,mysql,posix,xml,zip}
|
||||
- ffmpeg (video encoding)
|
||||
|
||||
## nginx stack (not tested yet)
|
||||
|
||||
- nginx
|
||||
- mariadb-server or 'mysql'
|
||||
- php
|
||||
- php-fpm (important)
|
||||
- php-{bcmath,curl,ctype,dom,gd,intl,mbstring,posix,xml,zip} (NOT ALL)
|
||||
- ffmpeg
|
||||
5
areas/nextcloud/04-installation-on-linux.md
Normal file
5
areas/nextcloud/04-installation-on-linux.md
Normal file
@@ -0,0 +1,5 @@
|
||||
## Introduction
|
||||
|
||||
In case one prefers installing from the source tarball, one can setup Nextcloud from scratch using a classical LAMP stack (Linux, Apache, MySQL/MariaDB, PHP).
|
||||
|
||||
Here we note a general overview of required dependencies and their configuration. For a distribution specific setup guide have a look at the [Example installation on Ubuntu 22.04 LTS].
|
||||
@@ -0,0 +1,3 @@
|
||||
## Command Line
|
||||
|
||||
<https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/occ_command.html#command-line-installation-label>
|
||||
3
areas/nextcloud/66-installing-from-commandline.md
Normal file
3
areas/nextcloud/66-installing-from-commandline.md
Normal file
@@ -0,0 +1,3 @@
|
||||
## Autoinstall form command line
|
||||
|
||||
<https://docs.nextcloud.com/server/stable/admin_manual/installation/command_line_installation.html>
|
||||
Reference in New Issue
Block a user