{"id":19614848,"url":"https://github.com/hunterashaw/wordpress-fly","last_synced_at":"2025-10-17T23:17:56.718Z","repository":{"id":171159934,"uuid":"600878338","full_name":"hunterashaw/wordpress-fly","owner":"hunterashaw","description":"A starting point for deploying a Wordpress application to fly.io","archived":false,"fork":false,"pushed_at":"2023-02-12T21:24:31.000Z","size":34,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-30T02:33:24.146Z","etag":null,"topics":["flyio","php","sqlite3","wordpress"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hunterashaw.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-12T21:21:45.000Z","updated_at":"2024-09-04T16:28:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"8a9da124-43af-4731-a8ef-d7f4ee53b305","html_url":"https://github.com/hunterashaw/wordpress-fly","commit_stats":null,"previous_names":["hunterashaw/wordpress-fly"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hunterashaw%2Fwordpress-fly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hunterashaw%2Fwordpress-fly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hunterashaw%2Fwordpress-fly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hunterashaw%2Fwordpress-fly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hunterashaw","download_url":"https://codeload.github.com/hunterashaw/wordpress-fly/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250496509,"owners_count":21440227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flyio","php","sqlite3","wordpress"],"created_at":"2024-11-11T10:54:14.189Z","updated_at":"2025-10-17T23:17:51.669Z","avatar_url":"https://github.com/hunterashaw.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Wordpress on [fly.io](https://fly.io/)\n\nA starting point for deploying a Wordpress application to [fly.io](https://fly.io/).\n\nBased on [wordpress-env](https://github.com/hunterashaw/wordpress-env).\n\n## Features\n\n-   Fully dockerized \u0026 repeatable.\n-   Uses [SQLite plugin](https://github.com/aaemnnosttv/wp-sqlite-db) simple database management.\n-   Runs on locally \u0026 on [fly.io](https://fly.io/)\n\n## Prerequisites\n\n-   [Docker](https://www.docker.com/products/docker-desktop/)\n-   [Create fly.io Account](https://fly.io/app/sign-up)\n-   [Install `flyctl` CLI](https://fly.io/docs/hands-on/install-flyctl/)\n-   [`flyctl` CLI Login](https://fly.io/docs/hands-on/sign-in/)\n\n## WIP\n\n- This doesn't cover getting `wp-content/uploads` to persist within a volume, but this can be done using the instructions for the `database` volume\n\n## Local Setup \u0026 Startup\n\nSame as [wordpress-env](https://github.com/hunterashaw/wordpress-env)\n\n## Deployment\n\n1. Create fly.io application:\n```\nfly launch\n```\n\n2. Fill out `fly launch` questions:\n\n| Question                                                | Tip                                                  |\n| ------------------------------------------------------- | ---------------------------------------------------- |\n| Choose an app name (leave blank to generate one):       | Must be globally unique                              |\n| Choose a region for deployment:                         | Pick the closest region (remember the 3-letter code) |\n| Would you like to set up a Postgresql database now?     | No                                                   |\n| Would you like to set up an Upstash Redis database now? | No                                                   |\n| Create .dockerignore from 1 .gitignore files?           | Yes                                                  |\n| Would you like to deploy now?                           | No (we stil need to set up a volume)                 |\n\n3. Create a volume for the `wp-content/database` directory. This creates a 1gb volume associated with our new app (make sure you replace $REGION_CODE with the 3-letter code from above):\n```\nfly volumes create wordpress_database --region $REGION_CODE --size 1\n```\n\n4. Replace the `[env]` line in `fly.toml` with the following lines:\n```\n[build.args]\n  PORT=8080\n\n[mounts]\n  source=\"wordpress_database\"\n  destination=\"/var/www/html/wp-content/database\"\n\n[env]\n  WORDPRESS_CONFIG_EXTRA=\"\"\n```\n\n5. Deploy app:\n```\nfly deploy\n```\n\n6. Ensure deployment was successful. You can view the deployment progress in your [fly.io dashboard](https://fly.io/dashboard) \u003e [your new app] \u003e Monitoring\n\n7. [SSH into VM and fix volume permission issue](https://community.fly.io/t/cant-create-sqlite-database-in-mounted-volume/2925/4). `fly.io` gives the `root` user ownership of the mounted volume, which we must manually fix by running: \n```\nfly ssh console\nchown -R www-data /var/www/html/wp-content/database\n```\n\n8. Go to the application URL listed in your [fly.io dashboard](https://fly.io/dashboard) \u003e [your new app] \u003e Overview\n\n9. Follow the Wordpress installation instructions.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunterashaw%2Fwordpress-fly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhunterashaw%2Fwordpress-fly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhunterashaw%2Fwordpress-fly/lists"}