2015-12-01 102 views
1

我想在遠程linux虛擬機上使用Docker.DotNet(Docker Rest Api的ac#封裝)創建一個映像,但是隻有我的Dockerfile的第一行被讀取:Dockerfile中只讀第一行

FROM ubuntu:14.04 
RUN apt-get update && apt-get install -y php5-cli 

因此,只有基本的Ubuntu映像已創建,並且php尚未安裝。我已將Dockerfile中的文件結尾轉換爲\ n(Unix)而不是\ r \ n(Windows),但這沒有任何效果。根據我的api調用,圖像存儲庫名稱也未被設置。

奇怪的是,如果我只包括在我的Dockerfile一行:

FROM ubuntu:14.04 

然後圖像庫的名稱設置,所以它看起來像在第二行中的東西引起的問題。

這是在Docker.DotNet調用BuildImageFromDockerfileAsync方法:

static async Task BuildImageFromDockerfile(DockerClient client) 
    { 
     var parameters = new BuildImageFromDockerfileParameters 
     { 
      RepositoryTagName = "test-image-python", 
      RemoveIntermediateContainers = false 
     }; 

     using (var fileStream = new FileStream(@"C:\Users\Dan\Desktop\DockerProjects\helloworld-py.tar", FileMode.Open)) 
     { 
      await client.Miscellaneous.BuildImageFromDockerfileAsync(fileStream, parameters, new CancellationToken()); 
     } 
    } 

任何幫助,將不勝感激。

+0

UPDATE:在追問,在/var/log/upstart/docker.log日誌,我收到此錯誤信息:客戶端斷開,取消作業:建立 –

+0

連接被關閉了的問題,所以這看起來是Docker.DotNet的問題。希望我有機會創建一個pull請求並在接下來的幾周內解決這個問題,除了BuildFromDockerfile之外,我發現這個庫非常有用。就目前而言,我只是在c#中自己調用api。 –

回答

1

被關閉的連接是問題,所以這看起來是Docker.DotNet的問題。希望我有機會創建一個pull請求並在接下來的幾周內解決這個問題,除了BuildFromDockerfile之外,我發現這個庫非常有用。就目前而言,我只是在c#中自己調用api。 - 丹·奧利裏