perform many deploys to staging, prod, ... II. Dependencies Your application explicitly declares userland and platform deps. III. Configuration Read from $_ENV: API keys, database credentials, SMTP hosts, ... XI. Logging file_put_contents("php://stderr", "Yay log");
similar as possible. SQLite ≠ MySQL Apache ≠ Nginx File based sessions ≠ Redis based sessions If apt-‐get or brew don't get the job done on your box: Vagrant is always your friend!
processes. $ heroku run "php app/console doctrine:migrations:migrate" Running `php app/console…` attached to terminal... up, run.4062 Migrating up to 20100416130452 from 0 ! >> migrating 20100416130452 ! -‐> CREATE TABLE users (username VARCHAR(255) NOT NULL, password VARCHAR(255) NOT NULL) ENGINE = InnoDB ! >> migrated They run in isolation, just like all other "dynos". With the same release: same code, same config!