転載・引用について

ユーザ用ツール

サイト用ツール


tweet:2020:1215_01
no way to compare when less than two revisions

差分

このページの2つのバージョン間の差分を表示します。


次のリビジョン
tweet:2020:1215_01 [2020/12/15 03:13] – 作成 seirios
行 1: 行 1:
 +====== FreeBSD 12.1-RELEASE and OwnCloud ======
 +
 +OwnCloudを利用してファイル共有サービスを建てる。
 +
 +例によってFreeBSDで実装するが、今回は DB に PostgreSQL 13を利用することにする。
 +
 +Installに関しては [[https://vermaden.wordpress.com/2020/01/04/nextcloud-17-on-freebsd-12-1/]] を参考にしたが、ZFS関連などでいろいろ「本質的には不要」なファイルもあるので、その辺を省く。
 +
 +OwnCloudは更新が早いので、最新版に追従することを考えて、OwnCloud自身はportsを利用しないでInstallすることにする。
 +
 +===== FreeBSDの設定 =====
 +
 +以下、FreeBSDの設定を行う。
 +
 +==== Binary PackageのInstall ====
 +
 +標準状態で ZFS を root にして Install する
 +
 +<code>
 +# pkg install sudo postgresql12-client postgresql12-server nginx-devel memcached php74 php74-pecl-memcached php74-pdo_pgsql php74-pgsql
 +</code>
 +
 +本当はpostgresql13を利用したかったが、pkgでpdo-pgsqlを利用する関係で、postgresql12を利用することにした。将来更新で面倒なことになる可能性があるので悩ましいが、とりあえず現時点ではどうなるかの確認を兼ねてPGSQL12で試してみる。
 +
 +<WRAP>
 +FreeBSDのportsやNetBSDのpkgsrc、RHE系のyum等、Binary Package管理システムはこういうときに融通が効きにくいという辛みがある。
 +しかし、こうしないと派生のBinary Packageが大量に発生するという問題もあるので痛し痒しというところか...
 +
 +まぁ、そのために、portsでCompileする部分が残っているというのはあるが...
 +</WRAP>
 +
 +次に、PGSQLおよび格納ファイル用のzpoolを作成する
 +<code>
 +# zpool create -m none zdata /dev/ada1
 +# zfs create zdata/pgsql
 +# zfs set mountpoint=/var/db/postgres zdata/pgsql
 +# zfs set recordsize=8k zdata/pgsql
 +# chown -R postgres:postgres /var/db/postgres
 +</code>
 +
 +==== PostgreSQLに関する設定 ====
 +  * /etc/login.confでpostgresユーザーの各種LOCALE設定を投入する
 +    * <code>
 +# cat /etc/login.conf
 +postgres:\
 +        :lang=en_US.UTF-8:\
 +        :setenv=LC_COLLATE=C:\
 +        :tc=default:
 +
 +# cap_mkdb /etc/login.conf
 +</code>
 +  * PostgreSQLに関する起動時設定を行う。
 +    * 好みもあるが、/etc/rc.conf.localに記述する。/etc/rc.confに記述しても良い。
 +    * <code>
 +postgresql_enable=YES
 +postgresql_class=postgres
 +postgresql_data=/var/db/postgres/data12
 +</code>
 +  * PostgreSQLの初期化を行う
 +    * <code>
 +# /usr/local/etc/rc.d/postgresql initdb
 +</code>
 +  * PostgrSQLを起動
 +    * <code>
 +# service postgresql start
 +</code>
 +  * NextCloud用設定を投入
 +    * <code>
 +# psql -h localhost -U postgres
 +psql (12.5)
 +Type "help" for help.
 +
 +postgres=# CREATE USER ncadm WITH PASSWORD 'NC_DB_PASSWORD';
 +CREATE ROLE
 +postgres=# CREATE DATABASE nc TEMPLATE template0 ENCODING 'UNICODE';
 +CREATE DATABASE
 +postgres=# ALTER DATABASE nc OWNER TO ncadm;
 +ALTER DATABASE
 +postgres=# \q
 +</code>
 +  * PostgreSQLのCleanup(Vacuum)とIndex作成を自動で行うようにする
 +    * <code>
 +# mkdir -p /var/db/postgres/bin
 +# chown postgres /var/db/postgres/bin
 +# vi /var/db/postgres/bin/vacuum.sh
 +
 +#! /bin/sh
 +
 +/usr/local/bin/vacuumdb -az 1> /dev/null 2> /dev/null
 +/usr/local/bin/reindexdb -a 1> /dev/null 2> /dev/null
 +/usr/local/bin/reindexdb -s 1> /dev/null 2> /dev/null
 +
 +# chown postgres /var/db/postgres/bin/vacuum.sh
 +# chmod +x /var/db/postgres/bin/vacuum.sh
 +
 +# su - postgres -c 'crontab -e'
 +0 0 * * * /var/db/postgres/bin/vacuum.sh
 +
 +# su - postgres -c '/var/db/postgres/bin/vacuum.sh'
 +</code>
 +
 +==== NGINX ====
 +
 +==== Service Certificate ====
 +
 +==== PHP configuration ====
 +
 +==== Collaboration between PHP and PGSQL ====
 +
 +==== PHP FPM ====
 +
 +==== Start Backend service ====
 +
 +===== Nextcloud Configuration =====
 +
 +
 +
 +==== Config trusted domains ====
 +
 +==== Log rotation ====
  
tweet/2020/1215_01.txt · 最終更新: 2023/07/28 19:48 by seirios

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki