namespace Tiobon.PublishHelper
{
///
/// Docker命令封装
///
public class DockerCommand
{
///
/// docker ps
///
///
///
public static string GetDockerStatus(string hospital)
{
return $"sudo docker ps -a --format \"table {{{{.ID}}}}||{{{{.Names}}}}||{{{{.Image}}}}||{{{{.Command}}}}||{{{{.CreatedAt}}}}||{{{{.RunningFor}}}}||{{{{.Ports}}}}||{{{{.Status}}}}||{{{{.Networks}}}}\" | grep \"{hospital}_\"";
}
///
/// docker containerName
///
///
///
///
public static string GetDockerContainerName(string hospital, string modelName)
{
return $"sudo docker ps -a --format \"table {{{{.Names}}}}\" | grep \"{hospital}_{modelName}\"";
}
///
/// docker logs
///
///
///
public static string GetDockerLogs(string containerName)
{
return $"sudo docker logs {containerName} --tail=50";
}
///
/// docker-compose down
///
///
///
///
public static string DockerComposeDown(string userName, string hospital, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose down";
}
///
/// docker-compose up
///
///
///
///
public static string DockerComposeUp(string userName, string hospital, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose up -d";
}
///
/// docker-compose restart
///
///
///
///
public static string DockerComposeRestart(string userName, string hospital, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose restart";
}
///
/// docker-compose remove
///
///
///
///
public static string DockerComposeRemove(string userName, string hospital, string cname, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose stop {cname};sudo docker-compose rm -f {cname}";
}
///
/// docker container restart
///
///
///
public static string DockeContainerRestart(string containerId)
{
return $"sudo docker restart {containerId}";
}
///
/// docker-compose restart container
///
///
///
///
public static string DockerComposeContainerRestart(string userName, string hospital, string container, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose restart {container}";
}
///
/// docker container log
///
///
///
public static string DockeContainerLog(string userName, string hospital, string container, string suffix )
{
return $"cd /home/{userName}/ihdis{suffix}/{hospital};sudo docker-compose logs {container}";
}
}
}