NextCloud в контейнере: различия между версиями
Дым (обсуждение | вклад) Нет описания правки |
Дым (обсуждение | вклад) |
||
(не показано 10 промежуточных версий этого же участника) | |||
Строка 8: | Строка 8: | ||
GRANT ALL PRIVILEGES ON SCHEMA public TO nextcloud; | GRANT ALL PRIVILEGES ON SCHEMA public TO nextcloud; | ||
=Настройка и запуск службы= | =Настройка и запуск службы= | ||
#Свежеразвернутый для облака альт-контейнер | #Свежеразвернутый для облака альт-контейнер сходу обновил: | ||
#:{{cmd|# apt-get update && apt-get -y dist-upgrade}} | #:{{cmd|# apt-get update && apt-get -y dist-upgrade}} | ||
#Поставил нужные в дальнейшем пакеты — | #Поставил нужные в дальнейшем пакеты — первым делом тот, что тянет за собой всё остальное для некст-клауда: | ||
#:'''<code># apt-get install -y installed-db-office-server-nextcloud php8. | #:'''<code># apt-get install -y installed-db-office-server-nextcloud php8.2-{apcu,ldap,opcache,pdo_pgsql,pgsql} htop lsof mc</code>''' | ||
#Добавил модуль '''<code>pdo</code>''' для постгре: | #Добавил модуль '''<code>pdo</code>''' для постгре: | ||
#: | #:'''<code># sed -i 's|=pgsql.so|&\nextension=pdo_pgsql.so|' /etc/php/8.2/apache2-mod_php/php.d/pgsql.ini</code>''' | ||
#Изменил в {{path|/etc/httpd2/conf/sites-enabled/000-default_https.conf}} | #Изменил в {{path|/etc/httpd2/conf/sites-enabled/000-default_https.conf}} имя сервера, добавив под ним обработку заголовка: | ||
#:<source lang= | #:<source lang=ini> | ||
ServerName cloud:443 | ServerName cloud:443 | ||
<IfModule mod_headers.c> | <IfModule mod_headers.c> | ||
Строка 21: | Строка 21: | ||
</IfModule> | </IfModule> | ||
</source> | </source> | ||
#Состряпал конфиг для подключения к СУБД | #Состряпал конфиг для подключения к СУБД: | ||
{|class="mw-collapsible mw-collapsed wikitable" | {|class="mw-collapsible mw-collapsed wikitable" | ||
!/etc/nextcloud/config/config.php | !/etc/nextcloud/config/config.php | ||
Строка 28: | Строка 28: | ||
<?php | <?php | ||
$CONFIG = array ( | $CONFIG = array ( | ||
'trusted_domains' => | 'trusted_domains' => | ||
array ( | array ( | ||
0 => 'cloud', | 0 => 'cloud', | ||
Строка 53: | Строка 53: | ||
</source> | </source> | ||
|} | |} | ||
{{Внимание|сетевые имена и адреса ставьте свои, как и содержимое полей '''<code>db{type,host,name,user,password}</code>'''}} | |||
После чего: | После чего: | ||
*стартанул апача ({{cmd|# systemctl enable --now httpd2}}, | *стартанул апача ({{cmd|# systemctl enable --now httpd2}}), | ||
*через веб-морду некст-клауда создал админа с паролем, | *через веб-морду некст-клауда создал админа с паролем, | ||
*рестартанул апача, | *рестартанул апача, |
Текущая версия от 06:09, 6 мая 2024
Подготовка базы данных
На постгре-серваке создал соответствующую базу с одноимённым пользователем:
CREATE USER nextcloud WITH PASSWORD 'n3x7-c10ud' 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;
Настройка и запуск службы
- Свежеразвернутый для облака альт-контейнер сходу обновил:
- # apt-get update && apt-get -y dist-upgrade
- Поставил нужные в дальнейшем пакеты — первым делом тот, что тянет за собой всё остальное для некст-клауда:
# apt-get install -y installed-db-office-server-nextcloud php8.2-{apcu,ldap,opcache,pdo_pgsql,pgsql} htop lsof mc
- Добавил модуль
pdo
для постгре:# sed -i 's|=pgsql.so|&\nextension=pdo_pgsql.so|' /etc/php/8.2/apache2-mod_php/php.d/pgsql.ini
- Изменил в /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>
- Состряпал конфиг для подключения к СУБД:
/etc/nextcloud/config/config.php |
---|
<?php
$CONFIG = array (
'trusted_domains' =>
array (
0 => 'cloud',
1 => '10.0.1.196',
),
'dbtype' => 'pgsql',
'dbname' => 'nextcloud',
'dbuser' => 'nextcloud',
'dbpassword' => 'n3x7-c10ud',
'dbhost' => 'psql-0',
'dbport' => '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',
'overwrite.cli.url' => 'http://cloud/nextcloud',
'overwriteprotocol' => 'https',
);
|
После чего:
- стартанул апача (# systemctl enable --now httpd2),
- через веб-морду некст-клауда создал админа с паролем,
- рестартанул апача,
- перезашёл в веб-морду созданным админом.
Пока полёт нормальный.