errose28 commented on code in PR #126: URL: https://github.com/apache/ozone-site/pull/126#discussion_r1974400290
########## docs/08-developer-guide/01-build/03-docker-images.md: ########## @@ -2,10 +2,126 @@ sidebar_label: Docker Images --- +<!-- cspell:word testkrb5 --> + # Building Ozone Docker Images -**TODO:** File a subtask under [HDDS-9861](https://issues.apache.org/jira/browse/HDDS-9861) and complete this page or section. +This page provides an overview of the Docker images maintained by the Apache Ozone community for developing and testing Ozone. It also describes the workflow to be followed when making changes to one of these images. + +## Images + +### Base Image (without any Ozone) + +[ozone-runner](https://github.com/apache/ozone-docker-runner) contains tools for running and testing Ozone, but does not include any Ozone artifacts. + +Developers and CI workflows rely on it heavily to run/test custom Ozone builds (using the local build via bind-mount). It also serves as the base image for `apache/ozone` (see next section). + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone-runner) and [GitHub](https://github.com/apache/ozone-docker-runner/pkgs/container/ozone-runner). + +### Image with Specific Version of Ozone + +[ozone](https://github.com/apache/ozone-docker) is built on top of `ozone-runner`, adding the binaries built for official Ozone releases. + +These are used for testing compatibility of various Ozone versions, and upgrade from one version to another. May also be useful for running quick experiments with specific version of Ozone, without the need to download or rebuild it. + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone) and [GitHub](https://github.com/apache/ozone-docker/pkgs/container/ozone). + +### Kerberos KDC for Testing + +[ozone-testkrb5](https://github.com/apache/ozone-docker-testkrb5) is used as KDC in tests where Kerberos is enabled. + +Published only to [GitHub](https://github.com/apache/ozone-docker-testkrb5/pkgs/container/ozone-testkrb5). + +## Development + +### Common Flow Review Comment: I think this should already be covered by the contributing guides for each repo. In that case we can take the building and tagging steps for each image below and move them into the sections for each image above. I think it's easier to follow if all the info for each image is in one section for that image. ########## docs/08-developer-guide/01-build/03-docker-images.md: ########## @@ -2,10 +2,126 @@ sidebar_label: Docker Images --- +<!-- cspell:word testkrb5 --> + # Building Ozone Docker Images -**TODO:** File a subtask under [HDDS-9861](https://issues.apache.org/jira/browse/HDDS-9861) and complete this page or section. +This page provides an overview of the Docker images maintained by the Apache Ozone community for developing and testing Ozone. It also describes the workflow to be followed when making changes to one of these images. + +## Images + +### Base Image (without any Ozone) Review Comment: IMO we should use the image names as the headers and explain them in the paragraph, since we usually refer to them by name. Right now the headers are sort of explanations as well, and the actual image name is at the beginning of the paragraph. ########## docs/08-developer-guide/01-build/03-docker-images.md: ########## @@ -2,10 +2,126 @@ sidebar_label: Docker Images --- +<!-- cspell:word testkrb5 --> + # Building Ozone Docker Images -**TODO:** File a subtask under [HDDS-9861](https://issues.apache.org/jira/browse/HDDS-9861) and complete this page or section. +This page provides an overview of the Docker images maintained by the Apache Ozone community for developing and testing Ozone. It also describes the workflow to be followed when making changes to one of these images. + +## Images + +### Base Image (without any Ozone) + +[ozone-runner](https://github.com/apache/ozone-docker-runner) contains tools for running and testing Ozone, but does not include any Ozone artifacts. + +Developers and CI workflows rely on it heavily to run/test custom Ozone builds (using the local build via bind-mount). It also serves as the base image for `apache/ozone` (see next section). + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone-runner) and [GitHub](https://github.com/apache/ozone-docker-runner/pkgs/container/ozone-runner). + +### Image with Specific Version of Ozone + +[ozone](https://github.com/apache/ozone-docker) is built on top of `ozone-runner`, adding the binaries built for official Ozone releases. + +These are used for testing compatibility of various Ozone versions, and upgrade from one version to another. May also be useful for running quick experiments with specific version of Ozone, without the need to download or rebuild it. + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone) and [GitHub](https://github.com/apache/ozone-docker/pkgs/container/ozone). + +### Kerberos KDC for Testing + +[ozone-testkrb5](https://github.com/apache/ozone-docker-testkrb5) is used as KDC in tests where Kerberos is enabled. + +Published only to [GitHub](https://github.com/apache/ozone-docker-testkrb5/pkgs/container/ozone-testkrb5). Review Comment: We should explain why this one is not available on docker hub. I think it's because we only use it in our CI? ########## docs/08-developer-guide/01-build/03-docker-images.md: ########## @@ -2,10 +2,126 @@ sidebar_label: Docker Images --- +<!-- cspell:word testkrb5 --> + # Building Ozone Docker Images -**TODO:** File a subtask under [HDDS-9861](https://issues.apache.org/jira/browse/HDDS-9861) and complete this page or section. +This page provides an overview of the Docker images maintained by the Apache Ozone community for developing and testing Ozone. It also describes the workflow to be followed when making changes to one of these images. + +## Images + +### Base Image (without any Ozone) + +[ozone-runner](https://github.com/apache/ozone-docker-runner) contains tools for running and testing Ozone, but does not include any Ozone artifacts. + +Developers and CI workflows rely on it heavily to run/test custom Ozone builds (using the local build via bind-mount). It also serves as the base image for `apache/ozone` (see next section). + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone-runner) and [GitHub](https://github.com/apache/ozone-docker-runner/pkgs/container/ozone-runner). + +### Image with Specific Version of Ozone + +[ozone](https://github.com/apache/ozone-docker) is built on top of `ozone-runner`, adding the binaries built for official Ozone releases. + +These are used for testing compatibility of various Ozone versions, and upgrade from one version to another. May also be useful for running quick experiments with specific version of Ozone, without the need to download or rebuild it. + +Published to [Docker Hub](https://hub.docker.com/r/apache/ozone) and [GitHub](https://github.com/apache/ozone-docker/pkgs/container/ozone). + +### Kerberos KDC for Testing + +[ozone-testkrb5](https://github.com/apache/ozone-docker-testkrb5) is used as KDC in tests where Kerberos is enabled. + +Published only to [GitHub](https://github.com/apache/ozone-docker-testkrb5/pkgs/container/ozone-testkrb5). + +## Development + +### Common Flow + +High-level overview of making changes to any of the Docker images: + +1. Local development: make changes, build image, test locally. +2. If this is your first time working on the image: fork the repo and enable GitHub Actions workflows. +3. Push to your fork. The image is built and tagged by commit SHA in GitHub. This can be used for testing integration with other repos, e.g. using as base for the `ozone` image, or using in Ozone CI. It can also be shared with others for feedback. +4. Create pull request. The change is validated in CI workflow. Ask for reviews. +5. Final steps for committers: + 1. Merge the pull request. This will trigger build and the image will be tagged with commit SHA. + 2. Fetch changes to your local clone. + 3. The way the image can be published with a friendlier tag depends on the repo, see details below. + +### Base Image + +Development happens on branch `master`, relevant changes are cherry-picked to branch `jdk11`. Review Comment: Not related to this change, but reading this doc made me think it might be good organize the branch, build, and tag procedures for our docker repos so that they are more similar. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
