senooken JP Social
  • FAQ
  • Login
senooken JP Socialはsenookenの専用分散SNSです。
  • Public

    • Public
    • Network
    • Groups
    • Popular
    • People

Conversation

Notices

  1. Y.Yamashiro@IA Revo申込済 (shukukei@yukari.cafe)'s status on Monday, 08-Oct-2018 21:36:50 JST Y.Yamashiro@IA Revo申込済 Y.Yamashiro@IA Revo申込済

    本運用には至りませんでしたが、後で見直したいこともあるかな?と思ったので、ブログ記事に残しておきました。
    https://mojizuri.jp/2018/10/08/pleroma%e3%82%a4%e3%83%b3%e3%82%b9%e3%82%bf%e3%83%b3%e3%82%b9%e3%82%92%e7%ab%8b%e3%81%a6%e3%81%a6%e3%81%bf%e3%81%9f%e3%80%82%ef%bc%88%e5%82%99%e5%bf%98%e9%8c%b2%ef%bc%89/

    In conversation Monday, 08-Oct-2018 21:36:50 JST from yukari.cafe permalink

    Attachments

    1. No result found on File_thumbnail lookup.
      Pleromaインスタンスを立ててみた。(備忘録)
      By Y.Yamashiro from もじずり技術会

      少し気になっていたので実際にPleromaインスタンスを設置してみることにしました。
      (現状は実験的取り組みのため、URLは非公開とさせていただきます。)
      次に構築する時に備えて、以下に備忘録を残しておきます。

      ・サーバ
      サーバは、IDCFクラウドさんのLight.S1プラン(0.4円/h, 200円/月)に、ディスク容量はとりあえず20GB(1GBあたり 0.04円/h, 20円/月)で、合計600円/月という構成です。

      ・OS
      とりあえずUbuntu 18.04.1を使用しました。
      ISOイメージ( http://cdimage.ubuntu.com/releases/18.04/release/ubuntu-18.04.1-server-amd64.iso )からインストールを実行。

      ・パーティション構成

      マウントポイント サイズ オプション
      Reserved BIOS boot area 1.0 MB
      /boot 0.5 GB
      / 10.0 GB
      /var/lib/postgresql 10.0 GB noatime nodiratime
      swap max

      ・OSインストール後に実施したこと
      注)実験環境の為、rootユーザで実行していますがsudoを利用することをお勧めします。

      IDCFクラウドさんの環境に最適化するために「open-vm-tools」をインストールします。
      # apt install open-vm-tools

      OSをアップデートします。
      # apt update
      # apt upgrade

      ファイアウォールの設定やSSHサーバの設定、カーネルパラメータの設定を行います。
      <セキュリティ上の理由により非公開>

      PostgreSQLをインストールして、データページチェックサムを有効にします。
      # apt install postgresql postgresql-contrib
      # systemctl stop postgresql
      # su postgres
      $ cd
      $ rm -rf /var/lib/postgresql/10/main
      $ /usr/lib/postgresql/10/bin/initdb –no-locale -E UTF-8 -D /var/lib/postgresql/10/main -k
      $ exit

      パフォーマンスチューニングを実施。
      # vi /etc/postgresql/10/main/postgresql.conf

      権限を設定。
      # vi /etc/postgresq/10/main/pg_hba.conf

      PostgreSQLを起動して、ユーザとデータベースを作成します。
      # systemctl start postgresql.service
      # su postgres
      $ cd
      $ psql
      CREATE USER pleroma_testuser PASSWORD ‘passw0rd’;
      create database pleroma_testdb owner pleroma_testuser;
      \q
      # apt install apache2 git build-essential openssl imagemagick
      # wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
      # dpkg -i erlang-solutions_1.0_all.deb
      # apt update
      # apt install elixir erlang-dev erlang-parsetools erlang-xmerl erlang-tools

      ユーザを追加してPleromaをインストールします。
      (Wikiを参考に作業を進めました。 https://git.pleroma.social/pleroma/pleroma/wikis/home )
      # adduser pleroma_testuser
      # su pleroma_testuser
      $ cd
      $ git config –global user.email “メールアドレス”
      $ git clone https://git.pleroma.social/pleroma/pleroma.git pleroma
      <使用したバージョンは https://git.pleroma.social/pleroma/pleroma/commit/4f03bb22998b9713d84dc8e81a3d63bb60c5b648 です。>
      $ cd ~/pleroma
      $ mix deps.get
      Shall I install Hex ? Y
      $ mix generate_config
      Shall I install rebar3 ? Y
      $ cd config
      $ mv generated_config.exs prod.secret.exs

      設定を調整します。
      (/config/config.exsがサンプルファイルなのでこれを見ながら設定しました。)
      $ vi prod_secret.exs
      <ここでオブジェクトストレージを使用する設定を行いますが上手くいきませんでした。>
      IDCFクラウドさんのオブジェクトストレージ(S3互換)とは上手くつながりませんでした。
      おそらく現バージョンのPleromaはv4にしか対応しておらず、現在のIDCFクラウドさんのオブジェクトストレージはv2のため互換性が無い。
      次にConoHaのオブジェクトストレージ(Openstack Swift)への接続を試しましたが、こちらも上手くつながりませんでした。

      $ exit
      # su postgres -c ‘psql -f config/setup_db.psql’
      # su pleroma_testuser
      $ MIX_ENV=prod mix ecto.migrate

      systemdの設定を行います。
      (/installation/pleroma.serviceがサンプルファイルなのでこれを見ながら設定しました。)
      # vi /etc/systemd/system/pleroma-test.service
      [Unit]
      Description=Pleroma social network
      After=network.target postgresql.service
      [Service]
      User=pleroma_testuser
      WorkingDirectory=/home/pleroma_testuser/pleroma
      Environment="HOME=/home/pleroma_testuser"
      Environment="MIX_ENV=prod"
      ExecStart=/usr/local/bin/mix phx.server
      ExecReload=/bin/kill $MAINPID
      KillMode=process
      TimeoutSec=15
      Restart=on-failure
      [Install]
      WantedBy=multi-user.target

      # systemctl daemon-reload
      # systemctl enable /etc/systemd/system/pleroma-test.service
      # systemctl start pleroma-test.service

      稼働状況をチェックします。
      # journalctl -fu pleroma-test.service

      ・感想
      インストール作業は手順通りに進めていけば特に難しい点もなくあっさり動いてくれました。
      メモリ消費量も少なくて済むので安価なVPSでもサクサク動作してくれますし、configファイルで設定が行える点や、シンプルなWebUIなどとても気に入っているのですが、管理用のWebUIが欲しいなぁ・・・と思いました。

    Feeds

    • Activity Streams
    • RSS 2.0
    • Atom
    • Help
    • About
    • FAQ
    • TOS
    • Privacy
    • Source
    • Version
    • Contact

    senooken JP Social is a social network, courtesy of senooken. It runs on GNU social, version 2.0.2-beta0, available under the GNU Affero General Public License.

    Creative Commons Attribution 3.0 All senooken JP Social content and data are available under the Creative Commons Attribution 3.0 license.