Skip to content

Commit

Permalink
edits
Browse files Browse the repository at this point in the history
  • Loading branch information
aevesdocker committed Feb 25, 2025
1 parent c0088ed commit b23cfe8
Show file tree
Hide file tree
Showing 7 changed files with 149 additions and 45 deletions.
4 changes: 2 additions & 2 deletions content/manuals/projects/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ A project organizes your code and Docker artifacts into a single object. These a
### Key features and benefits

- One-click project setup: Open a local folder or clone a Git repository and run your project instantly.

Check warning on line 47 in content/manuals/projects/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.RecommendedWords] Consider using 'select' instead of 'click' Raw Output: {"message": "[Docker.RecommendedWords] Consider using 'select' instead of 'click'", "location": {"path": "content/manuals/projects/_index.md", "range": {"start": {"line": 47, "column": 8}}}, "severity": "INFO"}
- Minimal Docker expertise required: Ideal for both beginners and experienced engineers.
- Minimal Docker expertise required: Ideal for both beginners and experienced developers.
- Custom `run` commands for your projects: Define and store preconfigured `run` commands that are equivalent to running `docker compose up`.

Check failure on line 49 in content/manuals/projects/_index.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Vale.Spelling] Did you really mean 'preconfigured'? Raw Output: {"message": "[Vale.Spelling] Did you really mean 'preconfigured'?", "location": {"path": "content/manuals/projects/_index.md", "range": {"start": {"line": 49, "column": 62}}}, "severity": "ERROR"}
- Local & remote projects: Work on projects locally or sync artifacts to the cloud for cross-device access and easy collaboration.
- Local and remote projects: Work on projects locally or sync artifacts to the cloud for cross-device access and easy collaboration.

{{< grid >}}
24 changes: 16 additions & 8 deletions content/manuals/projects/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,41 @@ keywords: docker projects
weight: 10
---

Docker Projects requires a Compose file (docker-compose.yml) to define your application's services, networks, and configurations. When you open a project, Docker Projects automatically detects the Compose file, allowing you to configure and run services with pre-set commands.
Docker Projects requires a Compose file (`compose.yml`) to define your application's services, networks, and configurations. When you open a project, Docker Projects automatically detects the Compose file, allowing you to configure and run services with pre-set commands.

By integrating with Docker Compose, Docker Projects ensures a consistent, easy-to-manage workflow for both individual developers and teams. Whether you're starting a new project, configuring it, or collaborating with a team, Docker Projects keeps the process simple.

Docker Projects works as follows:

1. Create or open a project. You can:

- Open a local project: Select a folder on your machine that contains your project code.
- Clone a Git repository:Provide a repository URL and clone the project into a local directory.
- Clone a Git repository: Provide a repository URL and clone the project into a local directory.

Once a project is opened, Docker Desktop detects the Compose file and prepares the project for execution.
Once a project is opened, Docker Desktop detects the Compose file and prepares the project for execution.

2. Configure and run your project with pre-configured commands. These commands:

- Work like `docker compose up`, launching services based on the Compose file.
- Can be customized with additional flags, multiple Compose files, and environment variables.
- Allow pre-run tasks, such as executing scripts before starting the services.
- Enable pre-run tasks, such as executing scripts before starting the services.

All of which means you can fine-tune your configurations without manually running complex CLI commands.
All of which means you can fine-tune your configurations without manually running complex CLI commands.

3. Collaborate and share with teams. For projects linked to a Git repository, Docker Projects stores artifacts in the cloud, enabling easy collaboration:

- Work across devices: Open a project from any machine and instantly access stored configurations.
- Share configurations: Team members can access predefined run commands, reducing setup time.
- Share configurations: Team members can access pre-defined run commands, reducing setup time.

Collaboration is seamless—new developers can join a team, open a project, and start working without complex setup steps.
Collaboration is easy — new developers can join a team, open a project, and start working without complex setup steps.

4. Manage and iterate. Once a project is up and running, Docker Projects makes it easy to monitor, update, and troubleshoot:

- View logs to debug issues and track service activity.
- Edit configurations and run commands as requirements change.
- Edit configurations and run commands as requirements change.

## What's next?

- [Learn how to open a new project](/manuals/projects/new.md)
- [Explore common FAQs](/manuals/projects/faq.md)

21 changes: 14 additions & 7 deletions content/manuals/projects/edit.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,32 +9,39 @@ weight: 40

1. Open an existing project and ensure that it is stopped.

2. From the command dopdown menu, select **New run command**.
2. From the command drop-down menu, select **New run command**.

3. Specify the following information for the run command:

> [!TIP]
>
> While configuring your run command, you can view the equivalent docker compose up command in the Run command section on the configuration page. You can also use this command to run your project from the command line. You can refer to the docker compose up reference documentation to learn more about the options you configure.
> While configuring your run command, you can view the equivalent `docker compose up` command in the **Run command** section on the configuration page. You can also use this command to run your project from the command line. You can refer to the [`docker compose up` reference documentation](/reference/cli/docker/compose/up.md) to learn more about the options you configure.
- **Name**: Specify a name to identify the run command.
- **Compose files**: Select one or more Compose files from your project.
- **Flags**: Optionally, select one or more flags for your run command.

> [!TIP]
>
> While the --env-file flag isn't currently supported, you can specify environment variables in your Compose file, or use the Tasks option to run a script that sets your environment variables.
> While the `--env-file` flag isn't currently supported, you can specify environment variables in your Compose file, or use the **Tasks** option to run a script that sets your environment variables.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by unchecking it.
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named set-vars.sh, you can specify bash set-vars.sh. Or, on Windows to run a script with cmd.exe named set-vars.bat, specify set-vars.bat. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by deselecing the checkbox.

Check failure on line 28 in content/manuals/projects/edit.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Vale.Spelling] Did you really mean 'deselecing'? Raw Output: {"message": "[Vale.Spelling] Did you really mean 'deselecing'?", "location": {"path": "content/manuals/projects/edit.md", "range": {"start": {"line": 28, "column": 214}}}, "severity": "ERROR"}
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named `set-vars.sh`, you can specify bash `set-vars.sh`. Or, on Windows to run a script with `cmd.exe` named `set-vars.bat`, specify `set-vars.bat`. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.

4. Select **Save changes**.

You can now select the new run command from the dropdown menu after opening the project.
You can now select the new run command from the drop-down menu after opening the project.

## Edit a run command

1. Open an existing project and ensure that it is stopped.
2. Select the run command you want to change from the command dropdown menu.

2. Select the run command you want to change from the command drop-down menu.

3. Select the **Edit** icon next to the **Run** button.

4. Specify your changes and then select **Save changes**.

## What's next?

- [Manage your projects](/manuals/projects/manage.md)
10 changes: 6 additions & 4 deletions content/manuals/projects/manage.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ weight: 50

1. Open a new or existing project.

2. Select a run command from the dropdown menu.
2. Select a run command from the drop-down menu.

3. Select the **Run** button for the project or the **Play** button next to the service you'd like to run.

Expand All @@ -21,14 +21,16 @@ weight: 50

## Remove a project from Docker Desktop

If a project is associated with a Git repository, you can remove it from Docker Desktop. When a project is deleted, you can no longer run the project from the **Projects** view, but its run configuration still exists remotely in the cloud.
If a project is associated with a Git repository, you can remove it from Docker Desktop. When a project is deleted, you can no longer run the project from the **Projects** view, but its run configuration still exists remotely in the cloud.

This means that you can later [open the project](/manuals/projects/open.md#open-an-existing-remote-project) and associate it with the remote run configuration without having to specify the run command again.
None of your local code is deleted when removing a project from Docker Desktop.

To remove a project from Docker Desktop:
Sign in to Docker Desktop, and go to Projects.
Select the options menu () next to the project, and then select Remove from Docker Desktop.

1. Sign in to Docker Desktop, and go to **Projects**.

2. Select the **More actions** menu next to the project, and then select **Remove from Docker Desktop**.

## Delete a project

Expand Down
44 changes: 31 additions & 13 deletions content/manuals/projects/open.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,13 @@ keywords: Docker, projects, docker deskotp, containerization, open, remote, loca
weight: 20
---

> [!NOTE]
>
> In order to use Docker Projects, make sure you have enabled the **Access experimental features** setting on the **Features in development** tab.
## New projects

When you open a new or remote project, Docker Projects stores all your code and Docker artifacts locally. In order to run a project, it must be stored locally. In the Projects page in Docker Desktop, local projects display the local path under the project.
In order to run a new project, it must be stored locally. In the **Projects** view in Docker Desktop, local projects display the local path under the project.

### Open a new local project

Expand All @@ -17,30 +21,34 @@ To open a new project:

1. Sign in to Docker Desktop, and go to **Projects**.

2. Select one **Open a local folder**. This lets you select a local folder that contains at least your project’s code and a Compose file.
2. Select **Open a local folder**. This lets you select a local folder that contains your project’s code and a Compose file.

> [!NOTE]
>
> A local folder can also be the folder of a Git repository that you have already cloned.
3. Configure your project by giving it a name and setting the owner, then select **Next**.

> [!NOTE]
>
> If you are part of a Docker organization you have the option to [share your project](share.md) with the organization.
4. Specify how to run your project by selecting **New run command**:

> [!TIP]
>
> While configuring your run command, you can view the equivalent docker compose up command in the Run command section on the configuration page. You can also use this command to run your project from the command line. You can refer to the docker compose up reference documentation to learn more about the options you configure.
> While configuring your run command, you can view the equivalent `docker compose up` command in the **Run command** section on the configuration page. You can also use this command to run your project from the command line. You can refer to the [`docker compose up` reference documentation](/reference/cli/docker/compose/up.md) to learn more about the options you configure.
- **Name**: Specify a name to identify the run command.
- **Compose files**: Select one or more Compose files from your project.
- **Flags**: Optionally, select one or more flags for your run command.

> [!TIP]
>
> While the --env-file flag isn't currently supported, you can specify environment variables in your Compose file, or use the Tasks option to run a script that sets your environment variables.
> While the `--env-file` flag isn't currently supported, you can specify environment variables in your Compose file, or use the **Tasks** option to run a script that sets your environment variables.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by unchecking it.
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named set-vars.sh, you can specify bash set-vars.sh. Or, on Windows to run a script with cmd.exe named set-vars.bat, specify set-vars.bat. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by deselecting the checkbox.
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named `set-vars.sh`, you can specify bash `set-vars.sh`. Or, on Windows to run a script with `cmd.exe` named `set-vars.bat`, specify `set-vars.bat`. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.

5. Select **Save changes**.

Expand All @@ -50,7 +58,7 @@ Your project is now ready to run.

The following steps prompt you to clone the Git repository for your project.

If you have already cloned the repository outside of Docker Projects, then you can open the project as a new project and Docker Projects will automatically detect and link the repository.
If you have already cloned the repository outside of Docker Projects, then you can open the project as a new project and Docker Projects will automatically detect and link the repository.

To clone and open a remote project:

Expand All @@ -64,22 +72,26 @@ To clone and open a remote project:

5. Configure your project by giving it a name and setting the owner, then select **Next**.

> [!NOTE]
>
> If you are part of a Docker organization you have the option to [share your project](share.md) with the organization.
6. Specify how to run your project by selecting **New run command**:

> [!TIP]
>
> While configuring your run command, you can view the equivalent docker compose up command in the Run command section on the configuration page. You can also use this command to run your project from the command line. You can refer to the docker compose up reference documentation to learn more about the options you configure.
> While configuring your run command, you can view the equivalent `docker compose up` command in the **Run command** section on the configuration page. You can also use this command to run your project from the command line. You can refer to the [`docker compose up` reference documentation](/reference/cli/docker/compose/up.md) to learn more about the options you configure.
- **Name**: Specify a name to identify the run command.
- **Compose files**: Select one or more Compose files from your project.
- **Flags**: Optionally, select one or more flags for your run command.

> [!TIP]
>
> While the --env-file flag isn't currently supported, you can specify environment variables in your Compose file, or use the Tasks option to run a script that sets your environment variables.
> While the `--env-file` flag isn't currently supported, you can specify environment variables in your Compose file, or use the **Tasks** option to run a script that sets your environment variables.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by unchecking it.
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named set-vars.sh, you can specify bash set-vars.sh. Or, on Windows to run a script with cmd.exe named set-vars.bat, specify set-vars.bat. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.
- **Services that will run**: After selecting one or more Compose files, the services defined in the files will appear here. If there is more than one service, you can optionally choose to not run a service by deselecing the checkbox.

Check failure on line 93 in content/manuals/projects/open.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Vale.Spelling] Did you really mean 'deselecing'? Raw Output: {"message": "[Vale.Spelling] Did you really mean 'deselecing'?", "location": {"path": "content/manuals/projects/open.md", "range": {"start": {"line": 93, "column": 214}}}, "severity": "ERROR"}
- **Tasks (Advanced options)**: Optionally specify a command to run before running the project. For example, if you want to run a bash script from the project directory named `set-vars.sh`, you can specify bash `set-vars.sh`. Or, on Windows to run a script with `cmd.exe` named `set-vars.bat`, specify `set-vars.bat`. Note that a task can access environment variables from your terminal profile, but it can't access local shell functions nor aliases.

7. Select **Save changes**.

Expand All @@ -93,11 +105,17 @@ To clone and open a remote project:

### Open an existing remote project

In the Projects page in Docker Desktop, existing remote projects display No local copy under the project.
In the **Projects** view in Docker Desktop, existing remote projects display **No local copy** under the project.

You’ll see remote projects when you remove a project from Docker Desktop, or access Docker Desktop from a new device after creating a project associated with a Git repository.
You’ll see remote projects when you are new to the team and are accessing a shared project, remove a project from Docker Desktop, or access Docker Desktop from a new device after creating a project associated with a Git repository.

Check warning on line 110 in content/manuals/projects/open.md

View workflow job for this annotation

GitHub Actions / vale

[vale] reported by reviewdog 🐶 [Docker.SentenceLength] Write short, concise sentences. (<=40 words) Raw Output: {"message": "[Docker.SentenceLength] Write short, concise sentences. (\u003c=40 words)", "location": {"path": "content/manuals/projects/open.md", "range": {"start": {"line": 110, "column": 1}}}, "severity": "WARNING"}

To open an existing remote project, you can choose between:

- Cloning the project into a local destination.
- Linking to an existing folder where the project has already been cloned

## What's next?

- [View your project](/manuals/projects/view.md)
- [Add or edit your run commands](/manuals/projects/edit.md)
- [Manage your projects](/manuals/projects/manage.md)
20 changes: 19 additions & 1 deletion content/manuals/projects/share.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,22 @@ keywords: TBD
weight: 60
---

Incoming..
Docker Projects makes it easy for teams to share, manage, and collaborate on containerized applications.

Collaboration is managed by associating a project with a Docker organization, and leveraging cloud-stored configurations. This allows team members to easily access and work on the same project without needing extensive manual setup.

Once a project is associated with an organization, other team members can access it by:

1. Signing into Docker Desktop and navigating to **Projects**.

2. Selecting the correct organization tab.

3. Selecting the project from the list of shared projects.

4. Cloning the project into a local destination.

## What's next

- [View your project](/manuals/projects/view.md)
- [Add or edit your run commands](/manuals/projects/edit.md)
- [Manage your projects](/manuals/projects/manage.md)
Loading

0 comments on commit b23cfe8

Please sign in to comment.