NextCloud в контейнере: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Нет описания правки
Строка 4: Строка 4:
  # apt-get install -y htop lsof mc installed-db-office-server-nextcloud php8.0-{apcu,ldap,opcache,pgsql,pdo_pgsql}
  # apt-get install -y htop lsof mc installed-db-office-server-nextcloud php8.0-{apcu,ldap,opcache,pgsql,pdo_pgsql}
На постгре-серваке создал базу '''nextcloud''' с одноимённым пользователем.
На постгре-серваке создал базу '''nextcloud''' с одноимённым пользователем.
<source lang=ini>
CREATE USER nextcloud WITH PASSWORD 'password' CREATEDB;
CREATE USER username CREATEDB;
CREATE DATABASE nextcloud TEMPLATE template0 ENCODING 'UTF8';
CREATE DATABASE nextcloud OWNER username TEMPLATE template0 ENCODING 'UTF8';
ALTER DATABASE nextcloud OWNER TO nextcloud;
GRANT CREATE ON SCHEMA public TO username;
GRANT ALL PRIVILEGES ON DATABASE nextcloud TO nextcloud;
</source>
GRANT ALL PRIVILEGES ON SCHEMA public TO nextcloud;
Добавил модуль '''pdo''' для постгре:
Добавил модуль '''pdo''' для постгре:
  # sed -i 's|=pgsql.so|&\nextension=pdo_pgsql.so|' /etc/php/8.0/apache2-mod_php/php.d/pgsql.ini
  # sed -i 's|=pgsql.so|&\nextension=pdo_pgsql.so|' /etc/php/8.0/apache2-mod_php/php.d/pgsql.ini

Версия от 03:21, 10 июля 2023

Развернув альт-контейнер в проксмоксе, обновил его:

# apt-get update && apt-get -y dist-upgrade

Поставил нужные в дальнейшем пакеты — в т.ч. тот, что тянет за собой всё остальное для некст-клауда:

# apt-get install -y htop lsof mc installed-db-office-server-nextcloud php8.0-{apcu,ldap,opcache,pgsql,pdo_pgsql}

На постгре-серваке создал базу nextcloud с одноимённым пользователем.

CREATE USER nextcloud WITH PASSWORD 'password' CREATEDB;
CREATE DATABASE nextcloud TEMPLATE template0 ENCODING 'UTF8';
ALTER DATABASE nextcloud OWNER TO nextcloud;
GRANT ALL PRIVILEGES ON DATABASE nextcloud TO nextcloud;
GRANT ALL PRIVILEGES ON SCHEMA public TO nextcloud;

Добавил модуль pdo для постгре:

# sed -i 's|=pgsql.so|&\nextension=pdo_pgsql.so|' /etc/php/8.0/apache2-mod_php/php.d/pgsql.ini

Изменил ServerName и под ним добавил обработку заголовка:

/etc/httpd2/conf/sites-enabled/000-default_https.conf  
    ServerName cloud:443
    <IfModule mod_headers.c>
        Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
    </IfModule>

Стартанул апача:

# systemctl enable --now httpd2

Дополнил создавшийся при запуске конфиг такими полями:

/etc/nextcloud/config/config.php  
  'dbtype' => 'pgsql',
  'dbname' => 'nextcloud',
  'dbuser' => 'nextcloud',
  'dbpassword' => 'password',
  'dbhost' => 'psql-0:5432',
  'dbtableprefix' => 'oc_',
  'default_language' => 'ru',
  'force_language' => 'ru',
  'default_locale' => 'ru_RU',
  'force_locale' => 'ru_RU',
  'default_phone_region' => 'RU',
  'log_type_audit' => 'systemd',
  'logtimezone' => 'Asia/Irkutsk',
  'memcache.local' => '\OC\Memcache\APCu',

Через веб-морду некст-клауда создал админа с паролем и рестартанул апача.

Зашёл.

Пока полёт нормальный.