Skip to content

Commit

Permalink
Release version 1.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
0xOI committed Mar 13, 2017
1 parent 9a5fa7f commit 8e275b5
Show file tree
Hide file tree
Showing 3 changed files with 48 additions and 11 deletions.
10 changes: 9 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,16 @@
# Dock Change Log

## 1.4.1 (2017-03-13)

* Add 'transform' option allowing users to fully merge and compose an existing
extended Dock container
* Download and install docker-compose tool within Dock Dockerfile
* Replace Dock configuration label (i.e. compose/dock.<project>) values with the path
for each file within the container rather than its contents

## 1.4.0 (2017-02-27)

* Add dock environment 'extension' option allowing users to build
* Add 'extension' option allowing users to build
environments consisting of multiple projects/services
* Update container inspection and modification methods to operate
on either the project default dock container or a different
Expand Down
47 changes: 38 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ environments inside [Docker](https://www.docker.com/) containers.
* [Attach to an already-running container](#attach-to-an-already-running-container)
* [Destroy an already-running container](#destroy-an-already-running-container)
* [Run a container in the background](#run-a-container-in-the-background)
* [Extend an existing container](#extend-a-container)
* [Extend an existing container](#extend-an-existing-container)
* [Terraform an existing container](#terraform-an-existing-container)
* [Automatically execute a script in a Dock container](#automatically-execute-a-script-in-a-dock-container)
* [Expose services inside the container on your host](#expose-services-inside-the-container-on-your-host)
* [Configuration](#configuration)
Expand Down Expand Up @@ -119,10 +120,11 @@ Option | Description
`-a` | Attach to an already-running Dock container
`-c config-file` | Path of Dock configuration file to use (default `.dock`)
`-d` | Detach/daemonize (run resulting Dock container in the background)
`-e environment-id` | Extend an existing Dock container with a new project
`-e dock-id` | Extend an existing Dock container (add new project configuration and services)
`-f` | Force creation of new container (destroying old one if it exists)
`-h` | Display summary of command line options
`-q` | Silence Dock-related output (so only output from command run in the container is shown)
`-t dock-id` | Terraform an existing Dock container (fully compose and merge embedded projects)
`-v` | Display version information
`-V` | Display verbose version information (for bug reports)

Expand Down Expand Up @@ -162,16 +164,43 @@ Run `dock -d` or specify `detach true` in your Dock configuration.
You can run multiple projects within a single `Dock` container in very much the
same way `Dock` runs a single project.

If you run `dock` in a repository and specify a `Dock` environment identifier to
extend, `dock` will add the project src and all associated environment configuration
(e.g. volumes, exposed ports, environment variables) to the `Dock` container represented
by the identifier. If the specified `Dock` environment identifier does not exist (locally
or remote), `dock` will create and run a new `Dock` container based on the configuration of
the project and supplied identifier.
If you run `dock` in a repository and specify a `Dock` container identifier (used
to annotate and distinguish between `Dock` container environments) to extend, `dock`
will add the project src and all associated environment configuration (e.g. volumes,
exposed ports, environment variables) into the `Dock` container represented by the
identifier.

If the specified `Dock` container does not exist, `dock` will create and run a new
`Dock` container based on the configuration of the current project.

```bash

$ cd /<path-to-project> # step 1
$ dock -e <dock-id> # step 2
...
SUCCESS: Dock <dock-id> successfully created!
$ cd /<path-to-new-project> # step 3
$ dock -e <dock-id> # step 4
...
SUCCESS: Dock <dock-id> successfully extended!
```

### Terraform an existing container

Specifying a `-t` flag along with a `Dock` container identifier when running `Dock`
will result in the full composition and merging of the embedded project components
within the container. This option essentially stands up all services and associated
components added to the target `Dock` container using the `extends` options while also
handling the proper identification and deduplication of shared components.

The result of the operation will be a container consistent with running `docker-compose up`
on each docker-compose.yml file associated with all projects embedded within
and obeying [Docker's official docker-compose extension support](https://docs.docker.com/compose/extends/).
```bash
dock -e [environment-identifier]

$ dock -t <dock-id> # step 1
...
SUCCESS: Dock <dock-id> successfully terraformed!
```

### Automatically execute a script in a Dock container
Expand Down
2 changes: 1 addition & 1 deletion bin/dock
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@

set -euo pipefail

dock_version="1.4.0"
dock_version="1.4.1"
dock_bin="$0"

# We want all output to go to STDERR so that STDOUT receives output from the
Expand Down

0 comments on commit 8e275b5

Please sign in to comment.