Kuzunoha-NEのブログ

プログラミングなどの勉強をしてます

【Docker】Windowsで「curl」コマンド使いたい件について[byrnedo/alpine-curl]

お世話になっております。葛の葉です。

WindowsPowerShellにはInvoke-WebRequestというLinuxBASHでいうところのcurlみたいなコマンドがついていて、何かHTTP系に色んなテストをしてみたいときなんかは有効です。しかし、curlに慣れていたりするとコマンドが打ちにくい、結果もなんだかわかりにくい等、curlがやっぱり使いたい、ってときがあります。

そんなときに便利なDockerImageがbyrnedo/alpine-curlです。

hub.docker.com

使い方は書いてある通り

先のURLにも書いてありますが…まぁ書いておきます。

docker pull byrnedo/alpine-curl

先ず、DockerImageをダウンロードするため、上記のコマンドを打ちます。-tオプションでタグを指定するのもよいと思いますが、まぁ気にしなくてもいいかなぁと思います。ダウンロードが終われば使用可能です。

docker run --rm byrnedo/alpine-curl (url)

このコマンドでHTTPのrequestを確認することができます。

なお、dockerの--rmオプションは、コンテナを通してコマンドを実行し、そのコマンドが完了したときにそのコンテナを消す、というオプションになります。curlコマンドは何回も使うはずなので、そのたびにコンテナのカスが溜まっていくことを防いでいるわけですね。

docker run --rm byrnedo/alpine-curl https://www.google.co.jp

Googleのサイトをcurlで受け取ればソースコードを取得できます。あとはcurlの操作そのまま使えるので調べて使ってみてみてくださいな。

なお、Win版のcurlもある模様

下記URLにあります。一番下のほうにWindows64bit用のリンクがあるので、それを落としてbinフォルダ以下に環境変数PATHを通してあげましょう。PowerShellではcurlコマンドがInvoke-WebRequestにaliasされているので、curl.exeってコマンドになるか、あれこれ設定をしてあげなきゃあいけません。詳しくはググってもらったほうがいいかな。

curl.haxx.se

参考

qiita.com