moby--moby/docs
Marco Hennings fcee6056dc Login against private registry
To improve the use of docker with a private registry the login
command is extended with a parameter for the server address.

While implementing i noticed that two problems hindered authentication to a
private registry:

1. the resolve of the authentication did not match during push
   because the looked up key was for example localhost:8080 but
   the stored one would have been https://localhost:8080

   Besides The lookup needs to still work if the https->http fallback
   is used

2. During pull of an image no authentication is sent, which
   means all repositories are expected to be private.

These points are fixed now. The changes are implemented in
a way to be compatible to existing behavior both in the
API as also with the private registry.

Update:

- login does not require the full url any more, you can login
  to the repository prefix:

  example:
  docker logon localhost:8080

Fixed corner corner cases:

- When login is done during pull and push the registry endpoint is used and
  not the central index

- When Remote sends a 401 during pull, it is now correctly delegating to
  CmdLogin

- After a Login is done pull and push are using the newly entered login data,
  and not the previous ones. This one seems to be also broken in master, too.

- Auth config is now transfered in a parameter instead of the body when
  /images/create is called.
2013-09-03 20:45:49 +02:00
..
sources Login against private registry 2013-09-03 20:45:49 +02:00
theme Fix #1684: Old Welcome is now Introduction. Working with Repos now follows Builder. 2013-08-27 14:29:49 -07:00
Dockerfile added a Dockerfile which installs all deps and builds the docs. 2013-08-30 00:13:32 +00:00
MAINTAINERS Add GitHub usernames to MAINTAINERS 2013-08-09 21:16:44 -04:00
Makefile Add list of Docker Remote API Client Libraries. Fixes #800. 2013-06-10 15:17:27 -07:00
README.md Fixed typos 2013-08-12 18:53:06 +01:00
requirements.txt added new sphinx contrib extention for better REST API docs, and changed the index search API so that it uses the new docs, as a test to make sure it works correctly 2013-05-06 13:38:51 -04:00

README.md

Docker Documentation

Documentation

This is your definite place to contribute to the docker documentation. After each push to master the documentation is automatically generated and made available on docs.docker.io

Each of the .rst files under sources reflects a page on the documentation.

Installation

  • Work in your own fork of the code, we accept pull requests.
  • Install sphinx: pip install sphinx
    • Mac OS X: [sudo] pip-2.7 install sphinx)
  • Install sphinx httpdomain contrib package: pip install sphinxcontrib-httpdomain
    • Mac OS X: [sudo] pip-2.7 install sphinxcontrib-httpdomain
  • If pip is not available you can probably install it using your favorite package manager as python-pip

Usage

  • Change the .rst files with your favorite editor to your liking.
  • Run make docs to clean up old files and generate new ones.
  • Your static website can now be found in the _build directory.
  • To preview what you have generated run make server and open http://localhost:8000/ in your favorite browser.

Working using GitHub's file editor

Alternatively, for small changes and typo's you might want to use GitHub's built in file editor. It allows you to preview your changes right online. Just be careful not to create many commits.

Images

When you need to add images, try to make them as small as possible (e.g. as gif).

Notes

  • For the template the css is compiled from less. When changes are needed they can be compiled using lessc lessc main.less or watched using watch-lessc watch-lessc -i main.less -o main.css

Guides on using sphinx

  • To make links to certain pages create a link target like so:

      .. _hello_world:
    
      Hello world
      ===========
    
      This is.. (etc.)
    

    The _hello_world: will make it possible to link to this position (page and marker) from all other pages.

  • Notes, warnings and alarms

      # a note (use when something is important)
      .. note::
    
      # a warning (orange)
      .. warning::
    
      # danger (red, use sparsely)
      .. danger::
    
    
  • Code examples

    Start without $, so it's easy to copy and paste.

Manpages

  • To make the manpages, simply run 'make man'. Please note there is a bug in spinx 1.1.3 which makes this fail. Upgrade to the latest version of sphinx.
  • Then preview the manpage by running man _build/man/docker.1, where _build/man/docker.1 is the path to the generated manfile
  • The manpages are also autogenerated by our hosted readthedocs here: http://docs-docker.dotcloud.com/projects/docker/downloads/