Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Linux Tools Project/Docker Tooling/User Guide

< Linux Tools Project‎ | Docker Tooling
Revision as of 14:44, 28 May 2015 by Jjohnstn.redhat.com (Talk | contribs) (Docker Images View)

Overview

The Linux Tools Docker Tooling plug-ins allow a user to manage Docker Images and Containers with similar functionality found in the command-line docker command.

For details on Docker and the docker command, see the Docker web-site at http://www.docker.com

Docker Tooling Perspective

A new perspective known as the Docker Tooling Perspective is added.

LinuxToolsDockerPerspective.png

This perspective brings up three new views added:

  • Docker Explorer View - view for creating/managing connections to Docker daemons
  • Docker Images View - view for managing Docker Images
  • Docker Containers View - view for managing Docker Containers

In addition, the Docker Tooling Perspective adds the Console View and the Properties View.

The Console View is used to display logs of stdout/stderr output from Containers and in some instances, allow input to stdin. The Properties View allows clicking on various elements such as Connections, Images, and Containers and getting detailed info not readily shown in the various views mentioned above.

For example, clicking on a connection shows the following:

LinuxToolsDockerConnectionProperties.png

Docker Explorer View

The first view is a tree view of the various connections to Docker daemons. A connection to a Docker daemon is needed before any management of Docker Images or Containers can be performed. On initial start-up, there will be no connections and the Docker Explorer View will display a message regarding this. Note that the Docker Images View and Docker Containers View are controlled by the connection selected in the Docker Explorer View. They will also note there are no connections established yet.

LinuxToolsDockerExplorerViewInit.png

Clicking on the message will bring up the New Connection Wizard.

LinuxToolsNewConnectionWizard.png

The wizard allows the user to select a name for the connection and specify its location. For Linux users that have a local daemon running, this will be defaulted to the Unix socket: unix:///var/run/docker.sock. If a custom connection is desired, clicking the "Use custom connection settings" checkbox will allow the user to fill in either a unix socket address or a TCP address. On Mac or Windows systems, a TCP address will be required. Authentication may be required in which case the user should click on the "Enable authentication" check-box and fill in a path to the authentication files to use.

Once the data is filled, the user can test the connection by clicking on the "Test Connection" button or simply hit the "Finish" button.

More than one connection can be specified. To add more connections, click on the LinuxToolsNewConnectionIcon.png icon to bring up the wizard again. To delete a connection, click on the LinuxToolsRemoveConnectionIcon.png icon. To refresh the tree view, click on the LinuxToolsRefreshConnectionIcon.png icon. Refreshing may be required if the user has performed management outside of Eclipse using the docker command.

The Explorer View shows a tree view with the main nodes being the connections. Each connection opens up to reveal Images and Containers nodes which have children nodes for Images and Containers that the connection knows about. Filtering is provided. Simply click on the generic Menu options (down arrow) and click on "Customize View...". This will bring up the following dialog:

LinuxToolsExplorerFilter.png

From here one can filter out:

  • Dangling Images (intermediate images that are no longer referred to)
  • Intermediate Images (images with no repo tags that are parents of named images)
  • Stopped Containers (this includes paused Containers)
  • Top-level Images (only show the first repo tag for an Image with multiple tags)

Docker Images View

The Docker Images View is used to manage Docker Images.

LinuxToolsDockerImagesView.png

The connection used for the Docker Images View is determined by the latest selection in the Docker Explorer View. Whatever was last selected in the Docker Explorer View is queried for its connection and this is used for the Docker Images View. If there is only one connection, it is defaulted.

There are a number of toolbar actions supported in the Docker Images View:

  • LinuxToolsDockerImageViewPull.png - pull an Image from the Repository (Pull Image
  • LinuxToolsDockerImageViewPush.png - push an Image to the Repository
  • LinuxToolsDockerContainerCreate.png - create a Container from an Image
  • LinuxToolsDockerImageBuild.png - build an Image from a Dockerfile
  • LinuxToolsDockerDeleteImage.png - delete one or more Images
  • LinuxToolsDockerTagImage.png - tag an Image
  • LinuxToolsDockerRefreshImage.png - refresh Images

There are also context menu actions supported:

  • Tag Image - same as the toolbar tag image action
  • Remove Tag - remove a tag from an Image with multiple repo tags

Pull Image

Pulling a Docker Image consists of requesting a repo tag or repository specification. Specifying a repository but no tag will pull all Images from that repo (for example: fedora).

The pull Wizard is used to specify the repository or repo:tag specification.

LinuxToolsDockerPullWizard.png

Once complete, the user hits the "Finish" button or hits "Cancel" to abort.

The pull of an Image may take a long time. This is because an Image may use several intermediate Images each of which may be several bytes. The Linux Tools Docker Tooling provides status jobs to monitor the download of the various Images and has an overall job created to monitor the status of the pull itself. When complete, refreshing of the Docker Explorer View and Docker Images View is automatic.

Push Image

Pushing a Docker Image consists of specifying an existing repo tag to push. By default, Images will be pushed to the default Docker registry, but if a tag contains a registry specifier in addition to repo:tag, it will be pushed to the specified registry. To specify an external or local registry, use the Tag Image function to add a new tag to an existing Image which has the registry specifier and then push that tag.

The push Wizard is used to specify the tag to push.

LinuxToolsDockerPushWizard.png

Like a pull of an Image, pushing an Image may take a long time. The Linux Tools Docker Tooling provides status jobs for the various Images being pushed (may include needed intermediate Images) and an overall job is created to monitor the status of the push job.

Back to the top