.NET CORE和docker交互

 

1、引入nuget包

Install-Package Docker.DotNet

 

 

 

 2、示例如下,更加详细命令查看文档 https://github.com/dotnet/Docker.DotNet

        
//创建客户端
using var client = new DockerClientConfiguration() .CreateClient();
     //查找容器列表 IList
<ContainerListResponse> containers = await client.Containers.ListContainersAsync( new ContainersListParameters() { Limit = 10, }); foreach (var item in containers) { //根据容器名称过滤容器,然后重启 if (item.Names.Any(x => x == "/wvp_pro_compose-wvpRedis-1")) await client.Containers.RestartContainerAsync(item.ID, new ContainerRestartParameters() { WaitBeforeKillSeconds = 1 }, CancellationToken.None); }

 

3、如果是通过docker容器运行的.NET程序,需要挂载docker的sock文件

docker run -v /var/run/docker.sock:/var/run/docker.sock

 

 

 

 

 

参考文档:

docker官方sdk介绍

C#的docker SDK github项目

posted @ 2022-12-05 15:50  老铁你咋这么肥  阅读(78)  评论(0编辑  收藏  举报