Ductus.FluentDocker 2.10.55

.NET Standard 2.0 .NET Framework 4.6.1
Install-Package Ductus.FluentDocker -Version 2.10.55
dotnet add package Ductus.FluentDocker --version 2.10.55
<PackageReference Include="Ductus.FluentDocker" Version="2.10.55" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Ductus.FluentDocker --version 2.10.55
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Ductus.FluentDocker, 2.10.55"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install Ductus.FluentDocker as a Cake Addin
#addin nuget:?package=Ductus.FluentDocker&version=2.10.55

// Install Ductus.FluentDocker as a Cake Tool
#tool nuget:?package=Ductus.FluentDocker&version=2.10.55
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

FluentDocker

This library enables docker and docker-compose interactions using a Fluent API. It is supported on Linux, Windows and Mac. It also has support for the legacy docker-machine interactions.

Have a look at the project site for more information.

Sample Fluent API usage

      using (
        var container =
          new Builder().UseContainer()
            .UseImage("kiasaki/alpine-postgres")
            .ExposePort(5432)
            .WithEnvironment("POSTGRES_PASSWORD=mysecretpassword")
            .WaitForPort("5432/tcp", 30000 /*30s*/)
            .Build()
            .Start())
      {
        var config = container.GetConfiguration(true);
        Assert.AreEqual(ServiceRunningState.Running, config.State.ToServiceState());
      }

The following snippet fires up Postgres and waits for it to be ready. It uses docker-compose file to perform the task.

      var file = Path.Combine(Directory.GetCurrentDirectory(),
        (TemplateString) "Resources/ComposeTests/WordPress/docker-compose.yml");

      // @formatter:off
      using (var svc = new Builder()
                        .UseContainer()
                        .UseCompose()
                        .FromFile(file)
                        .RemoveOrphans()
                        .WaitForHttp("wordpress", "http://localhost:8000/wp-admin/install.php") 
                        .Build().Start())
        // @formatter:on
      {
        // We now have a running WordPress with a MySql database        
        var installPage = await "http://localhost:8000/wp-admin/install.php".Wget();

        Assert.IsTrue(installPage.IndexOf("https://wordpress.org/", StringComparison.Ordinal) != -1);
        Assert.AreEqual(1, svc.Hosts.Count); // The host used by compose
        Assert.AreEqual(2, svc.Containers.Count); // We can access each individual container
        Assert.AreEqual(2, svc.Images.Count); // And the images used.
      }

👀 It has tons of features, including a low-level command style, services and finally, the Fluent API on top of it.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net461 net462 net463 net47 net471 net472 net48
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (13)

Showing the top 5 NuGet packages that depend on Ductus.FluentDocker:

Package Downloads
Ductus.FluentDocker.MsTest

Ms Test Support to allow for create, run one or more docker images while testing using docker, compose, machine (Linux, Windows, Mac) using netcore or full framework. Documentation: https://github.com/mariotoffia/FluentDocker

NinjaTools.FluentMockServer

A C# Client for the MockServer Docker Image

Ductus.FluentDocker.XUnit

XUnit Support to allow for create, run one or more docker images while testing using docker, compose, machine (Linux, Windows, Mac) using netcore or full framework. Documentation: https://github.com/mariotoffia/FluentDocker

NinjaTools.FluentMockServer.TestContainers

In memory docker container runner for NinjaTools.FluentMockServer

DockerComposer

Run docker-compose containers straight from within integration tests

GitHub repositories (7)

Showing the top 5 popular GitHub repositories that depend on Ductus.FluentDocker:

Repository Stars
rabbitmq/rabbitmq-dotnet-client
RabbitMQ .NET client for .NET Standard 2.0+ and .NET 4.6.1+
mariotoffia/FluentDocker
Use docker, docker-compose local and remote in tests and your .NET core/full framework apps via a FluentAPI
SQLStreamStore/SQLStreamStore
Stream Store library targeting RDBMS based implementations for .NET
danielgerlag/conductor
Distributed workflow server
axzxs2001/Asp.NetCoreExperiment
原来所有项目都移动到**OleVersion**目录下进行保留。新的案例装以.net 5.0为主,一部分对以前案例进行升级,一部分将以前的工作经验总结出来,以供大家参考!
Version Downloads Last updated
2.10.55 809 6/24/2022
2.10.54 57 6/24/2022
2.10.53 221 6/23/2022
2.10.51 4,710 6/7/2022
2.10.50 147 6/7/2022
2.10.48 3,759 5/30/2022
2.10.46 177 5/30/2022
2.10.45 62,100 3/9/2022
2.10.44 84,892 12/8/2021
2.10.42 21,395 11/24/2021
2.10.41 7,206 11/23/2021
2.10.40 25,127 10/27/2021
2.10.39 21,206 10/1/2021
2.10.35 400 10/1/2021
2.10.25 599 10/1/2021
2.10.23 472 10/1/2021
2.10.22 743 9/29/2021
2.10.21 8,002 9/19/2021
2.10.20 1,081 9/17/2021
2.10.19 434 9/16/2021
2.10.17 532 9/16/2021
2.10.16 530 9/15/2021
2.10.15 343 9/15/2021
2.10.14 1,015 9/14/2021
2.10.12 393 9/14/2021
2.10.10 1,083 9/13/2021
2.10.8 399 9/13/2021
2.10.7 65,457 6/11/2021
2.10.6 36,957 4/23/2021
2.10.5 9,964 4/20/2021
2.10.3 7,419 4/5/2021
2.10.2 14,085 3/28/2021
2.9.4 533 3/26/2021
2.9.3-beta.2 626 3/25/2021
2.8.14-beta.22 127 3/24/2021
2.8.13-beta.21 134 3/24/2021
2.8.12-beta.20 136 3/23/2021
2.8.11-beta.19 103 3/22/2021
2.8.10-beta.18 107 3/22/2021
2.8.9-beta.17 119 3/22/2021
2.8.8-beta.14 114 3/17/2021
2.8.7-beta.9 138 3/11/2021
2.8.5-beta.4 201 3/7/2021
2.8.5-beta.2 98 3/24/2021
2.8.4-beta.3 101 3/3/2021
2.8.3 1,065 3/24/2021
2.8.2 9,809 3/3/2021
2.7.80-beta.159 128 3/1/2021
2.7.71-beta.150 2,028 11/27/2020
2.7.69-beta.147 2,461 10/12/2020
2.7.68-beta.146 1,339 10/8/2020
2.7.66-beta.142 1,514 8/8/2020
2.7.65-beta.141 180 8/7/2020
2.7.64-beta.140 269 8/6/2020
2.7.62-beta.138 5,790 5/4/2020
2.7.60-beta.127 227 4/30/2020
2.7.59-beta0123 794 2/13/2020
2.7.58-beta0122 389 2/12/2020
2.7.54-beta0117 1,728 1/23/2020
2.7.53-beta0116 470 1/23/2020
2.7.52-beta0105 438 1/20/2020
2.7.51-beta0102 1,621 1/14/2020
2.7.50-beta0094 444 12/20/2019
2.7.49-beta0091 479 12/18/2019
2.7.48-beta0087 485 12/17/2019
2.7.47-beta0081 437 12/17/2019
2.7.46-beta0080 1,808 12/16/2019
2.7.45-beta0079 446 12/12/2019
2.7.44-beta0078 377 12/12/2019
2.7.42-beta0076 405 12/12/2019
2.7.41-beta0075 408 12/12/2019
2.7.38-beta0072 1,726 11/24/2019
2.7.37-beta0071 472 11/24/2019
2.7.36-beta0070 466 11/24/2019
2.7.35-beta0069 437 11/20/2019
2.7.34-beta0068 374 11/20/2019
2.7.33-beta0067 446 11/20/2019
2.7.32-beta0066 419 11/12/2019
2.7.31-beta0064 471 11/12/2019
2.7.30-beta0050 401 11/8/2019
2.7.29-beta0046 400 11/8/2019
2.7.28-beta0045 404 11/8/2019
2.7.27-beta0043 393 11/8/2019
2.7.21-beta0036 377 11/8/2019
2.7.20-beta0032 393 11/8/2019
2.7.19-beta0030 425 11/8/2019
2.7.4-beta0001 401 11/8/2019
2.7.3 294,208 10/18/2019
2.7.2 10,695 9/10/2019
2.7.1 124,401 8/7/2019
2.7.0 1,317 8/6/2019
2.6.9 3,618 7/29/2019
2.6.8 46,866 5/31/2019
2.6.7 1,256 5/17/2019
2.6.6 3,655 4/11/2019
2.6.5 2,033 4/2/2019
2.6.4 11,328 12/6/2018
2.6.3 4,675 10/15/2018
2.6.2 884 10/3/2018
2.6.1 758 10/3/2018
2.6.0 832 10/2/2018
2.5.1 1,134 9/29/2018
2.5.0 757 9/29/2018
2.4.1 812 9/27/2018
2.4.0 866 9/18/2018
2.3.2 2,172 8/6/2018
2.3.1 1,100 7/20/2018
2.3.0 1,297 7/2/2018
2.2.19 980 6/27/2018
2.2.18 1,066 6/25/2018
2.2.17 1,089 6/15/2018
2.2.16 986 6/14/2018
2.2.15 4,687 6/7/2018
2.2.14 1,004 6/1/2018
2.2.13 1,267 5/22/2018
2.2.12 2,703 4/20/2018
2.2.11 1,081 4/18/2018
2.2.10 1,447 4/17/2018
2.2.9 1,053 4/6/2018
2.2.8 3,810 11/22/2017
2.2.7 1,070 11/22/2017
2.2.6 1,001 11/21/2017
2.2.5 2,079 11/9/2017
2.2.4 1,035 11/9/2017
2.2.3 1,074 8/25/2017
2.2.2 1,533 5/22/2017
2.2.1 1,094 4/6/2017
2.2.0 964 6/5/2016
2.1.1 844 5/27/2016
2.0.0 1,259 4/24/2016
1.1.4 813 3/31/2016
1.1.3 972 3/30/2016
1.1.2 898 3/30/2016
1.1.1 997 3/29/2016
1.1.0 814 3/29/2016
1.0.3 887 3/24/2016
1.0.2 1,037 3/23/2016
1.0.1 1,109 3/23/2016
1.0.0 915 3/23/2016