2023年03月10日
_ [computer] Rust、VSCode、そしてDocker
少し前に、本屋さんでRustの本を買ってみました。全く触ったと事の無い言語ですが、これから人気が出そうという事で、少し話題になっている(らしい)、言語です。
読み始めると、VSCodeを使ってやりましょうと、という事でVSCodeもインストール。VSCodeは、少し前から、今とても人気な開発エディタになっていまして、今後はVSCodeかなぁ、と思っていましたので、これは丁度良い機会でした。
ただVSCodeに関しての解説は、当然、必要なところだけの通り一遍なものなので、今後の為にも、VSCodeの解説本を購入してみました。
思えば、最初に触ったIDEは、NetBeansでした。昔はNetBeansを用いた本も出ていたので、買って読んだりもしましたが、なんとも中途半端に終わってしまいました。その後、やっぱEclipseかなぁ、とEclipseもインストールしてみましたが、あまり使わず、。私なんかがちょこっと使う分には、普通のエディタで充分なんですね。補完機能なんか、あまり使わないし、、
でもまぁ、これからの主流はVSCodeでしょう。使っている人も多いようですし。
でこのRustの本、もう少し読み進めると、DockerでPostgresqlを入れましょう、という事になっています。聞いた事は有る物の、Dockerは使った事は有りません。元々Rustの本なので、当然ですがかなり簡単な解説で、compose.yamlやDockerfileが出てくると、なんで、どうなって、こうなっているのか、がイマイチ判らないので、Dockerの本も買ってみました。結局、技術書を3冊も続けて買う事になりました。
解説本は例によって、WindowsやMac上での動作例ですが、途中までやってみたところで、Dockerの動作事例をLinuxの上ででも試してみる事にしました。Winsdowsとかでの動作は、結局の所、お試しにしかなりませんので。
最近ではWindows上でもLinuxが走りますが、そんな変なことをしなくても、Windows用としては動作が遅くて、もう使っていないパソコンは幾つか有るのでこれにLinuxを載せます。Lenovoの古いパソコンを、ストレージをSSDに交換してRockyLinuxをインストールしました。メモリがDDR2と言う古のパソコンでして、探したところ2GのDDR2メモリが有ったのでこちらも交換しました。またSSDと言っても、初期の頃に購入した、64Gや32Gとかのもう使っていない古いSSDです。
Linuxのディストリビューションは、CentOS8が既に見事に死んでしまった(EOL)ので、RockyLinux8にします。きょうびのLinuxなんて、何も見なくても簡単にインストール出来るよね、、と思ったのですが、少し判らない所も有ったりで、結局幾つかのインストール事例の記事を参考にさせて戴いて、インストールしました。
Dockerのインストールも、インストール事例の記事で教えてもらった通りでOKでした。Docker自体は、Windows上でも、Linux上でも同じなのですが、DockerHubでserchしたりpullしたりするとエラーになります。何だか、オーソライズされていない、とか出ているので、一応、DockerHubでアカウントも作ってみたのですが、docker loginも駄目でした。
色々見ていると、どうもDNSが駄目みたいなので、現状ルーターになっているDNSのアドレスを、"resolv.conf"で"8.8.8.8"に変更してみたら、無事通りました。Windowsからですと何も問題無いのですが、細かいところは不明です。でもリスタートすると、RockyLinux(つまりCentOS)は、"/etc/resolv.conf"を書き換えていても、NetworkManagerと言うのに上書きされてしまうらしいので、そちらの方から直しておかなければならない様です。こちらも、変更方法を調べて、書き換えておきました。
後は、WindowsやMac上での本の通りで、何も問題無いようです。遅くてストレージも少ないパソコンですが、GUIも使わないLinuxですと、充分早いです。
Dockerは、結構面白かったですが、Rustの勉強の方は、そこの冊子半分位の所で止まってしまっています。言語の方は、「所有権」とかが特徴でメモリの安全性が重視されているらしいのですが、私などにはどうもそれらのコンセプトが、あまりピンときません。セキュリティ重視の場面では大事なのでしょうが、私のは結局は趣味のプログラミングなので、面倒くさい事を言わず楽しく書けるのが一番です。そういう意味では、昔のK&RのCが一番素敵と言う事になっちゃいますかねぇ。