Skip to content
This repository was archived by the owner on Jul 28, 2026. It is now read-only.

Commit 1c8eaf9

Browse files
committed
fix: docker_images format is displayName:imageUrl, not imageUrl:displayName
1 parent 0d9ccc8 commit 1c8eaf9

2 files changed

Lines changed: 14 additions & 7 deletions

File tree

public/js/app.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1588,7 +1588,7 @@ function renderEggStep() {
15881588
<div class="wizard-step-title" style="font-size:1rem">Docker Image</div>
15891589
<p class="wizard-step-desc">Choose a Docker image for this egg</p>
15901590
<div class="docker-grid">
1591-
${images.map(([image, displayName]) => {
1591+
${images.map(([displayName, image]) => {
15921592
const shortName = displayName || image.split('/').pop().split(':').pop() || image;
15931593
return html`
15941594
<div class="docker-card ${createState.selectedDockerImage === image ? 'selected' : ''}" data-docker="${image}">
@@ -1645,9 +1645,9 @@ function renderSummaryStep() {
16451645
let dockerLabel = 'Default';
16461646
if (egg && createState.selectedDockerImage) {
16471647
const images = Object.entries(egg.dockerImages || {});
1648-
const found = images.find(([img]) => img === createState.selectedDockerImage);
1648+
const found = images.find(([, img]) => img === createState.selectedDockerImage);
16491649
if (found) {
1650-
dockerLabel = found[1] || found[0].split('/').pop().split(':').pop() || found[0];
1650+
dockerLabel = found[0] || createState.selectedDockerImage.split('/').pop().split(':').pop() || createState.selectedDockerImage;
16511651
} else {
16521652
const raw = createState.selectedDockerImage;
16531653
dockerLabel = raw.split('/').pop().split(':').pop() || raw || 'Default';
@@ -1751,7 +1751,7 @@ function attachWizardListeners(step) {
17511751
if (!createState.selectedEgg) return;
17521752
const images = Object.entries(createState.selectedEgg.dockerImages || {});
17531753
if (images.length === 1) {
1754-
createState.selectedDockerImage = images[0][0];
1754+
createState.selectedDockerImage = images[0][1];
17551755
} else if (images.length > 1 && !createState.selectedDockerImage) {
17561756
showToast('Please select a Docker image', 'error');
17571757
return;

routes/servers.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -232,9 +232,16 @@ router.post('/create', authenticateToken, createServerLimiter, async (req, res)
232232
}
233233

234234
const egg = await getEgg(nestId, eggId);
235-
const dockerImage = reqDockerImage && egg.docker_images && egg.docker_images[reqDockerImage]
236-
? reqDockerImage
237-
: (Object.values(egg.docker_images)[0] || Object.keys(egg.docker_images)[0]);
235+
let dockerImage;
236+
if (reqDockerImage && egg.docker_images) {
237+
if (egg.docker_images[reqDockerImage]) {
238+
dockerImage = egg.docker_images[reqDockerImage];
239+
} else {
240+
dockerImage = reqDockerImage;
241+
}
242+
} else {
243+
dockerImage = Object.values(egg.docker_images || {})[0] || Object.keys(egg.docker_images || {})[0];
244+
}
238245

239246
const eggVars = await query(`SELECT env_variable, default_value FROM ${PANEL_DB_NAME}.egg_variables WHERE egg_id = ?`, [eggId]);
240247

0 commit comments

Comments
 (0)