我正在嘗試使用docker組合來爲本地開發綁定一些haskell服務。大部分時間我在stack ghci
中亂搞,運行單元測試等,但我也需要能夠運行符合依賴關係的代碼。 Docker撰寫非常適合:我可以運行依賴項(數據庫,其他服務等),並將所有內容鏈接在一起。如何使用Haskell Stack和Docker Compose?
堆棧有docker支持。它可以在docker: enable: true
的Docker容器中構建,也可以使用stack image container
創建可執行映像。
如何從docker-compose.yml
內使用堆棧的泊塢窗功能?
version: "3"
services:
my-service:
# how can I use `stack image container` here? Is it possible?
build: '.'
links:
- other-service
env_file:
- test.env
other-service:
image: other-service-image
我必須讓我自己Dockerfile,或者是有一些方法來使用stack image container
功能?
後續問題:是否有某種方法可以運行stack ghci
以及來自Docker撰寫文件的所有設置(env,鏈接等)?
至於我知道,堆棧的docker集成與docker-compose(還沒有?)很好地協作,但請看一下使用stack + docker-compose的示例的servant-docker堆棧模板。它不使用堆棧的docker集成,但對我來說工作還行。 – Erik
如果有幫助,這裏是我的示例項目:https://github.com/chrissound/ArchCompareTryCatchDeploy –