# LN docker 開発環境構築 ## 経緯 m1 mac だとVirtual box/Vagrant での環境構築ができないらしい。 なので、ローカル開発ができないので、**急ぎでdockerで開発環境構築をする必要があるとのこと** ## LNの技術 利用されている技術について(自分調べ) Webサーバー: nginx バックエンド: PHP/Laravel フロント: Vue2系(vue-property-decorator)/webpack データベース: mariadb ## 質問 - docker コンテナ構成について 以下考慮し個人的には分けたい - 分けた場合のメリット - 今後のバージョンアップのやりやすさや、保守性の向上が見込める - コンテナが分かれている事でバージョンアップなどをしたくなった時に影響範囲が分かれているのでやりやすそう - docker の設定内容の管理に関しても別コンテナに分けて記述を分けた方がわかりやすい - 工数が増え実装が遅れる - 上記の問題などが発生するためコンテナ分けパターンの方が工数が増える - ただ分けるかどうかに関してだけで考えればそこまで大きく工数は変わらないような気もしている?(市丸さん相談) - コンテナを分けない場合の保守性が良くなる - https://qiita.com/kotamat/items/1f3f12a1c78612065e47 - 社内の研修アプリもフロントバックエンドでコンテナ分割してもらっていたので分けれるなら分けた方がいい? - 分けない場合のメリット - 分ける場合、初回画面遷移時のテンプレート呼び出しの記述が今と変わりそうなのでそれを避けれる - LNではアクセスがあった際に.bladeファイルを呼び出している構造なのでコンテナを分けた際にその作りの部分を全てVue-routerなど他の記述にしないといけなそう - [blade を一度呼び出している所](https://github.com/scene-live/list-navigator/blob/master/routes/web.php) - 対応した場合にデグレとかあった時に行けるのか?反映時に全ページ開くか手動確認は必須になりそう - 仮想環境構築後に、本番環境で不具合が発生する可能性を減らせそう - うまくいった場合にルーティングに関しての構造を今のbladeを呼び出す構造を使いまわせる - 工数は若干少なくなりそう - コンテナを分けて作るよりは、今の状態をそのままコンポーネントで作る方が工数は少ない - ただ分けるかどうかに関してだけで考えればそこまで大きく工数は変わらないような気もしている?(市丸さん相談) - フロントのビルドツールを、現状のwebpackのままか、Viteを採用するか npmやvueのバージョン変更が可能なら多分導入可 - webpack で行くメリット - 工数が少ない - 今のビルドのままなので工数は減りそう - moduleの依存関係などで諸々問題が発生しない - Viteにする場合、バージョンの兼ね合いで今のnpmだと入らなかったので諸々、moduleのバージョン変更は必要そう - バージョン変更した際に、今使っているモジュールが古いバージョンしか動かないからそこだけ代用とか今のLNだと全然あり得そう - Vite メリット - ビルドが早い - 変更時に勝手に反映(ホットリロード) - Vue公式対応なので安心 - Vue2系でバージョンは異なるが、vue-property-decoratorも動作確認済み - nginx のバージョンに関しては - 最新のやつにかえてもよろしいでしょうか? ``` # 現状の仮想環境のnginx のバージョン [root@localhost ~]# nginx -v nginx version: nginx/1.20.1 ``` 問題なさそうであれば、hope-platform-api の設定を流用させてもらおうと思ってます。 --- ## 決まったこと・方針 CentOs にApache を入れて建てて欲しい ディレクトリは今のままで。ビルドは後でいいので先やる DatabaseのコンポーネントとCentOSのWeb側コンポーネント二つ構成でやる。 ### docker のバージョン一覧 ==インストールのバージョン指定の兼ね合いで完全には一致していないがメジャーバージョンは合わせています== #### CentOS w1: 7.8.2003 docker: CentOS Linux release 7.9.2009 #### apache w1では「Apache/2.4.46」 ``` sh-4.2# httpd -v Server version: Apache/2.4.6 (CentOS) Server built: Mar 24 2022 14:57:57 ``` #### mariadb #### nodejs w1: 「v12.19.0」 docker: v12.22.12 #### PHP w1では「PHP 7.4.12 (cli)」 ``` ``` #### laravel w1では「6.20.30」 ``` ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up