discourse/bin/docker
ckeboss 513f1f065a Wrap directory names in quotes
When there are spaces in any of the directories referenced, bash will error out. This wraps those items in quotes to allow bash to parse the path names properly.
2017-04-12 09:41:23 -07:00
..
boot_dev Wrap directory names in quotes 2017-04-12 09:41:23 -07:00
bundle Improve the "develop inside Docker" experience 2016-09-20 15:35:50 -07:00
mailcatcher Removed the fallback mailcatcher install command 2016-12-13 09:26:11 -05:00
migrate add some extra helper scripts 2016-12-13 09:24:31 +11:00
psql Improve the "develop inside Docker" experience 2016-09-20 15:35:50 -07:00
rails tweak perf of rake and rails 2016-12-13 14:51:07 +11:00
rake tweak perf of rake and rails 2016-12-13 14:51:07 +11:00
README.md update readme for docker dev 2016-12-12 18:00:25 +11:00
reset_db Improve the "develop inside Docker" experience 2016-09-20 15:35:50 -07:00
shell Improve the "develop inside Docker" experience 2016-09-20 15:35:50 -07:00
shell_root add some extra helper scripts 2016-12-13 09:24:31 +11:00
shutdown_dev docker dev binaries 2015-11-02 13:33:08 +11:00
sidekiq FIX: start sidekiq process for all queues in docker dev 2017-03-02 18:00:24 +00:00

Developing using Docker

Since Discourse runs in Docker, why not develop there? If you have Docker installed, you should be able to run Discourse directly from your source directory using a Discourse development container.

Step-by-step

It should be as easy as (from your source root):

./bin/docker/boot_dev --init
    # wait while:
    #   - dependencies are installed,
    #   - the database is migrated, and
    #   - an admin user is created (you'll need to interact with this)

./bin/docker/rails s

... then open a browser on http://localhost:3000 and voila!, you should see Discourse.

When you're done, you can kill the Docker container with:

./bin/docker/shutdown_dev

Note that data is persisted between invocations of the container in your source root tmp/postgres directory.

If for any reason you want to reset your database run

sudo rm -fr tmp/postgres

Other Notes

Where is the container image/Dockerfile defined?

The Dockerfile comes from discourse/discourse_docker on GitHub, in particular image/discourse_dev.