
Не уверен, что произошло, но до прошлой недели я мог клонировать репозитории git через URI на основе SSH в моих контейнерах Windows на основе контейнера dotnet-framework-docker
. Теперь, внезапно, без предупреждения, когда я пытаюсь клонировать - даже публичный репозиторий, я получаю эту ошибку:
C:\>git clone [email protected]:atrauzzi/praxis.git
git clone [email protected]:atrauzzi/praxis.git
Cloning into 'praxis'...
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Вот простой пример Dockerfile
, который можно использовать для воспроизведения проблемы:
FROM microsoft/dotnet-framework
SHELL ["powershell"]
# Install Git
RUN New-Item -ItemType Directory -Force -Path 'c:/git';
RUN Invoke-WebRequest "https://github.com/git-for-windows/git/releases/download/v2.15.1.windows.1/Git-2.15.1-64-bit.exe" -OutFile "/git-installer.exe" -UseBasicParsing;
RUN Start-Process -FilePath C:/git-installer.exe -ArgumentList '/VERYSILENT', '/NORESTART', '/NOCANCEL', '/SP-', '/DIR="c:/git"' -PassThru | Wait-Process;
RUN rm /git-installer.exe;
Я не уверен на данный момент, что может быть причиной этого. Единственное подозрительное в том, что если я пытаюсь запустить mingw based ssh.exe
, он печатает пустую строку и затем завершается.
Некоторые подозрения у меня, очевидно, связаны с mingw и тем фактом, что я запускаю что-то в контейнере.
копийhttps://github.com/Microsoft/dotnet-framework-docker/issues/61
решение1
Это всего лишь предположение, но я подозреваю, что образ фреймворка dotnet уже имел ключ SSH для GitHub... Тем не менее, изучаяhttps://github.com/git-for-windows/git/issues/1403как корень/идеальное решение.