Rust開発のはじめかた
Rust開発を行う為に、なるべく簡単でシンプルな方法で環境構築します。今時は特に理由が無ければローカルを汚さないようにDocker + VS Codeで構築するのが良いでしょう。
インストール
Docker
まずはDockerをインストール。ここではお手軽にDocker Desktop。
VS Code
VS Codeも環境に合わせてインストール。
VS Code Plugins
リモートコンテナ開発の必須プラグインと、必須ではないですがRust用の開発効率アップのプラグインを入れていきます。いずれもそのままでRemoteContainer内で有効です。
-
Remote Containers
- リモートコンテナ開発の必須プラグイン
-
rust-analyzer
- 便利なRust Language Server
-
crates
- 依存ライブラリのバージョンチェック
-
Even Better TOML
- toml言語拡張
rust-analyzer はファイルの保存時にClippyでチェックする設定がオススメです。
"rust-analyzer.checkOnSave.command": "clippy"
コンテナの作成
コンテナの作成は、左下の [><] ボタンから「Open Folder in Container...」を選択します。
ファイルダイアログが開くので、コンテナにマウントする作業用フォルダを選択、または作成してOpenします。
「Add Development Container Configuration Files」の選択肢から「Rust」を選択してコンテナを作成します。OSや追加機能はデフォルトでOKです。
初回のコンテナのダウンロードとビルドが走り、完了すると作業フォルダが開き、左下の [><] ボタンを見るとコンテナ内であるのがわかります。
そして、View -> Terminal からターミナルを開き、rustc のバージョンを確認します。
vscode ➜ /workspaces/test_rs $ rustc --version
rustc 1.56.1 (59eed8a2a 2021-11-01)
また、必須ではありませんが、ビルドターゲットがContainerにマウントされたローカルディレクトリだとビルドに大変時間がかかり開発効率が良くありません。
デプロイ用のビルドは別に考えるとして、開発中は速度アップの為に .devcontainer > Dockerfile に以下のようにビルドディレクトリを変更する設定を追加しておくと開発がしやすくなります。
ENV CARGO_BUILD_TARGET_DIR=/tmp/target
プロジェクトの作成
続いて Cargo で Rust プロジェクトを作成します
$ cargo new hello
実行して確認しましょう。
$ cd hello
$ cargo run
Hello, World!
まずはここまでで、開発をスタートするまでのセットアップは完了です。
参考記事
Discussion