開発記録
きっかけ
学生から活動し続けている絵描き活動を通じて、懇意にして貰っているアトリエがあります。こういうWebアプリケーションがあったら良いな!と思うところがあり、学習がてら自身で開発しようと思っています。個人開発だと主要機能がそろっている、Ruby(Rails)が良いとみんな口をそろえて言います。トラブルシューティング時のエラー解決手段の情報も揃っており、個人開発においては一番の強みかと思います。よって、Ruby on Railsでの開発を進めようと考えています。
まずは、チュートリアル系アプリを開発を通じて開発の感覚を掴んだ後、実際に自分が作りたいWebアプリケーションの開発に着手しようと考えています。今回は、Zenn Booksで紹介されている「【期間限定無料公開中】Todoアプリで学ぶ初心者のためのReactとRuby on Rails – TypeScript対応」で学習を進めました。当書はローカル環境での開発を想定していますが、実務ではUbuntuを使うことが多いので、あえてUbuntu22.04で各種セットアップ・インストールを済ませました。
できたもの
色々と仕組みを理解したいと思い、寄り道をしました。それでも概ね5-6時間の所要時間で完成しました。Backend↔Frontend間でのAPI通信も行われており、フレームワークに関する理解が深まったので、とても良い学習本でした。
利用記事
【2023年4月版】Ubuntu に node.js と npm を入れたい(バージョン管理も)
https://qiita.com/nouernet/items/d6ad4d5f4f08857644de
Ubuntu で最新の Ruby をインストールする方法
https://qiita.com/kerupani129/items/77dd1e3390b53f4e97b2
【期間限定無料公開中】Todoアプリで学ぶ初心者のためのReactとRuby on Rails – TypeScript対応
https://zenn.dev/tmasuyama1114/books/react-rails-todo
開発時の諸注意・補足事項
【調査メモ】Ubuntu で最新の Ruby をインストールする方法
git clone –depthはGitリポジトリをクローンする際に、履歴の深さを指定するためのオプションです。このオプションを使用すると、全ての履歴をクローンするのではなく、最近のコミットから指定した数のコミットだけをクローンすることができます。これは大規模なリポジトリをクローンする際のデータ転送量を減らすために役立ちます。
git clone –depth 1 <https://github.com/rbenv/rbenv.git> ~/.rbenv は、rbenvのリポジトリをユーザーのホームディレクトリにクローンします。ここでの –depth 1 オプションは、最新の1つのコミットのみをクローンすることを指定しています。これにより、不要なデータの転送を防ぎ、クローンのプロセスを高速化します。
cd ~/.rbenv && src/configure && make -C src
は、次の3つの操作を行っています。
cd ~/.rbenv
:ユーザーのホームディレクトリにある.rbenv
ディレクトリに移動します。src/configure
:現在のディレクトリ(つまり、.rbenv
)でconfigure
スクリプトを実行します。このスクリプトは、ソフトウェアをビルドする前にシステムをチェックし、適切な設定を行います。make -C src
:make
コマンドを使用して、src
ディレクトリでソフトウェアをビルドします。C
オプションは、指定したディレクトリ(この場合はsrc
)でMakefile
を探し、実行することを指定します。
トラブルシューティング:npmでネットワークエラーが発生する(npm ERR! code ENOTFOUND)
npm ERR! code ECONNRESET npm ERR! network aborted npm ERR! network This is a problem related to network connectivity. npm ERR! network In most cases you are behind a proxy or have bad network settings. npm ERR! network npm ERR! network If you are behind a proxy, please make sure that the npm ERR! network ‘proxy’ config is set properly. See: ‘npm help config’
npm ERR! A complete log of this run can be found in: /home/unfou/.npm/_logs/2024-03-07T13_11_18_663Z-debug-0.log
このエラーは、ほとんどの場合、プロキシの背後にいるか、ネットワーク設定が適切でないことを示しています。特に、’npm ERR! network’というエラーメッセージが表示されています。
プロキシの背後にいる場合は、’proxy’設定が適切に設定されていることを確認してください。ネットワーク接続が不安定であるか、または一時的な接続の問題が存在する可能性もあります。これらの問題を解決するためには、ネットワーク設定を確認し、必要に応じて修正することが求められます。
様々な要因があるみたいです。自分の場合はプロバイダーが原因だったので、Wifi接続を切り替えたら解決しました。以下は解決の一例です。
https://qiita.com/Coa3/questions/270b3f0eee14d7a8714f
トラブルシューティング:gemがインストールされていない(psych)
結論、psychがインストールされていなくても問題ありませんでした。