firebase.json, or a PHP ini. For key/value settings, use environment variables. For writable storage that survives restarts, use a persistent disk.
The tab appears on container projects (web service, worker, MCP server). It is hidden on static sites, HTML-only projects, and databases.
Add a file
- Open the project.
- Go to Files.
- Click Add file.
- Upload a text file (drag and drop or choose a file).
- Set Name (a label in the dashboard) and Mount path (the path inside the container).
- Leave Secret on if the contents should stay hidden in the dashboard. The mount path stays visible either way.
- Click Create.
- Must be absolute, for example
/etc/app/config.yaml. - Must not contain
...
- Text files only.
- 1 MB per file.

The Files tab on a project, with Add file and the empty state.
Edit or replace a file
Click the pencil on a row. You can change the name, mount path, and Secret setting. Upload a new file only if you want to replace the contents. Secret files load their contents when a writer opens the editor. Readers can see the list, not the secret body.Delete a file
Click the trash icon and confirm. Redeploy so the container no longer has that path.Apply changes
Creating, updating, or deleting a file does not restart the project. The next launch or a Redeploy from the toast mounts the current set.When to use Files vs something else
A WordPress example that raises PHP upload limits lives in Deploy WordPress.