- How do I install aschmelyun/fleet in a Laravel project?
- Install it with Composer, typically as a dev dependency (composer require --dev aschmelyun/fleet), because Fleet is a local development tool rather than something you ship to production. The package registers Artisan commands inside your Laravel application, so you drive it through php artisan instead of a separate CLI binary. Commit the composer.json and composer.lock changes afterwards so teammates resolve the same version.
- Which Laravel versions does Fleet support?
- Fleet targets Laravel applications that already use Sail, so support is effectively bounded by the Laravel and Symfony component majors your app resolves to. Laravel 10 pairs with Symfony 6.x and Laravel 11 with Symfony 7.x, so a constraint bump in Fleet can quietly narrow which majors still install. Run composer why-not aschmelyun/fleet if resolution fails, and check the released constraint string rather than assuming a patch release is neutral.
- How do I give each local Laravel site a custom domain like myapp.test instead of localhost:port?
- Fleet acts as the front door for your local sites: it routes incoming requests by hostname to the correct project container, so each app answers on its own domain such as myapp.test. You register the domain with Fleet and point it at your machine locally, typically through your hosts file or the resolver Fleet configures. After that you browse to the domain and Fleet proxies the request to the right Sail container.
- How does Fleet handle HTTPS for local sites?
- Fleet issues certificates for your custom domains so local sites load over https:// with a valid padlock instead of a browser warning. That normally means trusting a local certificate authority once on your machine, after which every site Fleet manages is covered. If you still see certificate errors, the CA is not trusted in your OS or browser keychain and needs to be re-accepted.
- Can I run several Laravel Sail projects at the same time with Fleet?
- Yes, running multiple sites simultaneously is the core purpose: Fleet keeps one project per domain behind a shared proxy so you can work on several apps without stopping and starting stacks. The main friction is port allocation, so avoid hardcoding the same host port in several docker-compose files. If a site stops responding, check that its containers are up and that nothing else on the machine has claimed its port.
- What is the difference between Fleet and Laravel Sail, Laravel Valet, or Laravel Herd?
- Sail gives you a per-project Docker setup but leaves you on localhost with an exposed port and no TLS. Fleet layers multi-site domain routing and HTTPS on top of that Docker workflow, which is what you want when several containerised apps must share ports 80 and 443. Valet and Herd take a different path entirely, serving PHP through nginx or a native stack rather than containers, so they suit teams that are not already committed to Docker.
- Composer fails to resolve symfony/yaml or symfony/process when installing Fleet, how do I fix it?
- Version 1.1.1 resolves exactly this class of problem: issue #22 was closed by bumping the symfony/yaml and symfony/process constraints. Run composer update aschmelyun/fleet on a branch, then diff the lockfile specifically for those two packages and confirm no other Symfony components moved as collateral. If other packages shifted, treat it as a wider upgrade and test the app rather than merging blind.
- Does Fleet work on macOS, Linux, and Windows?
- Because Fleet orchestrates Docker containers, the practical requirement is a working Docker engine plus the ability to run the Artisan commands from a shell. On macOS and Linux that is Docker Desktop or a native daemon; on Windows the usual path is WSL2 with Docker Desktop exposing the daemon to your WSL distribution. Ports 80 and 443 must be free and bindable, so stop any local web server that already holds them.
- Can I use Fleet for non-Laravel PHP apps or projects that do not use Sail?
- Fleet is built around the Laravel Sail convention, so it expects the docker-compose layout and service naming that Sail generates. Any Laravel app using Sail fits naturally, and simple PHP projects can sometimes be adapted, but non-standard stacks usually need manual compose changes. If your app already has a bespoke Compose file, expect to do some wiring before domains and HTTPS work end to end.
- Is aschmelyun/fleet actively maintained and how should I upgrade it?
- Check the repository's releases and open issues before adopting it for a team workflow, since the release history is the only reliable signal of maintenance cadence. Upgrades are low ceremony: composer update aschmelyun/fleet in a branch, then read the constraint diff carefully, because a patch-level bump can either widen support or raise a floor. Confirm whether the Symfony constraints were relaxed or tightened, and verify your Laravel major still resolves before rolling it out.