Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

copilot: restructure content, editorial improvements #21107

Merged
merged 10 commits into from
Nov 7, 2024
5 changes: 5 additions & 0 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,11 @@ area/accounts:
- any-glob-to-any-file:
- content/manuals/accounts/**

area/copilot:
- changed-files:
- any-glob-to-any-file:
- content/manuals/copilot/**

hugo:
- changed-files:
- any-glob-to-any-file:
Expand Down
68 changes: 68 additions & 0 deletions content/manuals/copilot/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
---
title: Docker for GitHub Copilot
params:
sidebar:
badge:
color: violet
text: EA
weight: 100
description: |
Learn how to streamline Docker-related tasks with the Docker for GitHub
Copilot extension. This integration helps you generate Docker assets, analyze
vulnerabilities, and automate containerization through GitHub Copilot Chat in
various development environments.
keywords: Docker, GitHub Copilot, extension, Visual Studio Code, chat, ai, containerization
---

{{% restricted title="Early Access" %}}
The Docker for GitHub Copilot extension is an [early access](/release-lifecycle#early-access-ea) product.
{{% /restricted %}}

The [Docker for GitHub Copilot](https://github.com/marketplace/docker-for-github-copilot)
extension integrates Docker's capabilities with GitHub Copilot, providing
assistance with containerizing applications, generating Docker assets, and
analyzing project vulnerabilities. This extension helps you streamline
Docker-related tasks wherever GitHub Copilot Chat is available.

## Key features

Key features of the Docker for GitHub Copilot extension include:

- Ask questions and receive responses about containerization in any context
where GitHub Copilot Chat is available, such as on github.com and in Visual Studio Code.
- Automatically generate Dockerfiles, Docker Compose files, and `.dockerignore`
files for a project.
- Open pull requests with generated Docker assets directly from the chat
interface.
- Get summaries of project vulnerabilities from [Docker
Scout](/manuals/scout/_index.md) and receive next steps via the CLI.

## Data Privacy

The Docker agent is trained exclusively on Docker's documentation and tools to
assist with containerization and related tasks. It does not have access to your
project's data outside the context of the questions you ask.

When using the Docker Extension for GitHub Copilot, GitHub Copilot may include
a reference to the currently open file in its request if authorized by the
user. The Docker agent can read the file to provide context-aware responses.

If the agent is requested to check for vulnerabilities or generate
Docker-related assets, it will clone the referenced repository into in-memory
storage to perform the necessary actions.

Source code or project metadata is never persistently stored. Questions and
answers are retained for analytics and troubleshooting. Data processed by the
Docker agent is never shared with third parties.

## Supported languages
dvdksn marked this conversation as resolved.
Show resolved Hide resolved

The Docker Extension for GitHub Copilot supports the following programming
languages for tasks involving containerizing a project from scratch:

- Go
- Java
- JavaScript
- Python
- Rust
- TypeScript
Binary file removed content/manuals/copilot/copilot-action-prompt.png
Binary file not shown.
63 changes: 63 additions & 0 deletions content/manuals/copilot/examples.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
title: Example prompts for the Docker agent
linkTitle: Example prompts
description: |
Discover example prompts to interact with the Docker agent and learn how to
automate tasks like Dockerizing projects or opening pull requests.
weight: 30
---

{{% restricted title="Early Access" %}}
The Docker for GitHub Copilot extension is an [early access](/release-lifecycle#early-access-ea) product.
{{% /restricted %}}

## Use cases

Here are some examples of the types of questions you can ask the Docker agent:

### Ask general Docker questions

You can ask general question about Docker. For example:

- `@docker what is a Dockerfile?`
- `@docker how do I build a Docker image?`
- `@docker how do I run a Docker container?`
- `@docker what does 'docker buildx imagetools inspect' do?`

### Get help containerizing your project

You can ask the agent to help you containerize your existing project:

- `@docker can you help create a compose file for this project?`
- `@docker can you create a Dockerfile for this project?`

#### Opening pull requests

The Docker agent will analyze your project, generate the necessary files, and,
if applicable, offer to raise a pull request with the necessary Docker assets.

Automatically opening pull requests against your repositories is only available
when the agent generates new Docker assets.

### Analyze a project for vulnerabilities

The agent can help you improve your security posture with [Docker
Scout](/manuals/scout/_index.md):

- `@docker can you help me find vulnerabilities in my project?`
- `@docker does my project contain any insecure dependencies?`

The agent will run use Docker Scout to analyze your project's dependencies, and
report whether you're vulnerable to any [known CVEs](/manuals/scout/deep-dive/advisory-db-sources.md).

![Copilot vulnerabilities report](images/copilot-vuln-report.png?w=500px&border=1)

## Limitations

- The agent is currently not able to access specific files in your repository,
such as the currently-opened file in your editor, or if you pass a file
reference with your message in the chat message.

## Feedback

For issues or feedback, visit the [GitHub feedback repository](https://github.com/docker/copilot-issues).
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
197 changes: 0 additions & 197 deletions content/manuals/copilot/index.md

This file was deleted.

44 changes: 44 additions & 0 deletions content/manuals/copilot/install.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
title: Install the extension for your organization
linkTitle: Install
description: |
Learn how to install the Docker for GitHub Copilot extension for your
organization and manage relevant policies to enable seamless integration.
weight: 10
---

{{% restricted title="Early Access" %}}
The Docker for GitHub Copilot extension is an [early access](/release-lifecycle#early-access-ea) product.
{{% /restricted %}}

To use the Docker for GitHub copilot extension, you first need to
[install](#install) the extension for your organization, and
[manage](#manage-policies) policies for Copilot in your organization.

## Prerequisites

Before you start, ensure that you're signed in to your GitHub account on
github.com.

## Install

To install the Docker for GitHub Copilot extension for your GitHub organization:

1. Go to the [Docker for GitHub Copilot](https://github.com/marketplace/docker-for-github-copilot)
app in the GitHub Marketplace.

2. Select the **Add** button at the top of the page.

3. Under **Pricing and setup**, select the organization that you want to
install the extension for and select **Install it for free**.

4. Select the **Complete order and begin installation** button.

5. Select the repositories where you want to use the Docker Extension for
GitHub Copilot and finish with **Install**.

## Manage policies

If you're enabling the extension for a GitHub organization, you also
need to enable the Copilot Extensions policy. For instructions, see
[Setting a policy for GitHub Copilot Extensions in your organization](https://docs.github.com/en/copilot/managing-copilot/managing-github-copilot-in-your-organization/setting-policies-for-copilot-in-your-organization/managing-policies-for-copilot-in-your-organization#setting-a-policy-for-github-copilot-extensions-in-your-organization).
Loading