DOCS: correct syntax error in readme
[discourse_docker.git] / README.md
index b5c45c1332f73261e9aaabdac9bf5b93e8200179..be05ba87a18c2e55a51755dcbf3674ab67c40024 100644 (file)
--- a/README.md
+++ b/README.md
@@ -36,19 +36,15 @@ Placeholder spot for shared volumes with various Discourse containers. You may e
 
 #### `/image`
 
-Dockerfile for both the base image `/discourse_base` and discourse image `/discourse`.
+Dockerfiles for Discourse; see [the README](image/README.md) for further details.
 
-- `/discourse_base` contains all the OS dependencies including sshd, runit, postgres, nginx, ruby.
-
-- `/discourse` builds on the base image and configures a discourse user and `/var/www/discourse` directory for the Discourse source.
-
-The Docker repository will always contain the latest built version at: https://index.docker.io/u/samsaffron/discourse/ , you should not need to build the base image.
+The Docker repository will always contain the latest built version at: https://hub.docker.com/r/discourse/base/, you should not need to build the base image.
 
 ### Launcher
 
-The base directory contains a single bash script which is used to manage containers. You can use it to "bootstrap" a new container, ssh in, start, stop and destroy a container.
+The base directory contains a single bash script which is used to manage containers. You can use it to "bootstrap" a new container, enter, start, stop and destroy a container.
 
-```
+```yaml
 Usage: launcher COMMAND CONFIG [--skip-prereqs]
 Commands:
     start:      Start/initialize a container
@@ -57,6 +53,7 @@ Commands:
     destroy:    Stop and remove a container
     enter:      Use docker exec to enter a container
     logs:       Docker logs for container
+    memconfig:  Configure sane defaults for available RAM
     bootstrap:  Bootstrap a container for the config based on a template
     rebuild:    Rebuild a container (destroy old, bootstrap, start new)
 ```
@@ -69,7 +66,7 @@ The beginning of the container definition can contain the following "special" se
 
 #### templates:
 
-```
+```yaml
 templates:
   - "templates/cron.template.yml"
   - "templates/postgres.template.yml"
@@ -79,18 +76,18 @@ This template is "composed" out of all these child templates, this allows for a
 
 #### expose:
 
-```
+```yaml
 expose:
   - "2222:22"
   - "127.0.0.1:20080:80"
 ```
 
-Expose port 22 inside the container on port 2222 on ALL local host interfaces. In order to bind to only one interface, you may specify the host's IP address as `([<host_interface>:[host_port]])|(<host_port>):<container_port>[/udp]` as defined in the [docker port binding documentation](http://docs.docker.com/userguide/dockerlinks/)
+Publish port 22 inside the container on port 2222 on ALL local host interfaces. In order to bind to only one interface, you may specify the host's IP address as `([<host_interface>:[host_port]])|(<host_port>):<container_port>[/udp]` as defined in the [docker port binding documentation](http://docs.docker.com/userguide/dockerlinks/). To expose a port without publishing it, specify only the port number (e.g., `80`).
 
 
 #### volumes:
 
-```
+```yaml
 volumes:
   - volume:
       host: /var/discourse/shared
@@ -101,7 +98,8 @@ volumes:
 Expose a directory inside the host to the container.
 
 #### links:
-```
+
+```yaml
 links:
   - link:
       name: postgres
@@ -111,6 +109,33 @@ links:
 Links another container to the current container. This will add `--link postgres:postgres`
 to the options when running the container.
 
+#### environment variables:
+
+Setting environment variables to the current container.
+
+```yaml
+# app.yml
+
+env:
+  DISCOURSE_DB_HOST: some-host
+  DISCOURSE_DB_NAME: "{{config}}_discourse"
+```
+
+The above will add `-e DISCOURSE_DB_HOST=some-host -e DISCOURSE_DB_NAME=app_discourse` to the options when running the container.
+
+#### labels:
+
+```yaml
+# app.yml
+
+labels:
+  monitor: "true"
+  app_name: "{{config}}_discourse"
+```
+
+Add labels to the current container. The above will add `--l monitor=true -l app_name=dev_discourse` to the options
+when running the container
+
 ### Upgrading Discourse
 
 The Docker setup gives you multiple upgrade options:
@@ -172,24 +197,7 @@ installs you can ensure they are in sync by looking at `/etc/passwd` and
 - [Setting up SSL with Discourse Docker](https://meta.discourse.org/t/allowing-ssl-for-your-discourse-docker-setup/13847)
 - [Multisite configuration with Docker](https://meta.discourse.org/t/multisite-configuration-with-docker/14084)
 - [Linking containers for a multiple container setup](https://meta.discourse.org/t/linking-containers-for-a-multiple-container-setup/20867)
-- [Replace rubygems.org with taobao mirror to resolve network error in China](https://meta.discourse.org/t/replace-rubygems-org-with-taobao-mirror-to-resolve-network-error-in-china/21988/1)
-
-### Developing with Vagrant
-
-If you are looking to make modifications to this repository, you can easily test
-out your changes before committing, using the magic of
-[Vagrant](http://vagrantup.com).  Install Vagrant as per [the default
-instructions](http://docs.vagrantup.com/v2/installation/index.html), and
-then run:
-
-    vagrant up
-
-This will spawn a new Ubuntu VM, install Docker, and then await your
-instructions.  You can then SSH into the VM with `vagrant ssh`, become
-`root` with `sudo -i`, and then you're right to go.  Your live git repo is
-already available at `/var/discourse`, so you can just `cd /var/discourse`
-and then start running `launcher`.
-
+- [Using Rubygems mirror to improve connection problem in China](https://meta.discourse.org/t/replace-rubygems-org-with-taobao-mirror-to-resolve-network-error-in-china/21988/1)
 
 License
 ===