<div class="container">
  <div class="alert alert-warning">Warning: Quay requires docker version 0.6.2 or higher to work</div>

  <h2>User Guide</h2>
  <div class="user-guide container">
  
    <h3>Pulling a repository from Quay</h3>
    <div class="container">
      <div class="alert alert-info">Note: <b>Private</b> repositories require you to be <b>logged in</b> or the pull will fail. See below for how to sign into Quay if you have never done so before. </div>
      To pull a repository from Quay, run the following command:
      <br><br>
      <pre>docker pull quay.io/<i>username/repo_name</i></pre>
    </div>
    <br>


    <h3>Pushing a repository to Quay <span class="label label-success">Requires Write Access</span></h3>
    <div class="container">
      First, tag the image with your repository name:<br><br>
      <pre>docker tag <i>0u123imageid</i> quay.io/<i>username/repo_name</i></pre>
      <br>
      Second, push the repository to Quay:<br><br>
      <pre>docker push quay.io/<i>username/repo_name</i></pre>
    </div>
    <br>

    <h3>Granting and managing permissions to users <span class="label label-info">Requires Admin Access</span></h3>
    <div class="container">
      <div class="description-overview">Quay allows a repository to be shared any number of users and to grant those users any level of permissions for a repository</div>

      <ul class="description-list">
        <li>Permissions for a repository can be granted and managed in the repository's admin interface
        <li><b>Adding a user:</b> Type that user's username in the "Add New User..." field, and select the user
        <li><b>Changing permissions:</b> A user's permissions (read, read/write or admin) can be changed by clicking the field to the right of the user
        <li><b>Removing a user:</b> A user can be removed from the list by clicking the <b>X</b> and then clicking <b>Delete</b>
      </ul>

    </div>
    <br>

    <h3>Using access tokens in place of users <span class="label label-info">Requires Admin Access</span></h3>
    <div class="container">
      <div class="description-overview">
        There are many circumstances where it makes sense to <b>not</b> use a user's username and password (deployment scripts, etc).
        To support this case, Quay allows the use of <b>access tokens</b> which can be created on a repository and have read and/or write
        permissions, without any passwords.
      </div>

      <ul class="description-list">
        <li>Tokens can be managed in the repository's admin interface
        <li><b>Adding a token:</b> Enter a user-readable description in the "New token description" field
        <li><b>Changing permissions:</b> A token's permissions (read or read/write) can be changed by clicking the field to the right of the token
        <li><b>Deleting a token:</b> A token can be deleted by clicking the <b>X</b> and then clicking <b>Delete</b>
        <li><b>Using a token:</b> To use the token, the following credentials can be used:
        <dl class="dl-horizontal">
          <dt>Username</dt><dd>$token</dd>
          <dt>Password</dt><dd>(token value can be found by clicking on the token)</dd>
          <dt>Email</dt><dd>This value is ignored, any value may be used.</dd>
        </dl>
      </ul>

    </div>
    <br>

    <h3>Signing into Quay <span class="label label-default">Optional</span></h3>
    <div class="container">
      If you have never pushed a repository to Quay and wish to pull a <b>private</b> repository, you can sign into Quay by running the following command:
      <br><br>
      <pre>docker login quay.io</pre>
    </div>
  </div>
</div>
