为什么Yesod从独立堆栈快照安装失败?

我正在尝试学习Yesod,但不能离开地面,因为我似乎无法安装它。 为了确保我自己的系统(Mac,Haskell平台)不影响它,我试图build立一个Docker镜像来播放。这里是我的Dockerfile ,即使你对Docker一无所知,它应该很简单看看我在做什么:

 FROM ubuntu:14.04 ENV HOME /root ENV PATH /root/.cabal/bin:$PATH RUN apt-get update && \ apt-get install -y ghc ghc-haddock zlib1g-dev curl && \ cd /tmp && \ curl http://hackage.haskell.org/package/cabal-install-1.20.0.3/cabal-install-1.20.0.3.tar.gz | tar xzf - && \ cd cabal-install-1.20.0.3 && \ sh ./bootstrap.sh && \ cabal update && \ sed -i "s%^remote-repo: .*%remote-repo: stackage:http://www.stackage.org/stackage/46bb2d7487546939e22612e7d757f1df5a5163e9%" /root/.cabal/config && \ cabal update RUN cabal install alex happy yesod-bin 

所以总结一下,我把Ubuntu做了准备工作,安装ghc,haddock,zlib头文件和curl,刚刚从源代码下载并安装cabal-install ,然后我就这样做了,然后按照Stackage的说明,将现有的远程Cabalconfiguration中的-repo行与堆栈快照。

似乎一切工作到这一点,但yesod斌不能安装:

 root@35bacb9e52e1:~# cabal install yesod-bin Resolving dependencies... cabal: Could not resolve dependencies: trying: yesod-bin-1.2.12.4 (user goal) trying: streaming-commons-0.1.4.2 (dependency of yesod-bin-1.2.12.4) trying: unix-2.6.0.1/installed-f12... (dependency of streaming-commons-0.1.4.2) trying: yaml-0.8.9 (dependency of yesod-bin-1.2.12.4) next goal: aeson (dependency of yaml-0.8.9) rejecting: aeson-0.8.0.0 (conflict: unix => bytestring==0.10.0.2/installed-4f9..., aeson => bytestring>=0.10.4.0) Dependency tree exhaustively searched. 

我知道那里有冲突,但我不明白如何解决这个问题。 任何帮助,将不胜感激。

呃,没关系,Ubuntu的GHC是7.6.x所以它可能是:(