New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Not possible to use Docker Remote Host via SSH #989
Comments
Unfortunately, this feature is not supported in Testcontainers for .NET due to limitations in Docker.DotNet. Until it becomes supported in Docker.DotNet, there is not much we can do, - sorry. For some time now, I have been considering generating and implementing a .NET client from the official OpenAPI specification, including adding support for various contexts, but I haven't had the time yet. As a workaround you can expose the Docker endpoint via HTTP (TCP). |
@HofmeisterAn thanks for the blazingly fast response! I fully understand the situation and also saw dotnet/Docker.DotNet#575 which might provide a solution, once it is finished. Anyhow, the only change I propose to consider is to add a short statement in the docs. That would have saved me a ton of time. Thanks for your support. PS: On my way to give TCP a try. |
I have started to look into generating the Docker client from the OpenAPI specification. A nice convolution is that we can utilize Testcontainers for implementing and testing the client. Unfortunately, it looks like there is a bit more work ahead of us (instead of just adding support for the missing "schemes"): testcontainers-dotnet/tests/DockerEngine.Tests/DockerClientTest.cs Lines 37 to 48 in 9c54684
|
Testcontainers version
3.2.0
Using the latest Testcontainers version?
Yes
Host OS
MacOS with Parallels-VM running Windows
Host arch
x64
.NET version
6.0.400 (also tried 7.0.400 und .NET Framework 4.8)
Docker version
Client: Cloud integration: v1.0.35-desktop+001 Version: 24.0.5 API version: 1.43 Go version: go1.20.6 Git commit: ced0996 Built: Fri Jul 21 20:32:30 2023 OS/Arch: darwin/amd64 Context: desktop-linux Server: Docker Desktop 4.22.1 (118664) Engine: Version: 24.0.5 API version: 1.43 (minimum version 1.12) Go version: go1.20.6 Git commit: a61e2b4 Built: Fri Jul 21 20:35:45 2023 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.21 GitCommit: 3dce8eb055cbb6872793272b4f20ed16117344f8 runc: Version: 1.1.7 GitCommit: v1.1.7-0-g860f061 docker-init: Version: 0.19.0 GitCommit: de40ad0
Docker info
What happened?
I wanted to follow a simple Testcontainers Tutorial in my environment. I'm running an Intel Mac with Ventura 13.5.1. This runs Docker Desktop as well as Windows 11 Pro in a Parallels VM. As I don't want to run Docker inside the Parallels-VM, I thought it would be great to simply use the Docker Engine on my Mac as a remote Docker Host. I already had SSH configured so I updated my
.testcontainers.properties
file as follows:Running the example (see below) results in
Exception: Unknown URL scheme ssh
. There is no additional information what this means and where it comes from.Relevant log output
No response
Additional information
After several hours of searching and trying different configurations, I came across dotnet/Docker.DotNet#540 . Which sounds to me like this is causing the problem I have.
As my use case seems to be rare (at least I didn't find further reports), I accept that there will be no change. However, it would be really awesome, if the documentation could give a hint about this. For example a simple note like SSH is not supported for connecting to remote host. at this paragraph, would be really good.
Here is the example I've used (yes, it is VB.Net, but C# would be the same):
The text was updated successfully, but these errors were encountered: