Dockerチャレンジ1年生(留年)2
※今回は特に備忘録というか試行錯誤と失敗のメモです 前回記事の参考qiita記事に(概ね)従って進めていたが、いくつか止まる
- ローカルとのマウントがうまく行かず、create-react-appコマンドの結果のプロジェクトがローカルにできない。 これはdocker-comporse.ymlとdockefileに記載するディレクトリ名があっていない状態だったので。どちらかがローカルのマウントする側かと勘違いしていた。
正しくはいずれもコンポーネント内のディレクトリで、マウントされるのはdocker-compose run(コマンド指定にcreate-react-appあり)を実行するディレクトリとなるらしい。
該当の記事がdockerの操作とreactアプリケーションの開発開始手順を一度に進めている且つ説明が割愛されている様子? nodeが乗ったイメージを取得して、containerを作って実行する際に同時に必要なライブラリのインストールとreactプロジェクトの作成を行っている?
dockerFileに一度に記載できないものなのだろうか、と思いつつ本筋は環境構築ではない状態なので、ひとまず飛ばす。
typescriptで作る
その場合は、docker-compose run時に指定しているcreate-react-app に対して --typescript を付与する。
react-router
react-routerを入れたいなと思い、とりあえずcontainerに直接入りnpm installを実行していたところ時間がかかった。 そしてinstallが完了する前に、containerを止めてしまった。
docker-compose up コマンドで実行した場合に、docker-compose.ymlのcommandでアプリケーションの開始を指定しており、npm startを止めるつもりでCtrl+Cを押したらcontainerまで止まってしまった…
結局react-routerもrunコマンドに追加して、一応typescriptで動きました。
本当はローカル環境に立てたいのだけど、スペックのあまり良くないマシンだし、macのディレクトリお作法がわからず不要なものを盛々とどこかに残していく状況が嫌で。
次はこれを読む