LoginSignup
1
0

F-RevoCRMを自分的アレンジでインストールしてみた話

Last updated at Posted at 2024-03-08

前提条件

以下は事前に用意してあるものとする

  • Apache2互換Webサーバー(PHPインストール済み/php.ini編集済み/インターネットからReachable)
  • MySQLサーバー
  • SMTPサーバー
  • DNSレコード
  • SSL証明書
  • F-RevoCRM本体

今回は色々手間を省きたいので自前のサーバー資源を有効活用するため、DNSレコード以外を一緒くたに統合運用出来る、CyberPanel(OpenLiteSpeed/LiteSpeedPHP8.1)をインストールしたサーバーを利用します

  • OS:Ubuntu Server 22.04 LTS
  • CPU:仮想8コア
  • メモリ:仮想8GB
  • ストレージ:1TB
  • IPv4/IPv6デュアルスタック
  • CyberPanel(OpenLiteSpeed版)インストール・セットアップ済み
  • Apache2/PHPアンインストールとPHP実行環境をLiteSpeedPHPに置換済み
  • php.iniは別のサイトの設定の関係で編集済み

Apacheじゃないのはレギュレーション違反だって?知らない子ですね

では始めましょう

先ず徐にCyberPanelのメインドメインの下にサブドメインを追加します
今回は「crm.hsidr.work」とします。
スクリーンショット 2024-03-09 5.01.40.png
スクリーンショット 2024-03-09 5.04.00.png
スクリーンショット 2024-03-09 5.04.11.png
スクリーンショット 2024-03-09 5.04.58.png
DNSレコードがドメインのネームサーバーに登録済みであれば、この操作だけで自動的にバーチャルドメインの作成からLet's Encryptの証明書取得までやってくれます。ただし……

CyberPanel側のバグだと思うんですが、IPv4/IPv6デュアルスタックの場合、バーチャルドメインの設定(追加)がIPv4のリスナーポート設定「だけ」に反映されて、IPv6のポート80のリスナーポートには一切これっぽっちも反映されないので、LiteSpeedの管理画面に態々ログインしてあれこれしてあげる必要があります

スクリーンショット 2024-03-09 5.09.35.png

上記バグのため、最初のサブドメイン追加作業時に自己証明書による事実上無期限のオレオレ証明書による暗号化が行われてしまいますが、LiteSpeedの管理画面にログインしてリスナーポートを追加してあげた後で再度Let's Encryptの証明書取得を走らせるとちゃんと取得されるかと思います(ただし、回数制限を食らった場合を除く)

というわけでリスナーポートをあれこれして

スクリーンショット 2024-03-09 5.13.07.png
スクリーンショット 2024-03-09 5.13.55.png
スクリーンショット 2024-03-09 5.14.27.png
スクリーンショット 2024-03-09 5.15.40.png

再取得を走らせます

スクリーンショット 2024-03-09 5.18.20.png

今時IPv4/IPv6デュアルスタックに対応してないなんておっくれってるー!

SSLの取得が無事完了しているのを確認したら

スクリーンショット 2024-03-09 5.19.45.png

徐にCyberPanelのファイラーを開きます

スクリーンショット 2024-03-09 5.20.23.png

「ファイル管理」を開くとこの画面になるので「アップロード」を選んで

スクリーンショット 2024-03-09 5.23.28.png

ドラッグ&ドロップでF-RevoCRM本体が入ったZIPファイルを放り込みます

スクリーンショット 2024-03-09 5.22.11.png

ZIPファイルを解凍します。「抽出」を開いて

スクリーンショット 2024-03-09 5.24.43.png

解凍先ディレクトリを指定して

スクリーンショット 2024-03-09 5.25.08.png

解凍して生成されたディレクトリを開いて

スクリーンショット 2024-03-09 5.27.26.png

「移動」を開いて

スクリーンショット 2024-03-09 5.28.13.png

移動先をルートディレクトリに指定して、解凍されたファイルを移動します

スクリーンショット 2024-03-09 5.28.36.png

CyberPanelのホーム画面に戻って、データベース「frevocrm」を作成します

スクリーンショット 2024-03-09 5.30.55.png

ログイン情報を控えておいてください

スクリーンショット 2024-03-09 5.32.47.png

SSHでCyberPanelサーバーに接続します

cd /home/your_domain/crm
sudo composer install
yes

インストールウィザード

「crm.hsidr.work」へアクセスします

スクリーンショット 2024-03-09 6.24.52.png

言語を選択して「インストール」をクリックします

スクリーンショット 2024-03-09 6.26.23.png

ライセンス条項に「同意する」をクリックします

スクリーンショット 2024-03-09 6.27.38.png

環境に関する設定内容を確認し、変更がなければ「次へ」をクリックします

スクリーンショット 2024-03-09 6.27.47.png

config.inc.phpはこの時点では生成されていないので、「いいえ」のままで大丈夫です

データベースや初期ユーザーの登録を行います

スクリーンショット 2024-03-09 6.29.41.png

当たり前ですが、複雑さを満たすパスワードを設定してください

当たり前ですが、ユーザー名とパスワードを忘れずに控えておいてください

スクリーンショット 2024-03-09 6.33.41.png

アンケートに回答し、「次へ」をクリックします。

スクリーンショット 2024-03-09 6.35.42.png

インストールが始まります。コーラでも飲んでまったりと待ってください

スクリーンショット 2024-03-09 6.36.51.png

Oh...(トラブル遭遇)

スクリーンショット 2024-03-09 6.41.34.png

よくよくシステム条件の確認のスクリーンショットを見ると「tabdata.php」と「parent_tabdata.php」がないのを華麗に無視して進めていました

というわけでtabdata.phpとparent_tabdata.phpを公式GitHubからダウンロードして、本体と同様にしてCyberPanelのファイラーからF-RevoCRMのルートディレクトリにアップロードします

https://github.com/thinkingreed-inc/F-RevoCRM/blob/1c93604f549cffab7940a7fc5e905a87b64da961/tabdata.php
https://github.com/thinkingreed-inc/F-RevoCRM/blob/1c93604f549cffab7940a7fc5e905a87b64da961/parent_tabdata.php

SSHでCyberPnaelサーバーを触ります。

cd /home/your_domain/
chmod -R 777 crm

上記のディレクトリはご自分の環境に適宜置き換えてください
権限が777でええんか?という疑問はあるのですが、動かなくて色々弄っていた内におま環になったようで、777でないと色々動かないのでどうしようもない

インストール完了後、F-RevoCRMのホーム画面へ遷移します

スクリーンショット 2024-03-09 7.44.08.png

その他の初期設定

自社情報の設定

スクリーンショット 2024-03-09 7.46.56.png

一般ユーザー追加

スクリーンショット 2024-03-09 7.47.38.png

メール送信設定

スクリーンショット 2024-03-09 7.49.12.png

一連の作業を終えてみた感想

そこそこ熟れているせいか、トラブルらしいトラブルに遭遇しなかった遭遇はしたが大体なんとかなった

tabdata.phpとparent_tabdata.phpがどこからダウンロードできるのか調べるのに時間がかかったぐらいでその他は公式インストールガイドに従うだけで素直に初期状態まで正味3時間程度でインストールされてくれた

Apache推奨なだけあってもっとトラブルに遭遇するかと思ったのだが、(Open)LiteSpeedですんなり動いてしまった

上記手順では何もなかったかの様にしているが、うっかりHTTPS接続「ではなく」HTTP接続でインストールを進めてしまったため、後でHTTPSリダイレクトをCyberPanel側で設定した時に
HTTPS -> HTTP -> HTTPS ……
の無限ループに入ってしまった(config.inc.phpをエディタで書き換えて解決)
素直に最初からHTTPSリダイレクトを設定している状態でインストールを進めた場合はそんなことにはならない(はず)なので皆様におかれましては気をつけられませ
そんな凡ミスをするのは私だけだ

Apacheはそこそこ応答性の悪い重たいWebサーバーだと思っているのだが、利用者の皆さんはApacheで満足しているのだろうか……?
(まあ私のチューニングがへっぽこという説は大いにあるが)

そこそこ使ってるよ!みたいな内容は検索で見つかるが……

基本BtoBで安定性の高いシステムなせいか、感想はそこそこ見つかるのだが、あれこれトラブルに遭遇した系の記事にはあまり行き当たらなかった(深堀りしてないだけかもしれない)

それはそれとして

LiteSpeedは良いぞ。DBやメールサーバーも一緒に構築するのならCyberPanelでインストールするのがオススメ。もっとLiteSpeedの使い手よ増えてくれ

今後の課題

データのインポートは未挑戦なので適当なデータを用意して試してみたい

参考にさせていただきました

シンキングリード株式会社公式GitHub

公式インストールガイド

tabdata.phpとparent_tabdata.phpのありかを知る手掛かり

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0