The expected procedure of installing a Symfony application of
- clone repository
- change to project directory
- run composer install
- respond to parameter.yml prompts
is not possible in a non-VPS environment due to composer not being available. Because of that the …/vendor directory is not created and filled with the application’s dependencies. Here is one method of installing your app.
- Your DreamHost domain directory is /home/username/domain_name.tld
- A Symfony application exists on your local system in the directory …/someapp
- The application also exists as an origin/master branch at github.com/developer/someapp
What worked (for me):
- On your development system, at the project level (…/someapp), create a tar.gz of the vendor directory: vendor.tar.gz. This can be done directly in a *.nix environment or with 7-zip in Windows.
- Transfer vendor.tar.gz to your DreamHost account either by ftp or scp.
- With a shell account, log in to your DreamHost account.
$ cd domain_name.tld
- Clone the repository with
$ git clone https://github.com/developer/someapp This results in the Symfony app installed in /home/username/domain_name.tld/someapp
- Recreate the vendor directory with
$ tar -xf ../vendor.tar.gz -C . Don’t forget the dot (.) at the end!
- In …/someapp/app/config, copy the parameters.yml.dist to parameters.yml, then edit the parameters.yml file as required.
In the DreamHost panel:
- Create your database. Confirm that the configuration here is what is used in parameters.yml.
- Change the web directory of your domain to /home/username/domain_name.tld/someapp/web
Your Symfony app should now be available at www.domain_name.tld