public override void Run() { Console.WriteInfoLine("Removing a database..."); base.Run(); if (!Console.Confirm()) { return; } using (var client = new DockerService()) { var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$"); if (container == null) { Console.WriteErrorLine($"A {ContainerKey} database named {Name} does not exist for user {User}"); return; } if (container.State == "running") { client.StopContainer(container.ID); } client.RemoveContainer(container.ID); } Console.WriteSuccessLine("The database was successfully removed."); }
public override void Run() { Console.WriteInfoLine("Creating a new database..."); base.Run(); new IdentityService().CheckUserExists(User); using (var client = new DockerService()) { var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$"); if (container != null) { Console.WriteErrorLine($"A {ContainerKey} database named {Name} already exists for the user {User}. You cannot ask for a new one."); return; } client.CreateContainer("httpd", $"{ContainerKey}-{User}-{Name}"); Console.WriteSuccessLine("The database was successfully created."); } }
public override void Run() { Console.WriteInfoLine("Stopping a database..."); base.Run(); using (var client = new DockerService()) { var container = client.GetContainer(true, $"^.*{ContainerKey}-{User}-{Name}$"); if (container == null) { Console.WriteErrorLine($"A {ContainerKey} database named {Name} does not exist for user {User}"); return; } if (container.State != "running") { Console.WriteErrorLine($"A {ContainerKey} database named {Name} exists for user {User}, but its status is not equal to running"); return; } client.StopContainer(container.ID); Console.WriteSuccessLine("The database was successfully stopped."); } }