インストール時に変更されるファイル類について

OpenShiftへのインストール

OpenShiftへのインストールを考えております。
OpenShift(CakePHP+MariaDB)の場合、通常のインストーラー画面からの設定を行うとそのPodでは正常にWebを開設できますが、異なるPodにアクセスすると再度インストーラーが表示されてしまいます。
そこでインストーラーで設定した段階で変更されるファイル達をあらかじめ設定した状態にしたいと思っています。(つまりインストーラーが動作せず直ぐにWebのTOP画面が表示されるように)

インストーラで設定されるファイル達、生成されるファイル達を教えてください。
また、それらに対する設定方法についても教えてください。

こんにちは!

生成されるファイルについては、Gitを利用してインストール前後の差分を取ってみました。
長いリストのためテキストファイルにしてあります:

basercms_files_after_install.txt (38.6 KB)

設定についてはパーミッション関連は以下の記事が参考になるかと思います:
[baserCMS] パーミッション変更 - Qiita

また、app/Config/database.phpapp/Config/install.phpの設定も必要かと思います。既存サイトの中身などを参考に設定してみてください。

1 Like

ありがとうございます!
なかなかのボリュームですね( ;∀;)

2Webサーバー(Disk腹持ち)構成がOpenShift環境のPodの概念に近いと思いますが
その場合、みなさんどのように運用されているのでしょうか?

やっぱり2Webサーバー+NAS等の共有ディスク構成がほとんどなんでしょうか

1 Like

こんにちわ。

既にリストアップされていますが、インストール時に生成されるファイルは

app/Config/database.php(データベースの接続先)
app/Config/install.php(設置毎の固有のsalt値、URLなどの設定)
app/View/Pages/フォルダ (固定ページ)
app/tmp/ フォルダ (キャッシュ、ログ、セッション等)
css/admin/ フォルダ (管理画面用静的コンテンツ、なくてもOK)
img/admin/ フォルダ (管理画面用静的コンテンツ、なくてもOK)
js/admin/ フォルダ (管理画面用静的コンテンツ、なくてもOK)
files/ フォルダ (管理画面よりアップロードした画像などのファイル置き場所)
theme/ フォルダ(インストール時、または、管理画面で選択したテーマのファイル)

になります。

でその中でも重要なファイルとしては、
app/Config/database.php(データベースの接続先)
app/Config/install.php (設置毎の固有のsalt値など)
になります。(上記2ファイルが無いとインストール画面が出てきます、、、)

複数台Webサーバー設置時で検討が必要なところとしてはキャッシュ、セッション、および、アップロードファイルの保存先を何処にするかというところかと思われます。

database.php、install.phpはそれぞれ同じファイルを各webサーバへ設置で問題ないと思われます。(FTPで手動で設置、git pullなどでデプロイ、等々)

セッション、キャッシュは通常は app/tmp/内にできますが、CakePHPの仕組み上、DBやRedis、Memcachedなど別のサーバに作れます。このあたりは、問題解決がしやすいです。

あとはfilesフォルダの管理画面からアップロードされる画像などの保存先を何処にするか、というところが悩むところかな、とおもいます。

記載いただいている通りNASとかをNFSとかでfilesフォルダごとマウントするのがお手軽ですが、パフォーマンスとのトレードオフではないでしょうか。

規模の大きめなサイト構築をご検討のようでしたら、
一度baserCMS開発経験のあるパートナーさまへご相談されてみるのはいかがでしょうか。

よろしくお願いします。

2 Likes

詳細な解説ありがとうございます!
物理でも仮想でもインストールできるWebサーバーなら良いのですが
OpenShift独特のPodという基盤上での構築となり連日頭をフル回転させております(笑)

で今日、光が見えてきました

S2IでGitからPullするソースのwebrootではないフォルダにbaseCMSのソースを入れ
デプロイする際にrunスクリプトにてPV領域にCopyする方式です(^^♪

OpenShiftに構築を検討されている方がいらっしゃれば参考にしてください。

3 Likes