[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"problem-detail-warning-health-restarting":3},{"stack":4,"error":5,"seoName":6,"seoStack":7,"seo":8,"breadcrumb":10,"titlePrefix":18,"titleAccent":19,"lead":20,"facts":23,"why":40,"log":50,"fix":83,"engine":100,"related":108,"pitch":139},"compose","health-restarting","Laravel container restarts because its SQLite database path is invalid","Docker Compose, Dockerfile, Express and more",{"description":9},"The application is not running: its container keeps exiting. Nothing answered on any published port because the process never stays up. Read the container outpu",[11,14,17],{"label":12,"href":13},"App Installations","\u002Fapps",{"label":15,"href":16},"Docker Compose","\u002Fapps\u002Fstacks\u002Fcompose",{"label":6},"Laravel container restarts because ","its SQLite database path is invalid",[21],{"text":22},"The application is not running: its container keeps exiting. Nothing answered on any published port because the process never stays up. Read the container output — the reason it exits is there. | The application is restarting, not running. Docker reports app (Restarting (1) 28 seconds ago). Nothing answered on any published port because the process keeps exiting. Read the container output with container_service_logs; the reason it exits is there. | The application is up, but a service it depen…",[24,29,32,36],{"label":25,"value":26,"tone":27,"tooltip":28},"Type","Warning","warn","An issue PanelAlpha Engine catches around a deploy that does not break it. It tells you, before or after, that you may need to do something.",{"label":30,"value":31},"Seen","18 times · 7 variants",{"label":33,"value":34,"tooltip":35},"Where","Docker Compose, Dockerfile, Express +4 more","Docker Compose, Dockerfile, Express, Laravel, Node.js, Php, Railpack",{"label":37,"value":38,"tooltip":39},"Status","Observed","Our team will look into this soon, verify the cause and try to fix it in an upcoming release.",{"heading":41,"body":42},"Why it happens",[43,45,48],{"text":44},"The Laravel app exits during startup while preparing SQLite. Its configured path resolves to a nested location such as ",{"text":46,"code":47},"\u002Fapp\u002Fdatabase\u002Fapp\u002Fdatabase\u002Fdatabase.sqlite",true,{"text":49},", which cannot be created. The container then enters a restart loop, so port 8000 never becomes reachable.",{"heading":51,"block":52},"What the log looks like",{"header":53,"lines":54},"Deploy log",[55,59,63,67,71,75,79],{"segments":56},[57],{"text":58},"Container output at the point of failure:",{"segments":60},[61],{"text":62},"app-1  | SQLite Database Path: \u002Fapp\u002Fdatabase\u002Fapp\u002Fdatabase\u002Fdatabase.sqlite",{"segments":64},[65],{"text":66},"app-1  | touch(): Unable to create file \u002Fapp\u002Fdatabase\u002Fapp\u002Fdatabase\u002Fdatabase.sqlite",{"segments":68},[69],{"text":70},"app-1  | AppServiceProvider.php:167",{"segments":72},[73],{"text":74},"...",{"segments":76},[77],{"text":78},"Health check: http:\u002F\u002F[ip]:8000\u002F did not answer",{"segments":80},[81],{"text":82},"Docker reports app (Restarting (1))",{"heading":84,"steps":85,"block":97},"How to fix it",[86],[87,89,91,93,95],{"text":88},"Review the container environment and Laravel database settings, especially ",{"text":90,"code":47},"DB_CONNECTION",{"text":92}," and ",{"text":94,"code":47},"DB_DATABASE",{"text":96},". Set the SQLite path to the intended file, ensure its parent directory exists and is writable by the container user, and mount persistent storage if the database must survive redeploys. Recreate the container and check its logs before retrying the health check.",{"header":98,"lines":99},"Fix by hand",[],{"heading":101,"body":102,"block":105},"How PanelAlpha Engine solves it",[103],{"text":104},"Detect SQLite paths that resolve inside an unexpected nested directory, validate parent-directory permissions before startup, and report the effective database path directly. The health summary should prioritize the application startup exception over the generic dependency-unhealthy message.",{"header":106,"lines":107},"",[],{"heading":109,"items":110},"Apps affected",[111,116,119,123,127,130,133,136],{"title":112,"badge":113,"tone":114,"href":115},"laravel\u002Flaravel","4 occurrences","err","\u002Fapps\u002Flinuxserver\u002Fheimdall",{"title":117,"badge":113,"tone":114,"href":118},"passbolt_api","\u002Fapps\u002Fpassbolt\u002Fpassbolt_api",{"title":120,"badge":121,"tone":114,"href":122},"wintercms\u002Fwinter","2 occurrences","\u002Fapps\u002Fwintercms\u002Fwinter",{"title":124,"badge":125,"tone":114,"href":126},"101-app","1 occurrence","\u002Fapps\u002Fdocker\u002Fgetting-started-app",{"title":128,"badge":125,"tone":114,"href":129},"Warpgate","\u002Fapps\u002Fwarp-tech\u002Fwarpgate",{"title":131,"badge":125,"tone":114,"href":132},"bittorrent-tracker","\u002Fapps\u002Fwebtorrent\u002Fbittorrent-tracker",{"title":134,"badge":125,"tone":114,"href":135},"kiwiirc","\u002Fapps\u002Fkiwiirc\u002Fkiwiirc",{"title":137,"badge":125,"tone":114,"href":138},"mirotalkc2c","\u002Fapps\u002Fmiroslavpejic85\u002Fmirotalkc2c",{"heading":140,"body":141,"footNote":142,"docsLabel":143,"docsHref":144},"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"]