Я пытаюсь создать изображение на удаленном Linux vm с помощью Docker.DotNet (aC# wrapper для Docker Rest Api), но читается только первая строка моего файла Docker:Только первая строка, прочитанная в файле Docker
FROM ubuntu:14.04
RUN apt-get update && apt-get install -y php5-cli
Следовательно, было создано только базовое изображение Ubuntu, и php не был установлен. Я преобразовал окончание файла в свой файл Docker в \ n (Unix), а не в \ r \ n (Windows), но это не повлияло. Имя репозитория изображения также не устанавливается в соответствии с моим вызовом api.
Как ни странно, если бы я только включать одну строку в моей Dockerfile:
FROM ubuntu:14.04
Затем имя изображения хранилище установлено, поэтому он выглядит как-то во второй строке вызывает проблему.
Это метод, который вызывает BuildImageFromDockerfileAsync в Docker.DotNet:
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());
}
}
Любая помощь будет оценена.
ОБНОВЛЕНИЕ: при проверке журналов в /var/log/upstart/docker.log, я получаю следующее сообщение об ошибке: Клиент отключен, отменил задание: build –
Закрытие соединения было проблемой, и так что это выглядит проблемой Docker.DotNet. Надеюсь, у меня будет возможность создать запрос на растяжение и исправить это в ближайшие недели, так как помимо BuildFromDockerfile я нашел библиотеку очень полезной. На данный момент я просто делаю вызов api в C#. –