Dokploy/dokploy · critical · TRPCError
INTERNAL_SERVER_ERROR
INTERNAL_SERVER_ERROR
Error message
Error on deploy mariadb${error} What it means
Thrown by deployMariadb when the deployment pipeline throws: it streams the error via onData, sets applicationStatus to 'error', and rethrows INTERNAL_SERVER_ERROR with the raw error appended. The actual cause (Docker, image pull, server connectivity) is in the appended text and deployment logs.
Source
Thrown at packages/server/src/services/mariadb.ts:167
`docker pull ${quote([mariadb.dockerImage])}`,
onData,
);
} else {
await pullImage(mariadb.dockerImage, onData);
}
await buildMariadb(mariadb);
await updateMariadbById(mariadbId, {
applicationStatus: "done",
});
onData?.("Deployment completed successfully!");
} catch (error) {
onData?.(`Error: ${error}`);
await updateMariadbById(mariadbId, {
applicationStatus: "error",
});
throw new TRPCError({
code: "INTERNAL_SERVER_ERROR",
message: `Error on deploy mariadb${error}`,
});
}
return mariadb;
};
View on GitHub (pinned to 546686ea35)
Solutions
- Read the appended error and streamed deployment logs to find the failing step
- Verify Docker daemon, disk, and memory on the destination server
- Check image pull access (registry credentials, egress rules)
- Fix and redeploy; status stays 'error' until a successful run
Example fix
// before await deployMariadb(mariadbId); // after await deployMariadb(mariadbId, (chunk) => console.log(chunk)); // see where it fails
Defensive patterns
Strategy: try-catch
Validate before calling
const m = await findMariadbById(mariadbId);
if (m.applicationStatus === 'error') throw new Error('Resolve prior deploy error first'); Try / catch
try { await deployMariadb(mariadbId, onLog); } catch (e) { notify(String(e.message)); await updateMariadbById(mariadbId, { applicationStatus: 'error' }); } Prevention
- Stream deploy logs for later forensics
- Pre-check destination server Docker health
- Use retry with backoff for transient pulls
When it happens
Trigger: Calling deployMariadb when the remote Docker deployment fails — unreachable destination server, MariaDB image pull failure, invalid server configuration, or a deploy script error.
Common situations: Destination server's Docker daemon down, no network egress to Docker Hub, insufficient disk/memory, or a MariaDB version tag that no longer pulls.
Related errors
- INTERNAL_SERVER_ERROR
- INTERNAL_SERVER_ERROR
- INTERNAL_SERVER_ERROR
- INNGEST_BASE_URL is required to list deployment jobs
- UNAUTHORIZED
AI-assisted analysis of Dokploy/dokploy@546686ea35 (2026-08-27).
Data as JSON: /api/errors/04b41ea87513d906.
Report an issue: GitHub.