Merge pull request #492 from SvenDowideit/add-docs-plus-tooling
Import Kitematic documentation into docs.docker.com
|
|
@ -0,0 +1,22 @@
|
|||
.PHONY: docs docs-shell docs-build run
|
||||
|
||||
# TODO: clearly need to note pre-req's - OSX and node installed? - see contributing docs
|
||||
run:
|
||||
npm install
|
||||
npm run
|
||||
|
||||
# import the existing docs build cmds from docker/docker
|
||||
DOCS_MOUNT := $(if $(DOCSDIR),-v $(CURDIR)/$(DOCSDIR):/$(DOCSDIR))
|
||||
DOCSPORT := 8000
|
||||
GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)
|
||||
DOCKER_DOCS_IMAGE := kitematic-docs$(if $(GIT_BRANCH),:$(GIT_BRANCH))
|
||||
DOCKER_RUN_DOCS := docker run --rm -it $(DOCS_MOUNT)
|
||||
|
||||
docs: docs-build
|
||||
$(DOCKER_RUN_DOCS) -p $(if $(DOCSPORT),$(DOCSPORT):)8000 "$(DOCKER_DOCS_IMAGE)" mkdocs serve
|
||||
|
||||
docs-shell: docs-build
|
||||
$(DOCKER_RUN_DOCS) -p $(if $(DOCSPORT),$(DOCSPORT):)8000 "$(DOCKER_DOCS_IMAGE)" bash
|
||||
|
||||
docs-build:
|
||||
docker build -t "$(DOCKER_DOCS_IMAGE)" -f docs/Dockerfile .
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
FROM docs/base:latest
|
||||
MAINTAINER Sven Dowideit <SvenDowideit@docker.com> (@SvenDowideit)
|
||||
|
||||
# to get the git info for this repo
|
||||
COPY . /src
|
||||
|
||||
# Reset the /docs dir so we can replace the theme meta with the new repo's git info
|
||||
#RUN git reset --hard
|
||||
|
||||
RUN grep '"version"' /src/package.json | sed 's/.*"version": "\(.*\)".*/\1/' > /docs/VERSION
|
||||
COPY docs/* /docs/sources/kitematic/
|
||||
# sadly, COPY is only recursive if you don't also need to name the destination
|
||||
COPY docs/assets/ /docs/sources/kitematic/assets/
|
||||
COPY docs/mkdocs.yml /docs/mkdocs-dhe.yml
|
||||
|
||||
# Then build everything together, ready for mkdocs
|
||||
RUN /docs/build.sh
|
||||
|
After Width: | Height: | Size: 162 KiB |
|
After Width: | Height: | Size: 118 KiB |
|
After Width: | Height: | Size: 166 KiB |
|
After Width: | Height: | Size: 120 KiB |
|
After Width: | Height: | Size: 112 KiB |
|
After Width: | Height: | Size: 161 KiB |
|
After Width: | Height: | Size: 137 KiB |
|
After Width: | Height: | Size: 121 KiB |
|
After Width: | Height: | Size: 405 KiB |
|
After Width: | Height: | Size: 565 KiB |
|
After Width: | Height: | Size: 454 KiB |
|
After Width: | Height: | Size: 240 KiB |
|
After Width: | Height: | Size: 556 KiB |
|
After Width: | Height: | Size: 567 KiB |
|
After Width: | Height: | Size: 124 KiB |
|
After Width: | Height: | Size: 118 KiB |
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 162 KiB |
|
After Width: | Height: | Size: 74 KiB |
|
After Width: | Height: | Size: 125 KiB |
|
After Width: | Height: | Size: 69 KiB |
|
After Width: | Height: | Size: 114 KiB |
|
After Width: | Height: | Size: 172 KiB |
|
After Width: | Height: | Size: 160 KiB |
|
After Width: | Height: | Size: 164 KiB |
|
After Width: | Height: | Size: 80 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 164 KiB |
|
|
@ -0,0 +1,65 @@
|
|||
page_title: Kitematic: Frequently Asked Questions
|
||||
page_description: Documentation covering common questions users have about Kitematic
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui
|
||||
|
||||
|
||||
# Frequently Asked Questions
|
||||
|
||||
### Is Kitematic Open Source?
|
||||
|
||||
Yes! Our source code is available on
|
||||
[GitHub](https://github.com/kitematic/kitematic). Kitematic is open source
|
||||
software released under the Apache 2.0 license.
|
||||
|
||||
### How can I contribute to Kitematic?
|
||||
|
||||
We always welcome (and deeply appreciate!) new contributions to the project. The
|
||||
best way to start contributing to Kitematic is to review our doc on
|
||||
[contributing](https://github.com/kitematic/kitematic/blob/master/CONTRIBUTING.md).
|
||||
|
||||
### How does Kitematic work with Docker?
|
||||
|
||||
Kitematic connects directly do a running instance of Docker and controls it via
|
||||
the Docker Remote API.
|
||||
|
||||
### Which platforms does Kitematic support?
|
||||
|
||||
Right now Kitematic only works on Mac OS X. That said, Windows is on the
|
||||
short-term
|
||||
[roadmap](https://github.com/kitematic/kitematic/blob/master/ROADMAP.md) (coming
|
||||
soon!) and a Linux version is in high demand.
|
||||
|
||||
### Why does Kitematic collect usage analytics and bug reports?
|
||||
|
||||
Kitematic tracks anonymous errors and analytics to help understand why things go
|
||||
wrong and to help understand how users are interacting with the app so we can
|
||||
continuously make it better.
|
||||
|
||||
You can opt-out of this anytime via the in-app preferences.
|
||||
|
||||
#### What we DON'T collect
|
||||
|
||||
- Personal information: any information that would allow us to determine a
|
||||
specific user of Kitematic
|
||||
- Information or data relating to code, containers or Docker images opened via
|
||||
Kitematic.
|
||||
|
||||
#### What we DO collect
|
||||
|
||||
- Anonymous events for actions in the app. We never collect data associated with
|
||||
events. For example:
|
||||
- User searched for images (but not what the search query was).
|
||||
- User created a container (but not which image, the name of the container or
|
||||
any data involved)
|
||||
- User opened the preferences pane
|
||||
- User deleted a container
|
||||
- Errors names, messages & stack traces (scrubbed for user names)
|
||||
- Operating System, Kitematic and installed VirtualBox versions
|
||||
|
||||
We'd love to answer any more questions about this. Feel free to reach us at
|
||||
kitematic@docker.com or to open an issue on GitHub.
|
||||
|
||||
## Next Steps
|
||||
|
||||
For information about known issues in the current release of Kitematic, take a
|
||||
look at the [Known issues](./known-issues.md).
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
page_title: Kitematic User Guide: Intro & Overview
|
||||
page_description: Documentation that provides an overview of Kitematic and installation instructions
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui
|
||||
|
||||
# Installing Kitematic
|
||||
|
||||
You install Kitematic much the same way you install any application on a Mac or
|
||||
Windows PC: download an image and run an installer.
|
||||
|
||||
## Download Kitematic
|
||||
|
||||
[Download the Kitematic zip file](https://kitematic.com/download/), unzip the
|
||||
file by double-clicking it, and then double-click the application to run it.
|
||||
You'll probably also want to put the application in your Applications folder.
|
||||
|
||||
## Initial Setup
|
||||
|
||||
Opening Kitematic for the first time sets up everything you need to run Docker
|
||||
containers. If you don't already have VirtualBox installed, Kitematic will
|
||||
download and install the latest version.
|
||||
|
||||

|
||||
|
||||
All Done! Within a minute you should be ready to start running your first
|
||||
container!
|
||||
|
||||

|
||||
|
||||
## Technical Details
|
||||
|
||||
Kitematic is a self-contained .app, with a two exceptions:
|
||||
|
||||
- It will install VirtualBox if it's not already installed.
|
||||
- It copies the `docker` and `docker-machine` binaries to `/usr/local/bin` for
|
||||
convenience.
|
||||
|
||||
### Why does Kitematic need my root password?
|
||||
|
||||
Kitematic needs your root password for two reasons:
|
||||
|
||||
- Installing VirtualBox requires root as it includes Mac OS X kernel extensions.
|
||||
- Copying `docker` and `docker-machine` to `/usr/local/bin` may require root
|
||||
permission if the default permissions for this directory have been changed
|
||||
prior to installing Kitematic.
|
||||
|
||||
## Next Steps
|
||||
|
||||
For information about using Kitematic, take a look at the [User Guide](./userguide.md).
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
page_title: Kitematic Known Issues
|
||||
page_description: Information about known issues in Kitematic
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui
|
||||
|
||||
# Known Issues
|
||||
|
||||
|
||||
Kitematic is in beta, so we're still working out the kinks. The most common
|
||||
errors occur at the setup stage since creating a VM reliably with VirtualBox can
|
||||
be tricky. We are working on this problem.
|
||||
|
||||
In the meantime, below are a list of common errors and solutions that work for
|
||||
most people.
|
||||
|
||||
## Setup Error or Hanging at 99%
|
||||
|
||||
Sometimes Kitematic doesn't set up VirtualBox properly. Retrying the setup
|
||||
usually works (via one of the two retry buttons). If not, try the following
|
||||
commands on the command line:
|
||||
|
||||
- `docker-machine rm -f dev`
|
||||
- `docker-machine create -d virtualbox dev`
|
||||
|
||||
Then re-open Kitematic. This usually fixes the issue, but if it persists, feel
|
||||
free to view our [existing GitHub
|
||||
issues](https://github.com/kitematic/kitematic/issues?q=is%3Aopen+is%3Aissue+label%3Abug).
|
||||
|
||||
## Contributing Fixes
|
||||
|
||||
We're always looking for help to make Kitematic better and more reliable! Visit
|
||||
[our GitHub page](https://github.com/kitematic/kitematic) for docs on how to
|
||||
contribute.
|
||||
|
||||
Under the hood, Kitematic uses [Docker
|
||||
Machine](https://github.com/docker/machine) to provision Docker-enabled VMs via
|
||||
VirtualBox. We're still working on a stronger integration with this project.
|
||||
Their [GitHub repo](https://github.com/docker/machine) is a great place to start
|
||||
if you're looking to help fix specific issues around VM provisioning.
|
||||
|
||||
## View All Issues
|
||||
|
||||
For a full list of Kitematic bugs or issues see our [GitHub
|
||||
issues](https://github.com/kitematic/kitematic/issues?q=is%3Aopen+is%3Aissue+label%3Abug)
|
||||
labelled as `bug`.
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
page_title: Kitematic Tutorial: Set up a Minecraft Server
|
||||
page_description: Tutorial demonstrating the setup of a Minecraft server using Docker and Kitematic
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui, minecraft, tutorial
|
||||
|
||||
# Kitematic tutorial: Set up a Minecraft server
|
||||
|
||||
This is a quick tutorial demonstrating how to set up a local Minecraft server
|
||||
using Kitematic and Docker.
|
||||
|
||||
### Create Minecraft Server Container
|
||||
|
||||
First, if you haven't yet done so, [download and start
|
||||
Kitematic](./index.md). Once installed and running, the app should look like this:
|
||||
|
||||
Create a container from the recommended Minecraft image by clicking the "Create"
|
||||
button.
|
||||
|
||||

|
||||
|
||||
After the image finishes downloading, you'll see the home screen for the
|
||||
Minecraft container. Your Minecraft server is now up and running inside a Docker
|
||||
container. Note that we've marked the IP and port you can use to connect to
|
||||
your Minecraft server in red (your IP and port may be different from what's
|
||||
shown).
|
||||
|
||||

|
||||
|
||||
### Connect to Minecraft server
|
||||
|
||||
Open your Minecraft client, log in with your Minecraft account and click on the
|
||||
"Multiplayer" button.
|
||||
|
||||

|
||||
|
||||
Click the "Add Server" button to add the Minecraft server you want to connect
|
||||
to.
|
||||
|
||||

|
||||
|
||||
Fill in the "Server Address" text box with the marked IP and port from Kitematic
|
||||
you saw earlier.
|
||||
|
||||

|
||||
|
||||
Click on the play button to connect to your Minecraft server and enjoy!
|
||||
|
||||
|
||||
### Change map using Docker volume
|
||||
|
||||
Open the "data" folder from Kitematic (You'll need to "Enable all volumes to edit
|
||||
files via Finder"). We use Docker Volume to map the folder from the Minecraft
|
||||
Docker container onto your computer.
|
||||
|
||||

|
||||
|
||||
The Finder will open, allowing you to replace your current map with the new one
|
||||
you desire.
|
||||
|
||||

|
||||
|
||||
Restart your container by clicking the "Restart" button.
|
||||
|
||||

|
||||
|
||||
Go back to your Minecraft client and join your server. The new map should load.
|
||||
|
||||
|
||||
## Next Steps
|
||||
|
||||
For an example using Kitematic to run Nginx, take a look at the [Nginx web
|
||||
server](./nginx-web-server.md) page.
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
|
||||
# Kitematic
|
||||
- ['kitematic/index.md', 'Installation', 'Kitematic on OS X']
|
||||
|
||||
- ['kitematic/userguide.md', 'User Guide', 'Kitematic']
|
||||
|
||||
- ['kitematic/minecraft-server.md', 'Examples', 'Kitematic: Minecraft server']
|
||||
- ['kitematic/nginx-web-server.md', 'Examples', 'Kitematic: Ngnix web server']
|
||||
- ['kitematic/rethinkdb-dev-database.md', 'Examples', 'Kitematic: RethinkDB development database']
|
||||
|
||||
- ['kitematic/faq.md', 'Reference', 'Kitematic: FAQ']
|
||||
- ['kitematic/known-issues.md', 'Reference', 'Kitematic: Known issues']
|
||||
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
page_title: Kitematic Tutorial: Set up an Nginx web server
|
||||
page_description: Tutorial demonstrating the setup of an Nginx web server using Docker and Kitematic
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui, nginx, tutorial
|
||||
|
||||
# Serving a Static Website with Nginx
|
||||
|
||||
In this tutorial, you will:
|
||||
|
||||
- Download and run a web server container
|
||||
- Explore the container's website data natively on your Mac
|
||||
- Use volumes to modify the website data
|
||||
|
||||
In this example website we'll be serving the popular 2048 game, as shown below.
|
||||
Let's get to it!
|
||||
|
||||

|
||||
|
||||
#### Running the Nginx Web Server Container
|
||||
|
||||
First, if you haven't yet done so, [download and start
|
||||
Kitematic](./index.md). Once installed and running, the app should look like this:
|
||||
|
||||

|
||||
|
||||
Click on the _Create_ button of the `hello-world-nginx` listing as shown above.
|
||||
Kitematic will download (also known as pull the image) and then run a tiny Nginx web server
|
||||
in a Docker container, allowing it to serve website data to your Mac.
|
||||
|
||||

|
||||
|
||||
Once it's done downloading you should see a quick preview of the example website
|
||||
that comes with the container, as shown below. Click on the preview to see the
|
||||
result in your own browser.
|
||||
|
||||

|
||||
|
||||
**What just happened?** Kitematic downloaded the `kitematic/hello-world-nginx`
|
||||
image from the Docker Hub and then created and ran a Docker Nginx container from
|
||||
this image.
|
||||
|
||||
#### Viewing the Website Data in Finder
|
||||
|
||||
This container exposes website data via a _Docker volume_. Kitematic makes
|
||||
managing Docker volumes easy - you can edit the data in Finder or with your
|
||||
favorite text editor. By default, Kitematic places volumes under `~/Kitematic`
|
||||
but you can change this in the container settings. To access the files via
|
||||
finder, click on the in-app folder icon for a container and "Enable all volumes
|
||||
to edit via Finder":
|
||||
|
||||

|
||||
|
||||
A Finder window of the folder should open containing the index.html file we see
|
||||
being served by the container.
|
||||
|
||||

|
||||
|
||||
#### Serving Your Own Website Data
|
||||
|
||||
Now let's try serving a more interesting website. [Download the zipped
|
||||
files](https://github.com/gabrielecirulli/2048/archive/master.zip) for 2048, a
|
||||
popular (and addictive) web-based tile game. Extract this zip file into the
|
||||
folder you just opened:
|
||||
|
||||

|
||||
|
||||
Switch back to Kitematic and restart the container by clicking the "Restart"
|
||||
button as shown below. Your Nginx container should now be serving 2048.
|
||||
|
||||

|
||||
|
||||
**What just happened?**
|
||||
|
||||
Kitematic can map Docker container volumes to directories on your
|
||||
Mac. In this case you changed the container's volume data via the Finder to
|
||||
serve a website we downloaded.
|
||||
|
||||
## Next Steps
|
||||
|
||||
For an example using Kitematic to run a Local RethinkDB database, take a look at
|
||||
the [RethinkDB development Database](./rethinkdb-dev-database.md) example.
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
page_title: Kitematic Tutorial: Set up an Nginx web server
|
||||
page_description: Tutorial demonstrating the setup of an Nginx web server using Docker and Kitematic
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui, rethink, tutorial
|
||||
|
||||
# Creating a Local RethinkDB Database for Development
|
||||
|
||||
In this tutorial, you will:
|
||||
|
||||
- Create a RethinkDB Container for Development
|
||||
- (Advanced) Clone a small Node.js application and write data into RethinkDB.
|
||||
|
||||
### Setting up RethinkDB in Kitematic
|
||||
|
||||
First, if you haven't yet done so, [download and start
|
||||
Kitematic](./index.md). Once open, the app should look like
|
||||
this:
|
||||
|
||||

|
||||
|
||||
Click on the _Create_ button of the `rethinkdb` image listing in the recommended
|
||||
list as shown above. This will download & run a RethinkDB container within a few
|
||||
minutes. Once it's done, you'll have a local RethinkDB database up and running.
|
||||
|
||||

|
||||
|
||||
Let's start using it to develop a node.js app. For now, let's figure out which
|
||||
IP address and port RethinkDB is listening on. To find out, click the `Settings`
|
||||
tab and then the `Ports` section:
|
||||
|
||||

|
||||
|
||||
You can see there that for RethinkDB port `28015`, the container is listening on
|
||||
host `192.168.99.100` and port `49154` (in this example - ports may be different
|
||||
for you). This means you can now reach RethinkDB via a client driver at
|
||||
`192.168.99.100:49154`. Again, this IP address may be different for you.
|
||||
|
||||
### (Advanced) Saving Data into RethinkDB with a local Node.js App
|
||||
|
||||
First, if you don't have it yet, [download and install
|
||||
Node.js](http://nodejs.org/).
|
||||
|
||||
> **Note**: this example needs Xcode installed. We'll replace it with something
|
||||
> with fewer dependencies soon.
|
||||
|
||||
Now, you'll create the RethinkDB example chat application running on your local
|
||||
OS X system to test drive your new containerized database.
|
||||
In your terminal, type:
|
||||
|
||||
$ export RDB_HOST=192.168.99.100 # replace with IP from above step
|
||||
$ export RDB_PORT=49154 # replace with Port from above step
|
||||
$ git clone https://github.com/rethinkdb/rethinkdb-example-nodejs-chat
|
||||
$ cd rethinkdb-example-nodejs-chat
|
||||
$ npm install
|
||||
$ npm start
|
||||
|
||||
Now, point your browser to `http://localhost:8000`. Congratulations, you've
|
||||
successfully used a RethinkDB container in Kitematic to build a real-time chat
|
||||
app. Happy coding!
|
||||
|
||||

|
||||
|
||||
|
|
@ -0,0 +1,188 @@
|
|||
page_title: Kitematic User Guide: Intro & Overview
|
||||
page_description: Documentation that provides an overview of Kitematic and installation instructions
|
||||
page_keywords: docker, documentation, about, technology, kitematic, gui
|
||||
|
||||
# Kitematic user guide
|
||||
|
||||
## Overview
|
||||
|
||||
Kitematic is an open source project built to simplify and streamline using
|
||||
Docker on a Mac or Windows (coming soon) PC. Kitematic automates the Docker
|
||||
installation and setup process and provides an intuitive graphical user
|
||||
interface (GUI) for running Docker containers. Kitematic integrates with
|
||||
[Docker Machine](http://docs.docker.com/machine/) to provision a VirtualBox VM
|
||||
and install the Docker Engine locally on your machine.
|
||||
|
||||
Once installed, the Kitematic GUI launches and from the home screen you will be
|
||||
presented with curated images that you can run instantly. You can search for any
|
||||
public images on Docker Hub from Kitematic just by typing in the search bar.
|
||||
You can use the GUI to create, run and manage your containers just by clicking
|
||||
on buttons. Kitematic allows you to switch back and forth between the Docker CLI
|
||||
and the GUI. Kitematic also automates advanced features such as managing ports
|
||||
and configuring volumes. You can use Kitematic to change environment variables,
|
||||
stream logs, and single click terminal into your Docker container all from the
|
||||
GUI.
|
||||
|
||||
First, if you haven't yet done so, [download and start
|
||||
Kitematic](./index.md).
|
||||
|
||||
## Container list
|
||||
|
||||
Kitematic lists all running and stopped containers on the left side, underneath
|
||||
the "New Container" link.
|
||||
|
||||
The container list includes all containers, even those not started by Kitematic,
|
||||
giving you a quick over-view of the state of your Docker daemon.
|
||||
|
||||
You can click on any container to view its logs (the output of the PID-0 process),
|
||||
restart, stop or exec `sh` in that container. See [Working with a
|
||||
container](#working-with-a-container) for more details.
|
||||
|
||||
## Creating a new container
|
||||
|
||||
The "New Container" page lets you search for and select from images on the Docker Hub.
|
||||
When you've found the image you want to run, you can click "Create" to pull, create,
|
||||
and run the container.
|
||||
|
||||

|
||||
|
||||
## Working with a container
|
||||
|
||||
If you select a non-running container, either stopped, or paused, you will be able to
|
||||
"Restart" or "Stop" the container using the icons. You can also view the entire PID-0
|
||||
output logs, and in the Settings section you can make changes which will be used if you
|
||||
"Restart" this container.
|
||||
|
||||
By selecting a running container from the left list, you can see some state information
|
||||
for your container - either a preview of the HTML output for a container that has a web
|
||||
server, the PID-0 logs, and any container volumes that have been configured.
|
||||
|
||||

|
||||
|
||||
The summary page will show different things depending on the image metadata. If
|
||||
port 80 is `EXPOSED`, then Kitematic assumes its a web page, and will show a preview
|
||||
of the site at `/`. If other ports are exposed, then it will show a list of those
|
||||
ports, and the Docker daemon IP and port they are mapped to. If there are any `VOLUMES`,
|
||||
then these will be shown. At minimum, the summary screen will show the PID-0 log output.
|
||||
|
||||
### Viewing container logs
|
||||
|
||||
You can view the entire PID-0 container log output either by cicking on the "Logs"
|
||||
preview image, or by clicking on the "Logs" tab.
|
||||
|
||||
You can then scroll through the logs from the current running container. Note that
|
||||
if you make changes to the container Settings, then the container will be restarted,
|
||||
so will reset this log view.
|
||||
|
||||
### Starting a terminal in a container
|
||||
|
||||
The "Terminal" icon at the top of the container summary will `docker exec sh <your container>`.
|
||||
This will allow you to make quick changes, or to debug a problem.
|
||||
|
||||
> **Note**: Your execed `sh` process will not have the same environment settings
|
||||
> as the main PID-0 process and its children.
|
||||
|
||||
### Managing Volumes
|
||||
|
||||
You can choose to make all of a container's volumes mapped to directories on
|
||||
on your Mac by clicking on the folders in the "Edit Files" section of the
|
||||
container summary screen.
|
||||
|
||||
This allows you to manage files in volumes via the Finder.
|
||||
Kitematic exposes a container's volume data under `~/Kitematic/<container's name>/`.
|
||||
Quick access to this folder (or directory) is available via the app:
|
||||
|
||||

|
||||
|
||||
> **Note**: When you "Enable all volumes to edit files in Finder", the Docker
|
||||
> container will be stopped, removed and re-created with the new `volumes`
|
||||
> flag.
|
||||
|
||||
#### Changing Volume Directories
|
||||
|
||||
Let's say you have an Nginx webserver running via Kitematic (using the
|
||||
`kitematic/hello-world-nginx` image on DockerHub). However, you don't want to
|
||||
use the default directory created for the website_files volume. Instead, you
|
||||
already have the HTML, Javascript, and CSS for your website under
|
||||
`~/workspace/website`.
|
||||
|
||||
Navigate to the "Settings" tab of the container, and goto the "Volumes". This
|
||||
screen allows you to set the mappings individually.
|
||||
|
||||

|
||||
|
||||
> **Note**: When you "Change Folders", the Docker
|
||||
> container will be stopped, removed and re-created with the new `volumes`
|
||||
> flag.
|
||||
|
||||
### Setting the container name
|
||||
|
||||
By default, Kitematic sets the container name to the same as the image name (or
|
||||
with a `-<number>` if there are more than one.
|
||||
To simplify administration, or when using container linking or volumes, you may
|
||||
want to rename it.
|
||||
|
||||
> **Note**: When you rename the container it will be stopped, removed and
|
||||
> re-created with the new name (due to the default volumes mapping).
|
||||
|
||||
### Adding Environment variables
|
||||
|
||||
Many images use environment variables to let you customise them. The "General"
|
||||
"Settings" tab allows you to add and modify the environment variables used to
|
||||
start a container.
|
||||
|
||||
The list of Environment variables will show any that have been set on the image
|
||||
metadata - for example, using the `ENV` instruction in the Dockerfile.
|
||||
|
||||
<TODO: image of the jenkins container>
|
||||
|
||||
Wen you "Save" the changed environment variables, the container will be stopped
|
||||
removed and re-created.
|
||||
|
||||
### Delete container
|
||||
|
||||
On the "General" "Settings" tab, you can delete the container. Clicking "Delete
|
||||
Container" will also stop the container if necessary.
|
||||
|
||||
You can also delete a container clicking the `X` icon in the container list.
|
||||
|
||||
Kitematic will prompt you to confirm that you want to delete.
|
||||
|
||||
#### List the exposed Ports and how to access them
|
||||
|
||||
To see the complete list of exposed ports, go to "Settings" then "Ports". This
|
||||
page lists all the container ports exposed, and the IP address and host only
|
||||
network port that you can access use to access that container from your OS X
|
||||
system.
|
||||
|
||||
## Docker Command-line Access
|
||||
|
||||
You can interact with existing containers in Kitematic or create new containers
|
||||
via the Docker Command Line Interface (CLI). Any changes you make on the CLI are
|
||||
directly reflected in Kitematic.
|
||||
|
||||
To open a terminal via Kitematic, just press whale button at the bottom left, as
|
||||
shown below:
|
||||
|
||||

|
||||
|
||||
### Example: Creating a new Redis container
|
||||
|
||||
Start by opening a Docker-CLI ready terminal by clicking the whale button as
|
||||
described above. Once the terminal opens, enter `docker run -d -P redis`. This
|
||||
will pull and run a new Redis container via the Docker CLI.
|
||||
|
||||

|
||||
|
||||
> **Note**: If you're creating containers from the commandline, use `docker run -d`
|
||||
> so that Kitematic can re-create the container when settings are changed via the
|
||||
> Kitematic user interface. containers started without `-d` will fail to re-start.
|
||||
|
||||
Now, go back to Kitematic. The Redis container should now be visible.
|
||||
|
||||

|
||||
|
||||
## Next Steps
|
||||
|
||||
For an example using Kitematic to run a Minecraft server, take a look at
|
||||
the [Mincraft server](./minecraft-server.md) page.
|
||||