[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"problem-detail-error-unable-to-find-image-golang-alpine-locally":3},{"stack":4,"error":5,"seoName":6,"seoStack":7,"seo":8,"breadcrumb":10,"titlePrefix":17,"titleAccent":18,"lead":19,"facts":22,"why":37,"log":42,"fix":83,"engine":92,"related":100,"pitch":107},"go","unable-to-find-image-golang-alpine-locally","Go deploy fails to start because the deploy log is not writable","Go",{"description":9},"Learn what causes Go deploy fails to start because the deploy log is not writable, how PanelAlpha Engine responds to it during deployment.",[11,14,16],{"label":12,"href":13},"App Installations","\u002Fapps",{"label":7,"href":15},"\u002Fapps\u002Fstacks\u002Fgo",{"label":6},"Go deploy fails to start because ","the deploy log is not writable",[20],{"text":21},"Error recorded 5 times in PanelAlpha Engine deploys on Go. The deploy log below is the recorded failure output.",[23,28,31,33],{"label":24,"value":25,"tone":26,"tooltip":27},"Type","Error","err","An error that occurred in the deployed application. It is not necessarily a PanelAlpha Engine error, but we keep working on improvements so you run into fewer of them.",{"label":29,"value":30},"Seen","5 times · 2 variants",{"label":32,"value":7},"Where",{"label":34,"value":35,"tooltip":36},"Status","Observed","Our team will look into this soon, verify the cause and try to fix it in an upcoming release.",{"heading":38,"body":39},"Why it happens",[40],{"text":41},"The Go image downloads successfully, but the startup wrapper then looks for Node.js lockfiles that are not present in this Go project. The final failure is obscured by a generic image-start error and a permission error while opening the log. The exact failing command is unclear from the available output.",{"heading":43,"block":44},"What the log looks like",{"header":45,"lines":46},"Deploy log",[47,51,55,59,63,67,71,75,79],{"segments":48},[49],{"text":50},"Starting stage: running",{"segments":52},[53],{"text":54},"Detected project type: Go",{"segments":56},[57],{"text":58},"Using strategy: go",{"segments":60},[61],{"text":62},"Compiling application on host",{"segments":64},[65],{"text":66},"Status: Downloaded newer image for golang:1.27-alpine",{"segments":68},[69],{"text":70},"cp: can't stat '\u002Fapp\u002Fpackage-lock.json': No such file or directory",{"segments":72},[73],{"text":74},"cp: can't stat '\u002Fapp\u002Fpnpm-lock.yaml': No such file or directory",{"segments":76},[77],{"text":78},"ERROR: Unable to open log: Permission denied",{"segments":80},[81],{"text":82},"Deploy failed: Failed to start app: Unable to find image 'golang:1.27-alpine' locally",{"heading":84,"steps":85,"block":89},"How to fix it",[86],[87],{"text":88},"Review the generated Compose\u002FProcfile start command and remove any Node.js build or lockfile-copy step from the Go deployment. Confirm the service uses the detected Go port (8080) and that the account can read the application and write deployment logs. Redeploy after correcting the startup configuration.",{"header":90,"lines":91},"Fix by hand",[],{"heading":93,"body":94,"block":97},"How PanelAlpha Engine solves it",[95],{"text":96},"The Go strategy should not run Node.js lockfile-copy checks. Preserve the underlying container command and exit status after a successful image pull, and report log-file permission failures separately from application startup failures.",{"header":98,"lines":99},"",[],{"heading":101,"items":102},"Apps affected",[103],{"title":104,"badge":105,"tone":26,"href":106},"go-getting-started","5 occurrences","\u002Fapps\u002Fheroku\u002Fgo-getting-started",{"heading":108,"body":109,"footNote":110,"docsLabel":111,"docsHref":112},"Try PanelAlpha Engine yourself.","The easiest way to turn your server into a safe, controlled environment for your AI agent. Deploy, manage and maintain any project from Claude Code, Cursor, Codex or any other MCP client. Open source under Apache 2.0, free to run.","Requires Ubuntu 24.04 or 26.04 · 2 GB RAM · 1 CPU","Read the documentation","https:\u002F\u002Fpanelalpha.com\u002Fdocs"]