はじめに こんにちは、ishiy(@ishiy1993)です。 今日はstackを使ってdockerコンテナの中でHaskellプログラムを静的リンクでコンパイルする方法を説明します。 こんなことをしようと思った背景を書いておきます。まず僕は現在dockerやrktの活用に興味があります。そして先日こちらの記事でAlpine linuxを知りました。Alpine linuxは非常に軽いOSで公式のdockerイメージでたったの5MBです。ちなみにUbuntu 14.04のdockerイメージは190MBくらいあります。なのでAlpineをベースにすることで軽量なdockerイメージを作れます。しかし、Alpineはbusyboxとmusl libcをベースにしておりglibcなどがデフォルトではありません。stackで普通にビルドすると動的リンクされたアプリが作成され、そのアプリはglib