dockerとvscodeでrust環境を構築する on Windows10
はじめに
windows10上で、rustのdocker containerを作成し、 vscode上で編集したrustのソースコードをビルドして実行するまでの手順を示す。
概要図を挿入したい
手順
- rustのdocker imageを取得する
- rustのdocker containerを作成する
- vscodeのextensionをインストールする
docker containerの作成
dockerの記事リンク
container作成のため、rustのdocker imageをdocker hubより入手する。 windows上で、powershellを用いて下記コマンドを実行する。
> docker pull rust
下記コマンドを用いて、rustのdocker imageをダウンロードできたことを確認する。
> docker images REPOSITORY TAG IMAGE ID CREATED SIZE rust latest 2f75dad0e7a5 4 weeks ago 1.28GB
pull
したときにTagを指定していないため、Repositoryにrust
、Tagにlatest
と表示される。
正しくダウンロードできていない場合は、Repositoryにrust
が表示されない。
imageをダウンロードできたら、containerを作成する。
docker run --name rust-env -it -d rust /bin/bash
vscodeのextension
Remote - Containers をインストールする。
vscode extensionの記事
rustプロジェクトの作成とビルド、実行
vscode上にあるメニューバーのTerminalからNew Terminal
を選択してrust-envのterminalを起動する。
起動したterminalパネルから、rust環境向けのディレクトリを掘っておく。
$ mkdir rust $ cd rust
rustのツールcargo
を用いてプロジェクトを作成する。
今回helloプロジェクトを作成する。
$ cargo new hello
helloディレクトリ以下にディレクトリ及びファイルが作成されていることを確認する。
$ ls hello Cargo.toml src $ ls hello/src main.rs
vscode上にあるメニューバーのFileから作成したプロジェクトを開く。 Open Folderから作成したhelloを選択する。
図を挿入したい
main.rsはデフォルトでmain.rs
というファイルが作成されている。
fn main() { println!("Hello, world!"); }
cargo
コマンドを用いて、helloプロジェクトのビルドとバイナリを実行することができる。
cargo build
すればビルドだけ実行できる。
ビルド済みでcargo run
すればバイナリ実行だけ行うことができる。
$ cargo run Compiling hello v0.1.0 (/home/dogsnail/rust/hello) Finished dev [unoptimized + debuginfo] target(s) in 3.23s Running `target/debug/hello` Hello, world!
最後に
dockerを用いてrustプロジェクトを作成し、バイナリを実行する手順を示した。 次回は、rustファイルの分割および、外部ファイルを用いる方法を説明する。