LoginSignup
0
1

More than 1 year has passed since last update.

VSCodeとdevcontainerとWSL2(ubuntu)で最新バージョンのテスト開発環境を。

Last updated at Posted at 2022-05-21

開発言語やフレームワークのバージョンを最新に変えると、イキナリ動かなくなる!コトは多いと思います。Pythonならpyenvを使えば良いのでしょうが、例えばrubyやRust、node.jsやJSフレームワーク(Angular、React、Next、Vue、Gatsby…)の場合はどうすれば?。

結論

VSCodedocker,そしてVSCodeの拡張機能であるRemote Containersで実現可能。

当方の現環境

  • Windows10 Home 19043.1706
  • VSCode: 1.67.2
  • node v12.18.3
  • Gatsby CLI: 2.12.95
  • Gatsby: 2.25.0
    にて本番環境を構築し運用している。

当方の目的

  • わたしの場合、最新バージョンGatsbyでWebサイトを新しく開発したい。そして今ある既存の本番環境に影響を与えたくない(Gatsby version 2.xxを使っているところにいきなりGatsby CLI version 4.xxにしたら90%以上の確率でビルドできなくなると思う)。
  • ゆえに既存環境に影響を与えない開発環境を新しく作りたい。

手順

1 WSL2でubuntuが動くようにしておく。

WSL2でubuntuが動くようにしておく。
やり方はこちら :point_right_tone2: WSL2+ubuntu20.04: GUI化して使う方法の前半「Microsoft Storeからubuntu20.04をインストール」までを参考に。

2 dockerをインストールする。

dockerをインストールする。
dockerはデフォルトインストールするだけ。何の設定もしない。

3 コンテナ(作業スペース)となるフォルダを作成する。

コンテナ(作業スペース)となるフォルダを作成する。

まず、WSL2を立ち上げ、image.png

WSL2のUbuntuで作業スペース(コンテナ)となるフォルダ(ディレクトリ)を作成しておく。ここではホームディレクトリ配下に"workspace"フォルダを作った。

hoge@LAPTOP-Q8RLNGHD:~$ mkdir workspace
hoge@LAPTOP-Q8RLNGHD:~$ pwd
/home/hoge/workspace

image.png


次にVSCode側の作業。

  1. VSCodeを開く。

  2. 「ファイル」 → 「新しいウインド」

  3. 青いボタンの「フォルダを開く」をクリック image.png

  4. するとローカルPCのフォルダが開かれるが、 image.png

  5. ローカルPC上にフォルダを作成しそれをコンテナにしても良いのだが、めっちゃパフォーマンス遅くなります。キャンセルしていったん閉じて、

  6. VSCodeの左下の緑色のアイコンをクリック。
    image.png

  7. 「新しいWSLウインドウ」を選ぶimage.png

  8. 新しいVSCodeのウインドウが開く(リモートに接続しました、と表示されている)。青いボタン「フォルダを開く」をクリック。image.png

  9. WSLのUbuntuのディレクトリ階層が表示される。最初に作成しておいたworkspaceを選ぶ。OKをクリック。image.png

  10. 左枠の「ソース管理」アイコンをクリックして現れる青いボタン「リポジトリを初期化する」をクリック(画面ではなぜか英語になってしまったがInitialize Repository。image.png

  11. ファイル表示に戻して「Reopen Container」を選ぶ。image.png

  12. この画面になる。image.png

  13. node で検索して出てくるNode.jsを選ぶ。image.png

  14. 16-bullseys(default)のままで良い。エンター。image.png

  15. 何もチェックしなくてよい。OKをクリック。image.png

  16. これで一応完成である。image.png

  17. VSCodeのコマンドラインでnodeのバージョンが最新であることを確認できる。image.png


4 Gatsby最新バージョンインストール

当方ではGatsby最新バージョンの開発環境が欲しいので、Gatsby-cliをインストールする。しかし、VSCodeのコマンドラインでnpm install -g gatsby-cliとやってもできない
スミマセン、npm install -g gatsby-cliでインストールできます。

Dockerfileをいじって行う。

手順

  1. Dockerfileを開く。image.png

  2. 最終行にRUN su node -c "npm install -g gatsby-cli"を追加。image.png

  3. 左下の緑のバーをクリックして、Rebuild Containerを選ぶ。image.png

  4. 完成しました。gatsby --versionとVSCodeのコンソールで打ってみて下さい。image.png

  5. 最新バージョンの4.14.0がインストールされました。image.png

ここからは普通にgatsby new [サイト名]から始めて開発を進めていくだけ。WSL上にコンテナを作ったのでビルド(gatsby build)の速さは通常と変わらない。ぜひ試してみて下さい。

確認

まったくいじらなかったDockerの画面を見てみる。
image.png

コンテナがひとつ出来ている。これはVSCodeで先のワークスペースを開いていればRunしている状態になり、VSCodeを閉じると勝手にStopする。削除しないように注意。


宣伝

静的サイトジェネレーターGatsbyの基本とnode APIの扱いについて踏み込んで解説・ハンズオンした電子書籍を上梓しましたので、よろしければお手に取ってみて下さい。

JAMStackを学ぼう Gatsby, React bootstrap, Netlifyでつくる企業サイト ~もうレンタルサーバーはいらない~


GatsbyとmicroCMSを組み合わせてのコーポレートサイト作成手順を解説・ハンズオンした続編を上梓しました。どうぞお手に取ってみて下さい。

JAMStackを学ぼう GatsbyとmicroCMSでつくるコーポレートサイト ~WordPressはもう古い~


0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1