リモート開発メインのソフトウェア開発企業のエンジニアブログです

Windows 版 Amazon WorkSpaces での開発

背景

とあるお客様のお仕事では、Amazon WorkSpaces の環境が各人に渡されて、そこでほぼ全ての作業が行われます。

Amazon WorkSpaces では、OS を Windows と Linux から選ぶことが出来るのですが、私はドキュメントを読み書きしたりする業務が多いので、Microsoft Office が使えるという理由で Windows 版を選択しましたが、開発作業も行います。

結論: 開発にはあまり向かない

先に結論から書くと、Windows 版の Amazon WorkSpaces では、開発作業にはあまり向きません。理由は以下の通りです。

  • Docker が使えない(試してないけど VirtualBox なども使えないはず)
  • WSL が使えない

なお、開発作業は、Linux や macOS が前提となっている事が多いので、通常の Windows で開発をするのにもそれなりにコツだったり知識が要求されます。Windows での開発環境に関しては、少し古いですが以前記事を書いたので、参照して下さい。

Windows で開発環境を構築する – もばらぶエンジニアブログ

では、どうやっているか

Docker, WSL 無しの Windows で開発作業を行うのは、飛車角落ちでの将棋のようなもので、かなり辛いです。が、どうやっているかについて簡単に記載します。

Git for Windows の Git Bash を使う

Windows で開発する際には Git for Windows をインストールすると思いますが、それの Git Bash で、UNIX 系のコマンドがある程度使えます。

MinGW, MSYS を使う

ただ、Git Bash だけだと使えないコマンド、出来ない作業が色々あります。make, gcc などを使うビルド作業などが典型的なものです。

その場合、前述の「Windows で開発環境を構築する」にも記載しましたが、MinGW, MSYS を入れると良いと思います。

GCC だけで良ければ TDM-GCC もあり

最近、何かの SO での投稿で知ったのですが、Windows で GCC を使う場合に、TDM-GCC という選択肢もあります。

Download | tdm-gcc

MinGW, MSYS での環境構築は、それなりに色々やることがあるので、単に GCC だけが使いたい場合であれば、TDM-GCC も検討してみて下さい。

私の場合、とある Go のパッケージのインストールに GCC が必要となったので、TDM-GCC を使いました。Go のビルドでは、依存ライブラリなどがあまり必要では無く GCC だけあれば大丈夫なことが多いので、TDM-GCC で問題無かったです。

DB 等のサーバーは直接インストール

MySQL などのサーバー関係は、通常の開発であれば Docker コンテナなり Vagrant box 内で動かしますが、Windows の Amazon WorkSpaces では使えないため、MySQL などは Windows 用のバイナリを普通にインストールする必要があります。

XAMPP とかを使っても良いかもしれません。懐かしい・・・

まとめ

リモートワークが増えてきた昨今、Amazon WorkSpaces などの DaaS で仕事をする機会も増えてきています。

Amazon WorkSpaces では Windows と Linux が選べますが、Windows 版に関しては、Docker, WSL, VirtualBox などが使えないので、開発作業を行う場合には Linux を選ぶことを強くお勧めします。

← 前の投稿

Terraform で秘密情報を扱う

次の投稿 →

ELECTRAの解説

コメントを残す