forked from apache/superset
-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: docker image tags documentation + tweaks (apache#26923)
Co-authored-by: Sam Firke <[email protected]>
- Loading branch information
1 parent
fdff6d8
commit 6b0d8ed
Showing
11 changed files
with
145 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
# Docker Images and Tags | ||
|
||
The Apache Superset community extensively uses Docker for development, release, | ||
and productionizing Superset. This page details our Docker builds and tag naming | ||
schemes to help users navigate our offerings. | ||
|
||
Images are built and pushed to the [Superset Docker Hub repository]( | ||
https://hub.docker.com/r/apache/superset). Different sets of images are created for: | ||
- Published releases, with tags like `3.0.0` and the `latest` tag. | ||
- Pull request iterations, each identified by tags starting with a SHA like | ||
`8a2f7d378ab13c156fa183d9284b607ed69f5ecc`, and `pr-3454`, referencing the pull | ||
request ID. | ||
- Merges to the main branch (`master`), resulting in new SHAs, with tags | ||
prefixed with `master` for the latest `master` version. | ||
|
||
Each code version has multiple builds for different purposes, identified by suffixes: | ||
- **Build preset:** We offer various images for different needs: | ||
- `lean`: The default Docker image, including both frontend and backend. Tags | ||
without a build_preset are lean builds, e.g., `latest`. | ||
- `dev`: For development, with a headless browser and root access. | ||
- `py310`, e.g., Py310: Similar to lean but with a different Python version (in this example, 3.10). | ||
- `ci`: For certain CI workloads. | ||
- `websocket`: For Superset clusters supporting advanced features. | ||
- `dockerize`: Used by Helm. | ||
- **Platform:** We build for `linux/arm64` and `linux/amd64`. The `-arm` suffix | ||
indicates ARM builds (e.g., `latest-arm`), while tags without a suffix are for | ||
AMD (e.g., `latest`). | ||
|
||
## Key Image Tags and Examples | ||
|
||
- `latest`: The latest official release build, implicitly the lean build on | ||
`linux/amd64`. | ||
- `latest-dev`: the `-dev` image of the latest official release build, with a headless browser and root access. | ||
- `master`: The latest build from the `master` branch, implicitly lean on | ||
`linux/amd64`. | ||
- `master-dev`: Similar to `master` but includes a headless browser and root access. | ||
- `pr-5252`: The latest commit in PR 5252. | ||
- `30948dc401b40982cb7c0dbf6ebbe443b2748c1b-dev-arm`: A `linux/arm64` build for | ||
this specific SHA, which could be from a pull request, master merge, or release. | ||
- `30948dc-dev-arm`: Same as above, but SHA truncated to 7 characters for a | ||
shorter handle on the same image | ||
- `websocket-latest`: The WebSocket image for use in a Superset cluster. | ||
|
||
For insights or modifications to the build matrix and tagging conventions, | ||
check the [build_docker.py](https://github.com/apache/superset/blob/master/scripts/build_docker.py) | ||
script and the [docker.yml](https://github.com/apache/superset/blob/master/.github/workflows/docker.yml) | ||
GitHub action. | ||
|
||
## Caching | ||
|
||
To accelerate builds, we follow Docker best practices and use `apache/superset-cache`. | ||
|
||
## On ARM builds and working with Apple silicon | ||
|
||
Apple's current generation of computers uses ARM-based CPUs, and Docker | ||
running on MACs seem to require `linux/arm64/v8` (at least one user's M2 was | ||
configured in that way). Setting the environment | ||
variable `DOCKER_DEFAULT_PLATFORM` to `linux/amd64` seems to function in | ||
term of leveraging, and building upon the Superset builds provided here. | ||
|
||
``` | ||
export DOCKER_DEFAULT_PLATFORM=linux/amd64 | ||
``` | ||
|
||
Presumably, `linux/arm64/v8` would be more optimized for this generation | ||
of chips, but less compatible across the ARM ecosystem. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -29,7 +29,7 @@ maintainers: | |
- name: craig-rueda | ||
email: [email protected] | ||
url: https://github.com/craig-rueda | ||
version: 0.12.1 | ||
version: 0.12.2 | ||
dependencies: | ||
- name: postgresql | ||
version: 12.1.6 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters