mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
refactor(docker): sort container lists by name
- Add sorting to container retrieval methods in docker service - Ensure consistent container list ordering across different container fetching functions - Improve readability and predictability of container list results
This commit is contained in:
@@ -136,24 +136,26 @@ export const getContainersByAppNameMatch = async (
|
|||||||
result = stdout.trim().split("\n");
|
result = stdout.trim().split("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
const containers = result.map((line) => {
|
const containers = result
|
||||||
const parts = line.split(" | ");
|
.map((line) => {
|
||||||
const containerId = parts[0]
|
const parts = line.split(" | ");
|
||||||
? parts[0].replace("CONTAINER ID : ", "").trim()
|
const containerId = parts[0]
|
||||||
: "No container id";
|
? parts[0].replace("CONTAINER ID : ", "").trim()
|
||||||
const name = parts[1]
|
: "No container id";
|
||||||
? parts[1].replace("Name: ", "").trim()
|
const name = parts[1]
|
||||||
: "No container name";
|
? parts[1].replace("Name: ", "").trim()
|
||||||
|
: "No container name";
|
||||||
|
|
||||||
const state = parts[2]
|
const state = parts[2]
|
||||||
? parts[2].replace("State: ", "").trim()
|
? parts[2].replace("State: ", "").trim()
|
||||||
: "No state";
|
: "No state";
|
||||||
return {
|
return {
|
||||||
containerId,
|
containerId,
|
||||||
name,
|
name,
|
||||||
state,
|
state,
|
||||||
};
|
};
|
||||||
});
|
})
|
||||||
|
.sort((a, b) => a.name.localeCompare(b.name));
|
||||||
|
|
||||||
return containers || [];
|
return containers || [];
|
||||||
} catch (_error) {}
|
} catch (_error) {}
|
||||||
@@ -190,28 +192,30 @@ export const getStackContainersByAppName = async (
|
|||||||
result = stdout.trim().split("\n");
|
result = stdout.trim().split("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
const containers = result.map((line) => {
|
const containers = result
|
||||||
const parts = line.split(" | ");
|
.map((line) => {
|
||||||
const containerId = parts[0]
|
const parts = line.split(" | ");
|
||||||
? parts[0].replace("CONTAINER ID : ", "").trim()
|
const containerId = parts[0]
|
||||||
: "No container id";
|
? parts[0].replace("CONTAINER ID : ", "").trim()
|
||||||
const name = parts[1]
|
: "No container id";
|
||||||
? parts[1].replace("Name: ", "").trim()
|
const name = parts[1]
|
||||||
: "No container name";
|
? parts[1].replace("Name: ", "").trim()
|
||||||
|
: "No container name";
|
||||||
|
|
||||||
const state = parts[2]
|
const state = parts[2]
|
||||||
? parts[2].replace("State: ", "").trim().toLowerCase()
|
? parts[2].replace("State: ", "").trim().toLowerCase()
|
||||||
: "No state";
|
: "No state";
|
||||||
const node = parts[3]
|
const node = parts[3]
|
||||||
? parts[3].replace("Node: ", "").trim()
|
? parts[3].replace("Node: ", "").trim()
|
||||||
: "No specific node";
|
: "No specific node";
|
||||||
return {
|
return {
|
||||||
containerId,
|
containerId,
|
||||||
name,
|
name,
|
||||||
state,
|
state,
|
||||||
node,
|
node,
|
||||||
};
|
};
|
||||||
});
|
})
|
||||||
|
.sort((a, b) => a.name.localeCompare(b.name));
|
||||||
|
|
||||||
return containers || [];
|
return containers || [];
|
||||||
} catch (_error) {}
|
} catch (_error) {}
|
||||||
@@ -249,29 +253,31 @@ export const getServiceContainersByAppName = async (
|
|||||||
result = stdout.trim().split("\n");
|
result = stdout.trim().split("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
const containers = result.map((line) => {
|
const containers = result
|
||||||
const parts = line.split(" | ");
|
.map((line) => {
|
||||||
const containerId = parts[0]
|
const parts = line.split(" | ");
|
||||||
? parts[0].replace("CONTAINER ID : ", "").trim()
|
const containerId = parts[0]
|
||||||
: "No container id";
|
? parts[0].replace("CONTAINER ID : ", "").trim()
|
||||||
const name = parts[1]
|
: "No container id";
|
||||||
? parts[1].replace("Name: ", "").trim()
|
const name = parts[1]
|
||||||
: "No container name";
|
? parts[1].replace("Name: ", "").trim()
|
||||||
|
: "No container name";
|
||||||
|
|
||||||
const state = parts[2]
|
const state = parts[2]
|
||||||
? parts[2].replace("State: ", "").trim().toLowerCase()
|
? parts[2].replace("State: ", "").trim().toLowerCase()
|
||||||
: "No state";
|
: "No state";
|
||||||
|
|
||||||
const node = parts[3]
|
const node = parts[3]
|
||||||
? parts[3].replace("Node: ", "").trim()
|
? parts[3].replace("Node: ", "").trim()
|
||||||
: "No specific node";
|
: "No specific node";
|
||||||
return {
|
return {
|
||||||
containerId,
|
containerId,
|
||||||
name,
|
name,
|
||||||
state,
|
state,
|
||||||
node,
|
node,
|
||||||
};
|
};
|
||||||
});
|
})
|
||||||
|
.sort((a, b) => a.name.localeCompare(b.name));
|
||||||
|
|
||||||
return containers || [];
|
return containers || [];
|
||||||
} catch (_error) {}
|
} catch (_error) {}
|
||||||
@@ -306,23 +312,25 @@ export const getContainersByAppLabel = async (
|
|||||||
|
|
||||||
const lines = stdout.trim().split("\n");
|
const lines = stdout.trim().split("\n");
|
||||||
|
|
||||||
const containers = lines.map((line) => {
|
const containers = lines
|
||||||
const parts = line.split(" | ");
|
.map((line) => {
|
||||||
const containerId = parts[0]
|
const parts = line.split(" | ");
|
||||||
? parts[0].replace("CONTAINER ID : ", "").trim()
|
const containerId = parts[0]
|
||||||
: "No container id";
|
? parts[0].replace("CONTAINER ID : ", "").trim()
|
||||||
const name = parts[1]
|
: "No container id";
|
||||||
? parts[1].replace("Name: ", "").trim()
|
const name = parts[1]
|
||||||
: "No container name";
|
? parts[1].replace("Name: ", "").trim()
|
||||||
const state = parts[2]
|
: "No container name";
|
||||||
? parts[2].replace("State: ", "").trim()
|
const state = parts[2]
|
||||||
: "No state";
|
? parts[2].replace("State: ", "").trim()
|
||||||
return {
|
: "No state";
|
||||||
containerId,
|
return {
|
||||||
name,
|
containerId,
|
||||||
state,
|
name,
|
||||||
};
|
state,
|
||||||
});
|
};
|
||||||
|
})
|
||||||
|
.sort((a, b) => a.name.localeCompare(b.name));
|
||||||
|
|
||||||
return containers || [];
|
return containers || [];
|
||||||
} catch (_error) {}
|
} catch (_error) {}
|
||||||
|
|||||||
Reference in New Issue
Block a user