open source contributors TOC update (#5422)
* open source contributors TOC update Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com> * added Kitematic for TOC symmetry Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com> * removed old Kitematic example Signed-off-by: Victoria Bialas <vicky.bialas@gmail.com> * Update toc.yaml
|
@ -467,83 +467,17 @@ guides:
|
|||
|
||||
- sectiontitle: Open source at Docker
|
||||
section:
|
||||
- path: /opensource/code/
|
||||
title: Quickstart contribution
|
||||
- sectiontitle: Set up for Docker development
|
||||
section:
|
||||
- path: /opensource/project/who-written-for/
|
||||
title: README first
|
||||
- path: /opensource/project/software-required/
|
||||
title: Get the required software
|
||||
- path: /opensource/project/software-req-win/
|
||||
title: Set up for development on Windows
|
||||
- path: /opensource/project/set-up-git/
|
||||
title: Configure Git for contributing
|
||||
- path: /opensource/project/set-up-dev-env/
|
||||
title: Work with a development container
|
||||
- path: /opensource/project/test-and-docs/
|
||||
title: Run tests and test documentation
|
||||
- sectiontitle: Contribution workflow
|
||||
section:
|
||||
- path: /opensource/workflow/make-a-contribution/
|
||||
title: Understand how to contribute
|
||||
- path: /opensource/workflow/find-an-issue/
|
||||
title: Find and claim an issue
|
||||
- path: /opensource/workflow/work-issue/
|
||||
title: Work on your issue
|
||||
- path: /opensource/workflow/create-pr/
|
||||
title: Create a pull request (PR)
|
||||
- path: /opensource/workflow/review-pr/
|
||||
title: Participate in the PR review
|
||||
- path: /opensource/workflow/advanced-contributing/
|
||||
title: Advanced contributing
|
||||
- path: /opensource/workflow/coding-style/
|
||||
title: Coding style checklist
|
||||
- sectiontitle: Other ways to contribute
|
||||
section:
|
||||
- path: /opensource/ways/meetups/
|
||||
title: Organize a Docker meetup
|
||||
- path: /opensource/ways/issues/
|
||||
title: Organize our issues
|
||||
- path: /opensource/ways/community/
|
||||
title: Support the community
|
||||
- path: /opensource/ways/test/
|
||||
title: Testing contributions
|
||||
- sectiontitle: Contribute to Kitematic
|
||||
section:
|
||||
- path: /opensource/kitematic/get_started/
|
||||
title: Get started
|
||||
- path: /opensource/kitematic/find_issue/
|
||||
title: Find an issue
|
||||
- path: /opensource/kitematic/set_up_dev/
|
||||
title: Set up for Kitematic development
|
||||
- path: /opensource/kitematic/work_issue/
|
||||
title: Develop in Kitematic (work on an issue)
|
||||
- path: /opensource/kitematic/create_pr/
|
||||
title: Create a pull request (PR)
|
||||
- path: /opensource/kitematic/next_steps/
|
||||
title: Where to learn more
|
||||
- sectiontitle: Governance
|
||||
section:
|
||||
- path: /opensource/governance/dgab-info/
|
||||
title: Docker governance advisory board
|
||||
- path: /opensource/governance/board-profiles/
|
||||
title: Board member profiles
|
||||
- path: /opensource/governance/conduct-code/
|
||||
title: Code of conduct
|
||||
- path: /opensource/FAQ/
|
||||
title: FAQ for contributors
|
||||
- path: /opensource/get-help/
|
||||
title: Where to chat or get help
|
||||
- path: /opensource/doc-style/
|
||||
title: Style guide for Docker documentation
|
||||
- path: /opensource/
|
||||
title: Contribute to documentation
|
||||
- path: /opensource/ways/
|
||||
title: Other ways to contribute
|
||||
|
||||
- sectiontitle:
|
||||
- sectiontitle: Documentation archive
|
||||
section:
|
||||
- path: /docsarchive/
|
||||
title: View the docs archives
|
||||
- title: Docs hackathon results
|
||||
path: /hackathon/
|
||||
- path: /hackathon/
|
||||
title: Docs hackathon results
|
||||
|
||||
reference:
|
||||
- sectiontitle: File formats
|
||||
|
|
|
@ -107,12 +107,3 @@ information you are looking for on the GitHub repository.
|
|||
## Looking for Moby?
|
||||
|
||||
{% include content/moby.md %}
|
||||
|
||||
## Legacy fun and practice
|
||||
|
||||
For practice with GitHub and contributing to a codebase, read through
|
||||
[Contribute to Kitematic](/opensource/kitematic/index.md) which incorporates the
|
||||
kind of walkthrough we originally provided as an open source contributor guide
|
||||
here. See also, the [Kitematic
|
||||
README](https://github.com/docker/kitematic/blob/master/README.md), and the
|
||||
[Kitematic user guide](/kitematic/userguide.md).
|
||||
|
|
|
@ -1,56 +0,0 @@
|
|||
---
|
||||
description: Explains how to create a pull request for change or new feature
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, development, contribute, pull request, review, workflow, beginner, squash, commit
|
||||
title: Create a pull request (PR)
|
||||
---
|
||||
|
||||
Make sure you follow the [rebase
|
||||
guidelines](/opensource/workflow/create-pr/#rebase-your-branch) before you make
|
||||
a pull request. Rebasing helps verify that your commit is clean, and allows for
|
||||
an easier and faster merge of your code.
|
||||
|
||||
Once you've cleaned up your commits:
|
||||
|
||||
1. Push your code to your repository under the same name as your local branch (in the case of this example, 1191-branch).
|
||||
|
||||
$ git push origin 1191-branch:1191-branch
|
||||
|
||||
2. Open a web browser to your fork on GitHub.
|
||||
|
||||
You should see the latest activity from your branch.
|
||||
|
||||
3. Click **Compare & pull request**.
|
||||
|
||||
The system displays the pull request dialog.
|
||||
|
||||

|
||||
|
||||
The pull request compares your changes to the `master` branch on the
|
||||
`kitematic/kitematic` repository.
|
||||
|
||||
4. Edit the pull request description and add a reference to the issue you are fixing.
|
||||
|
||||
GitHub helps you out by searching for the issue as you type.
|
||||
|
||||

|
||||
|
||||
5. Scroll down and verify the PR contains the commits and changes you expect.
|
||||
|
||||
For example, is the file count correct? Are the changes in the files what
|
||||
you expect?
|
||||
|
||||

|
||||
|
||||
6. Click **Create pull request**.
|
||||
|
||||
The system creates the request and opens it for you in the `kitematic/kitematic`
|
||||
repository.
|
||||
|
||||

|
||||
|
||||
|
||||
## Where to go next
|
||||
|
||||
Congratulations! You've created your first pull request to Kitematic!
|
||||
|
||||
The next step in this process is to participate in your PR's review. To learn more, and try another development exercise, see [where to learn more](next_steps.md).
|
|
@ -1,47 +0,0 @@
|
|||
---
|
||||
description: Explains how to find a Kitematic issue
|
||||
keywords: Kitematic, open source, contribute, contributor, tour
|
||||
title: Find an issue on GitHub
|
||||
---
|
||||
|
||||
Currently, the Kitematic GUI shows the name of a selected container, but not the
|
||||
ID. The tour shows you how to improve the GUI by adding the container ID to the
|
||||
display items, and integrate the updates into the codebase.
|
||||
|
||||
To find and claim an issue you want to work on:
|
||||
|
||||
1. Go to the [Kitematic repository](https://github.com/docker/kitematic){: target="_blank" class="_"}.
|
||||
|
||||
2. Click the **Issues** link.
|
||||
|
||||
A list of the open issues appears.
|
||||
|
||||

|
||||
|
||||
3. From the "Labels" drop-down, select <strong class="gh-label beginner">exp/beginner</strong>.
|
||||
|
||||
The system filters to show only open <strong class="gh-label beginner">exp/beginner</strong> issues.
|
||||
|
||||
4. Open an issue that interests you.
|
||||
|
||||
The comments on the issues describe the problem and can provide information for a potential solution.
|
||||
|
||||
For this exercise we will select the issue [#1191 Missing container id](https://github.com/docker/kitematic/issues/1191){: target="_blank" class="_"}.
|
||||
|
||||
5. When you find an open issue that both interests you and is unclaimed, add a
|
||||
`#dibs` comment. Make sure that no other user has chosen to work on the issue.
|
||||
|
||||
The project does not permit external contributors to assign issues
|
||||
to themselves. Read the comments to find if a user claimed the issue
|
||||
by leaving a `#dibs` comment on the issue.
|
||||
|
||||
6. Make a note of the issue number; you will need it for later.
|
||||
|
||||
## Where to go next
|
||||
|
||||
Go to next section to learn [Set up your Kitematic development
|
||||
environment](set_up_dev.md).
|
||||
|
||||
(For more about working with open source issues, see [Contribute to the Moby
|
||||
project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md).{:
|
||||
target="_blank" class="_"}
|
|
@ -1,34 +0,0 @@
|
|||
---
|
||||
description: Overview of Kitematic development process
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, development
|
||||
title: Get started with your Kitematic contributions
|
||||
---
|
||||
|
||||
Kitematic is an open source project that simplifies the Docker experience. It
|
||||
automates Docker installation and setup, and provides an interactive graphical
|
||||
user interface (GUI) for working with containers. You can use Kitematic to create, run, and manage Docker containers, and find public images on Docker Hub.
|
||||
|
||||

|
||||
|
||||
See the [Kitematic user guide](/kitematic/userguide) to learn more about it from a user perspective.
|
||||
|
||||
## We welcome your contributions!
|
||||
|
||||
We'd like to see Kitematic evolve
|
||||
with community contributed add-ons, extensions, themes, plug-ins, and cool, new
|
||||
features.
|
||||
|
||||
## Start the developer tour
|
||||
|
||||
If you're new to working with Docker open source projects or new to
|
||||
the Kitematic codebase, this quick tour will help you get started. Follow along with these steps to set up your Kitematic development environment and practice working on an example issue.
|
||||
|
||||
1. [Find a Kitematic issue on GitHub and fork](find_issue.md)
|
||||
2. [Set up your Kitematic development environment and clone the repository](set_up_dev.md)
|
||||
3. [Develop in Kitematic (work on an issue)](work_issue.md)
|
||||
4. [Review your branch and create a pull request (PR)](create_pr.md)
|
||||
5. [Where to learn more](next_steps.md)
|
||||
|
||||
## Where to go next
|
||||
|
||||
[Find an issue on GitHub](find_issue.md) to get started.
|
Before Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 122 KiB |
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 114 KiB |
Before Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 167 KiB |
|
@ -1,12 +0,0 @@
|
|||
---
|
||||
description: Introduces Kitematic contribute topics and tour
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, issue, review
|
||||
title: Practice contribution workflow with Kitematic
|
||||
---
|
||||
|
||||
* [Get started](get_started.md)
|
||||
* [Find an issue on GitHub](find_issue.md)
|
||||
* [Set up for Kitematic development](set_up_dev.md)
|
||||
* [Develop in Kitematic (work on an issue)](work_issue.md)
|
||||
* [Review your branch and create a pull request (PR)](create_pr.md)
|
||||
* [Where to learn more](next_steps.md)
|
|
@ -1,30 +0,0 @@
|
|||
---
|
||||
description: Explains next steps after the tour
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, development, contribute
|
||||
title: Where to learn more
|
||||
---
|
||||
|
||||
You've just created your first pull request to Kitematic!
|
||||
|
||||
## Take the development challenge
|
||||
|
||||
Now that you’ve had some practice, try adding another feature to Kitematic on your own.
|
||||
|
||||
As you learned in the previous exercise, adding the container ID to the container **Settings** tab is fairly simple.
|
||||
|
||||
Let's provide another missing piece of information for Kitematic users:
|
||||
|
||||
"_When I look at an active container in Kitematic, I want to know what command the container is currently running_."
|
||||
|
||||

|
||||
|
||||
In a terminal window, users can get this by looking at running containers with: `docker ps`
|
||||
|
||||
As an exercise, implement the code changes needed to display the current container's running command. When you are ready to share the new mini feature, create a PR for it.
|
||||
|
||||
## Where to go next
|
||||
|
||||
- To learn more about contributing to open source projects, see
|
||||
[Contribute to the Moby project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md).
|
||||
|
||||
- To learn more about contributing to Docker product documentation, see the [README on docker/docker.github.io](https://github.com/docker/docker.github.io/blob/master/README.md)
|
|
@ -1,177 +0,0 @@
|
|||
---
|
||||
description: Explains how to find a Kitematic issue
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, development
|
||||
title: Set up for Kitematic development
|
||||
---
|
||||
|
||||
Kitematic is built on top of:
|
||||
|
||||
- [Electron](http://electron.atom.io/){: target="_blank" class="_"}
|
||||
- [Node.js](https://nodejs.org){: target="_blank" class="_"}
|
||||
- [React](https://facebook.github.io/react/){: target="_blank" class="_"} and [AltJS](http://alt.js.org/){: target="_blank" class="_"} (which follows the Flux pattern).
|
||||
|
||||
## Download and install NVM
|
||||
|
||||
To get started, you will need to install Node.js v4.2.1. Using Node Version Manager (NVM) makes the Node.js install easy.
|
||||
|
||||
### Windows:
|
||||
|
||||
1. Download the [latest release](https://github.com/coreybutler/nvm-windows/releases/){: target="_blank" class="_"}.
|
||||
|
||||
2. Follow the installer steps to get NVM installed. Please note, you need to
|
||||
uninstall any existing versions of node.js before installing NVM for Windows;
|
||||
the above installer link will have an uninstaller available.
|
||||
|
||||

|
||||
|
||||
### macOS/Linux:
|
||||
|
||||
1. Open a terminal window.
|
||||
|
||||
2. Copy and paste the following install script:
|
||||
|
||||
```
|
||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash
|
||||
```
|
||||
|
||||
3. To activate nvm, close the terminal window and re-open a new one.
|
||||
|
||||
(Alternatively, you can source nvm from your current shell with the command `. ~/.nvm/nvm.sh`.)
|
||||
|
||||
|
||||
|
||||
To learn more about working with NVM, see the [>macOS/Linux official nvm repo](https://github.com/creationix/nvm){: target="_blank" class="_"}, the [Windows official nvm repo](https://github.com/coreybutler/nvm-windows){: target="_blank" class="_"}, and [How To Install Node.js with NVM ON A VPS](ttps://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps){: target="_blank" class="_"}.
|
||||
|
||||
## Install Node.js
|
||||
|
||||
1. Install the proper Node.js version.
|
||||
|
||||
```
|
||||
$ nvm install v4.2.1
|
||||
```
|
||||
|
||||
2. Make this version the default.
|
||||
|
||||
```
|
||||
$ nvm alias default v4.2.1
|
||||
```
|
||||
|
||||
3. Run `node --version` to confirm that you are now using the proper Node.js version.
|
||||
|
||||
```
|
||||
$ node --version
|
||||
```
|
||||
|
||||
## Fork the master branch of Kitematic
|
||||
|
||||
To fork the master branch of Kitematic:
|
||||
|
||||
1. Go to the [docker/kitematic repository](https://github.com/docker/kitematic){: target="_blank" class="_"}.
|
||||
|
||||
2. Click **Fork** in the upper right corner of the GitHub interface.
|
||||
|
||||
GitHub forks the repository to your GitHub account. The original
|
||||
`docker/kitematic` repository becomes a new fork `YOUR_ACCOUNT/kitematic`
|
||||
under your account.
|
||||
|
||||
3. Copy your fork's clone URL from GitHub.
|
||||
|
||||
GitHub allows you to use HTTPS or SSH protocols for clones. You can use the `git` command line or clients like Subversion to clone a repository. This guide assumes you are using the HTTPS protocol and the `git` command line. If you are comfortable with SSH and some other tool, feel free to use that instead. You'll need to convert what you see in the guide to what is appropriate to your tool.
|
||||
|
||||
## Clone your repository locally and create a branch
|
||||
|
||||
To clone your repository and create a branch for the issue:
|
||||
|
||||
1. Open a terminal window on your local host and change to your home directory.
|
||||
|
||||
```
|
||||
$ cd ~
|
||||
```
|
||||
|
||||
In Windows, you'll work in your Docker Quickstart Terminal window instead of Powershell or a `cmd` window.
|
||||
|
||||
2. Create a directory for your new repository and change into that directory.
|
||||
|
||||
3. From the root of your repository, clone the fork to your local host.
|
||||
|
||||
```
|
||||
$ git clone https://github.com/YOUR_USERNAME/kitematic.git
|
||||
```
|
||||
|
||||
4. Create and checkout a branch for the issue you will be working on.
|
||||
|
||||
```
|
||||
$ git checkout -b 1191-branch
|
||||
```
|
||||
|
||||
As previously mentioned, issue [#1191](https://github.com/docker/kitematic/issues/1191)is set up as an example to use for this exercise.
|
||||
|
||||
## Set up your signature and upstream remote
|
||||
|
||||
You can set your signature globally or locally.
|
||||
|
||||
1. Set your `user.name` for the repository.
|
||||
|
||||
```
|
||||
$ git config --local user.name "FirstName LastName"
|
||||
```
|
||||
|
||||
2. Set your `user.email` for the repository.
|
||||
|
||||
```
|
||||
$ git config --local user.email "emailname@mycompany.com"
|
||||
```
|
||||
|
||||
3. Check the result in your `git` configuration.
|
||||
|
||||
```
|
||||
$ git config --local --list
|
||||
```
|
||||
|
||||
4. Set your local repository to track changes upstream, on the `kitematic` repository.
|
||||
|
||||
```
|
||||
$ git remote add upstream https://github.com/docker/kitematic.git
|
||||
```
|
||||
|
||||
## Install dependencies, start Kitematic, and verify your setup
|
||||
Your Node.js install includes npm for package management. You'll use it to install supporting packages and start the app.
|
||||
|
||||
1. Verify that the package manager is running and check the version (at the time of this writing, v2.14.7).
|
||||
|
||||
```
|
||||
$ npm --version
|
||||
```
|
||||
|
||||
2. Install the package dependencies.
|
||||
|
||||
```
|
||||
$ npm install
|
||||
```
|
||||
|
||||
3. From the root of your kitematic repository, use the package manager to start Kitematic and confirm everything went well.
|
||||
|
||||
```
|
||||
$ npm start
|
||||
```
|
||||
|
||||
All of the core files in Kitematic are in the `src` folder, which then
|
||||
follows the AltJS structure of:
|
||||
|
||||
```
|
||||
kitematic/
|
||||
|--src/
|
||||
|--actions/
|
||||
| |--MyActions.js
|
||||
|--stores/
|
||||
| |--MyStore.js
|
||||
|--components/
|
||||
| |--MyComponent.react.js
|
||||
```
|
||||
|
||||
The `components` folder is where the layout files are, the `stores` represent the application logic, and `actions` are the dispatcher for actions taken within the `components`.
|
||||
|
||||
## Where to go next
|
||||
|
||||
You are ready to start working on the issue. Go to [Develop in Kitematic (work
|
||||
on an issue)](work_issue.md).
|
|
@ -1,81 +0,0 @@
|
|||
---
|
||||
description: Explains how to find a Kitematic issue
|
||||
keywords: Kitematic, open source, contribute, contributor, tour, development
|
||||
title: Develop in Kitematic (work on an issue)
|
||||
---
|
||||
|
||||
For this tutorial, we will work on issue [https://github.com/docker/kitematic/issues/1191](https://github.com/docker/kitematic/issues/1191){: target="_blank" class="_"} which is a request to display the container ID in Kitematic for easy identification. (Currently, Kitematic shows the container name but not the ID.)
|
||||
|
||||
To do this, edit the container `General Settings` layout.
|
||||
|
||||
1. Open the project in your favorite editor - We recommend using [Atom](https://atom.io/){: target="_blank" class="_"} as it's a full featured editor with great [ES lint](http://eslint.org/){: target="_blank" class="_"} support to keep your code organized.
|
||||
|
||||
2. Open the `ContainerSettingsGeneral.react.js` file which is found under the `src/components/` folder and look for the following piece of code, which is in fact the layout (like HTML in the browser) circa line ~200:
|
||||
|
||||
```
|
||||
return (
|
||||
<div className="settings-panel">
|
||||
...
|
||||
```
|
||||
|
||||
|
||||
3. Above this code we will create a javascript variable that will allow us to display our container ID:
|
||||
|
||||
```
|
||||
let shortId = (
|
||||
<div className="settings-section">
|
||||
<h3>Container Id</h3>
|
||||
<div className="container-name">
|
||||
<input id="input-container-name" type="text" className="line" placeholder="Container Id" defaultValue={this.props.container.Id.substr(0, 12)} readOnly></input>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
```
|
||||
|
||||
This snippet has been saved as a [GitHub gist](https://gist.github.com/FrenchBen/0f514e7b3c584e8d46b5){: target="_blank" class="_"}.
|
||||
|
||||
4. We then need to add the variable to the rendered view, by adding it below the `{rename}` tag. The new render code should look something like:
|
||||
|
||||
```
|
||||
return (
|
||||
<div className="settings-panel">
|
||||
{rename}
|
||||
{shortId}
|
||||
```
|
||||
|
||||
At this point, the updated code should look similar to this:
|
||||
|
||||

|
||||
|
||||
5. Save the code changes, and restart Kitematic.
|
||||
|
||||
```
|
||||
$ npm start
|
||||
```
|
||||
|
||||
Now, the container ID should show on the General Settings tab, along with the container name.
|
||||
|
||||

|
||||
|
||||
>**Note**: The container ID in Kitematic matches the ID shown as output to the `docker ps` command.*
|
||||
|
||||
6. You can close the Kitematic application now, and kill the running process in the terminal via Ctrl+C.
|
||||
|
||||
7. Stage your changes by adding them.
|
||||
|
||||
```
|
||||
$ git add src/components/ContainerSettingsGeneral.react.js
|
||||
```
|
||||
|
||||
8. Commit your code changes with a comment that explains what this fixes or closes.
|
||||
|
||||
```
|
||||
$ git commit -s -m "added container ID to show on settings tab, fixes issue #1191"
|
||||
```
|
||||
|
||||
(See the general guidelines on coding style in [Contribute to the Moby
|
||||
project](https://github.com/moby/moby/blob/master/CONTRIBUTING.md){: target="_blank" class="_"}.
|
||||
|
||||
## Where to go next
|
||||
|
||||
At this point, you are ready to [Review your branch and create a pull request](create_pr.md) to merge your new feature into Kitematic.
|