はじめに
スクールの課題で、「まずEC2にアプリをデプロイしてみよう。」というものが出された。
調べれば新しいものから古いものまで、いろんな情報が出てくる。
とりあえず見たままコマンドコピペして進めていたけれど、一体今何をやろうとしているのか分からない、エラーがまるで意味不明
という状況になり、挫折。時間はかかるが、ある程度の基礎知識を身に着けながら進めたほうが早そうと判断。
課題も無事終えたので、復習がてら、とり貯めたメモをベースに整理。
パッケージのインストール時に適当に打ったコマンド
$ sudo yum -y install git make gcc-c++ patch libyaml-devel libffi-devel libicu-devel zlib-devel readline-devel libxml2-devel libxslt-devel ImageMagick ImageMagick-devel openssl-devel
$ curl -sL https://rpm.nodesource.com/setup_16.x | sudo bash -
$ sudo yum install -y nodejs
$ curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
$ sudo yum install -y yarn
Node.jsもyumもyarnも最初は「???」で、とりあえずググって出てきたコマンドを実行してインストールしてた。
以下まとめ
Linux
Linuxのパッケージ管理ツールとして、yum、dnfがある(dnfが後継)。
Javascript
JavascriptをOS上で実行するための環境を用意してくれるのがNode.js。
(本来JavascriptはWebブラウザ上でのみ動作するものなので、こいつを用意する必要がある)
Javascriptのパッケージ管理ツールとして、npm、yarnがある。
Railsに深く関わるパッケージの例として、webpack(というか今は必須)。
なお、Node.jsのバージョン管理人として、nvmがある。
Ruby
Rubyのパッケージ管理ツールとして、Gemがある。RubyGemsと呼んだりもする。
(パッケージ群そのものをGemと呼ぶこともあって、紛らわしい)
パッケージ同士の依存関係の面倒まで見てくれるパッケージ管理ツールとして、Bundlerがある。
BundlerもGem(パッケージ)の一つ。
rubyのバージョン管理人としてrbenvがある。
ruby-buildはrbenvのプラグイン。このプラグインを入れると、$ rbenv install <version>
コマンドが打てるようになり、特定のバージョンを選択してインストールし、バージョン切替が自由にできるようになる。
参考
-
Javascript、Node.js、npm、nvmなど
Node.jsとはなにか?なぜみんな使っているのか?
そもそもnpmからわからない
いまさら聞けない!npmのこれだけは知っておきたい基礎知識 -
RubyのGem
Rubyのgemとは?概要から使い方までの解説まとめ -
rbenvとruby-build
Ubuntuでのrbenv,ruby-buildの使い方と事前準備に必要なaptパッケージ -
ここに登場したLinuxコマンド
curlコマンドの使い方 ~GET、POST、REST(json)の確認と、windowsでの利用手順
curl option 覚え書き
LinuxコマンドでWEBからファイルをダウンロードする方法 (wget, curl) -
今からデプロイの参考にさせていただくとしたら
【 Ruby on Rails 6.0 】AWS + Nginx + Unicornでデプロイ①
ひとこと
勉強すること、多くない?
上に載せた以外にも、倍くらいの記事とかサイトに当たってると思う。
楽しいんだけど、仕事しながらだと体力勝負って感じ。
課題やったら知らないことが増えた。