doc4.ec-cube.net icon indicating copy to clipboard operation
doc4.ec-cube.net copied to clipboard

[WIP]開発環境構築手順の再整備

Open m-pyon23 opened this issue 2 years ago • 1 comments

概要

従来のインストール手順は、「ECCUBE4を動作させる」ことに重点をおいて書かれているように個人的に感じているが、 一歩踏み込んで「カスタマイズ・本体開発に利用できる開発環境を一から構築する」という観点の記事を再整備したい。

参考:Growi 開発ガイド

開発環境構築についてはQiita等の個人記事で触れられていることは多いと思うが、最新バージョンに対応した開発環境構築方法は公式の開発者ドキュメントとして用意しメンテナンスできないか。

もちろん開発者によって好みのエディタや構築方法などはあると思うが、「これに従えば開発を開始できる」ものを再検討することは開発者の参入のしやすさにつながるのではないかと考えている

たたき台

コンテナ開発を行うことを前提に、以下のような開発環境構築手順を作成してみました。 WSLのセットアップ・Gitの設定・VSCodeの準備・ワークスペース準備・devcontainerの起動

※元々「DockerComposeを用いてインストールする」への勘所に追記のようなつもりで作成していましたが、 補足を加えたら当初とかなり粒度が変わってしまったため、別ドキュメントとしての提案に至ります。

http://localhost:4000/quickstart/dev-startup-v2

localhost_4000_quickstart_dev-startup-v2 (1)

盛り込みたかった内容

  • 「ECCUBE4のDockerは遅い」と言われることが多いため、対策を記述したい。ここをしっかり整理したいのが本題の一つ

  • Windows版DockerDesktop (WSL Based) は、ワークスペースをWSLファイルシステムに配置することで飛躍的に速度が改善する旨は強く伝えたい

  • Mac用の記述はWindowsユーザーの筆者が想像で書いているので、有効さを検証した上で盛り込みたい

    • マウントディレクトリを(src,app,html のみに絞ることで高速化を図る方法は有効と聞くため、明確に効果が見られるならパフォーマンス対策として記述したい
    • Mac/M1 は docker-compose.ymlにplatform: linux/amd64 指定を行うことで動作可能になると聞くが、M1利用者による検証が必要
    • Macに関してはDocker を勧めつつも、ダメならビルトインサーバ + Symfony/Cliを用いた構築 に誘導する

その他メモ

  • [ ] ECCUBE4のDockerfileはイメージビルド後の初期インストール周りの扱いにクセがあるが https://github.com/EC-CUBE/ec-cube/pull/5369 の適用で扱いやすくなると感じているため、導入に合わせて不要な記述は削除したい
  • [ ] 単純にインストール方法ページを増やすだけでは新規参入者が迷うだけなので、古いインストール方法も多少整理出来ないか
    • [ ] 既存のXAMPPやMAMPによる開発環境構築は2022年現在の手法としては古く、特にWindowsネイティブのXAMPP環境ではCLI利用等に制約があるため、アーカイブ記事のような形に出来ないか

m-pyon23 avatar Jun 15 '22 15:06 m-pyon23

とりあえずこういった粒度で書いてみたのですがいかがでしょうか…ということで…。 一応Windowsならこれでそれなりに快適な環境を準備できるものにはなっていると思います。 (MacはMacユーザに検証していただく必要あり)

こういった粒度の記事を公式開発者ドキュメント上に置けないか、もう少し新規参入者が環境構築しやすくなる方法など検討できないかなどご相談したく思います。

m-pyon23 avatar Jun 15 '22 15:06 m-pyon23