2658ef5e0b
To get the database rebuilt requires a restart of the container. I also added a rake admin:create, since it's useful, and it's what `boot_dev --init `does. |
||
---|---|---|
.. | ||
README.md | ||
boot_dev | ||
bundle | ||
mailcatcher | ||
migrate | ||
psql | ||
rails | ||
rake | ||
reset_db | ||
shell | ||
shell_root | ||
shutdown_dev | ||
sidekiq |
README.md
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.