2017-06-29 48 views
1

我正在关注来自堆栈和docker的turorials以通过docker运行haskell构建。哈斯克尔堆栈图像容器执行在Docker上运行

大厦和图片创作的作品很好,我能我使用的是构建在最新的堆栈功能来创建这个最低配置docke图像通过docker run -p 5000:5000 {imagename} {app-exe}

运行应用程序。

image: 
    container: 
     base: "fpco/ubuntu-with-libgmp" 

如何让图像自动启动可执行文件,以便我可以只键入docker run -p 5000:5000 {imagename}。我知道如何在dockerfile中做到这一点,但不是在堆栈中。我在想,我必须使用:

entrypoints: 
     - appname-exe 

没有成功,不管我是否只使用可执行文件的名称或绝对路径。也许我不明白什么是入口点。

我正在使用Docker for Mac。

任何建议表示赞赏。

干杯 比约恩

+0

您是否阅读过[documentation](https://docs.haskellstack.org/en/stable/docker_integration/)?特别是'run-args'字段和'--docker-run-args'标志? – user2407038

+0

是的,我做了,问题不是通过堆栈运行应用程序,问题是当我创建图像,然后通过码头运行它。无法看到run-args会如何帮助我,尤其是当我以后在码头堆栈中编写应用程序时。 –

回答

3

我想通了自己。一切工作正常,我只是不明白,堆栈创建两个单独的图像。一个是为环境而设,另一个为入口。

所以我查了docker images,发现有两张照片。我很简单地运行错误的图像。这是正确的 docker run -p 5000:5000 {imagename-app-exe}

男人有时你看不到森林。