【Docker】✕【Go】Webアプリの開発環境を構築してみる

Dockerを使ってかんたんにGoの開発環境を構築したいと思います。

Dockerを使ってのGoの環境構築

Dockerイメージの取得

今回は特にGoのバージョン指定はありませんので、最新版を使いたいと思います。

Dockerイメージからポートフォワーディングしたコンテナを起動

コンテナ起動時のオプションは以下のとおりです。

オプション 内容
d バックグラウンドで実行
t ターミナルによる対話型動作を可能にする
v フォルダの共有
name コンテナ名を指定
p [host-port]:[container-port] ホストのポートとコンテナのポートをポートフォワーディング

起動したコンテナにターミナルで接続する

ここまでで、GoのDocker環境構築は完了です。

作った環境でGoのWebサーバーを構築する

簡易Webサーバーを作る

ここまでの設定で環境構築ができれば以下のソースを書いたファイルを -v  オプションで指定したホスト側の環境に作成します。

8080ポートでListenし、httpでアクセスするとHello Worldというレスポンスを返すだけのソースです。

dockerを起動する際に p オプションでポートフォワーディングをしたと思います。今回のソースですと、host-portもcontainer-portも8080にしておくとわかりやすいかもしれません。host-portを変えた方はブラウザでアクセスする際のポート指定したポートにしてください。container-portを変えた方は上記のソースを指定したポートでListenするように変更してください。

Docker上でserver.goを実行する

ターミナルに戻り、/go/src配下まで移動してください。おそらく上記で記述したserver.goが存在するはずです。存在を確認したら以下のコマンドでserver.goを実行してください。

これでWebサーバーが起動したはずです。ホスト側からブラウザを使い、localhost:8080でアクセスするとHello World!と書かれた画面が表示されるはずです。

まとめ

どうだったでしょうか?今回はdockerを使いGo言語でかんたんにWebサーバーを構築しました。ポートフォワーディング等の少しネットワーク関係ののこともありましたが、比較的簡単にGoの環境が構築できました。今後はGo言語についても少しずつ触れていければと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です