中文 | English
Dockerfiles for openEuler official container images, include openEuler basic image and application images.
The base images of openEuler are officially released by the community and are currently available at openEuler repo. The latest
tag represents the latest available long-term stable image.
Once the official images are released, they will be synchronized and pushed to various remote container image repositories, as detailed below:
The {repository/name} for the base image on third-party image hubs is openeuler/openeuler
Base/openeuler/Dockerfile
Images for various popular application implementations based on openEuler base images.
The {repository/name} for the application images on third-party image hubs is openeuler/[application name]
Application images are categorized into seven types based on scenarios, and the image building files are stored in corresponding scenario directories:
Bigdata/
AI/
Storage/
Database/
Cloud/
Distroless/
HPC/
Others/
Due to the complexity of application image functionalities, the depth of the directory is uncertain. The overall directory is as follows:
openeuler-docker-images/
└── AI/
|── image-list.yml
|── OPEA/
| |── AudioQnA/
| | └── Image_1/
| | └── Image_2/
| └── DocSum/
| └── Image_3/
| └── Image_4/
| └── Image_5/
|───Image6/
└───Image7/
Each scenario directory must contain an image-list.yml
to describe the roots for each application image's minimum directory unit (MDU) (i.e., all Image_i/
s in the example), image-list.yml
is formatted as follows:
# AI/image-list.yml
images:
Image_1: AI/OPEA/AudioQnA/Image_1/ # root path to Image_1
Image_2: AI/OPEA/AudioQnA/Image_2/
Image_3: AI/OPEA/DocSum/Image_3/
Image_4: AI/OPEA/DocSum/Image_4/
Image_5: AI/OPEA/DocSum/Image_5/
Image_6: Image_6/
Image_7: Image_7/
The existence of image-list.yml
:
This repository requires the minimum directory unit Image_i/
to strictly follow the structure below:
# here, Image_i == nginx
nginx/
|── README.md
|── meta.yml
|── doc/ (optional)
| |── picture/
| | └── logo.png
| └── image-info.yml
└── 1.27.2/
|── 24.03-lts
| └── Dockerfile
|── 22.03-lts-sp4
| └── Dockerfile
|── 22.03-lts-sp3
| └── Dockerfile
└── 22.03-lts-sp1
└── Dockerfile
In each MDU Image_i/
, the following contents must be included:
Dockerfile
The storage path is [application version]/[openEuler version]/Dockerfile
. For example, the Dockerfile for the nginx application image version 1.27.1
based on openEuler 22.03-lts-sp1
is located at 1.27.1/22.03-lts-sp1/Dockerfile
.
Specifically, for complex software stack application container images, to accurately express their dependencies, the application version in the Dockerfile storage path can be described as the complete software stack version number. For example, in PyTorch root path: 2.1.0-cann7.0.RC1.alpha002/22.03-lts-sp2/Dockerfile
stores the Dockerfile for the pytorch 2.1.0
version application image based on cann7.0.RC1.alpha002
and openEuler 22.03-lts-sp2
(AI container image tags can refer to oEEP-0014).
README.md
The README should cover the following information in order:
The README will be published to the Overview or Description section of the third-party Hub image detail page; contributions via PR should be taken seriously.
meta.yml
This file describes the tag information and Dockerfile storage paths for each image, located at: [application name]/meta.yml
. The file format is as follows:
# spark/meta.yml
3.3.1-oe2203lts:
path: spark/3.3.1/22.03-lts/Dockerfile
3.3.2-oe2203lts:
path: spark/3.3.2/22.03-lts/Dockerfile
arch: aarch64
In the above example, each pair of <key, value>
contains image's publishing configuration, it's as follows:
key: Represents the image tag, with a recommended naming format of: [application version]-[openeuler version]
, such as 3.3.1-oe2203lts
and 3.3.2-oe2203lts
, indicating different tags of the openeuler/spark
.
value: Describes how to build the image, explained as follows:
Configuration description:
Configuration Item | Required | Description | Example |
---|---|---|---|
path | yes | Relative path of the image dockerfile | spark/3.3.1/22.03-lts/Dockerfile |
arch | optional | Specifies the architecture when releasing a single-architecture image, optional x86_64 or aarch64 if not filled, a dual-architecture image for both x86_64 and aarch64 will be released by default |
x86_64 |
*Note: When updating the image tag, the above configuration must also be updated.
(Optional) doc/
This directory stores graphic and textual information about the image for display in openEuler Software Center's application image section. If it is not to be displayed in openEuler Software Center, this section can be omitted.
doc/image-info.yml
The content is as follows:
name
category (options: bigdata, ai, storage, database, cloud, hpc, others)
description
environment
tags
download
usage
license
similar_packages
dependency
doc/picture/
Store application-related images, such as application logos or runtime screenshots of typical scenes.
*Note: The files and contents in the above doc/
directory must exist simultaneously for the image to be displayed correctly in openEuler Software Center.
Available container registries included:
For example, users can obtain the base image openeuler/openeuler:latest
by the following commands
# pull image from hub.oepkgs.net
docker pull hub.oepkgs.net/openeuler/openeuler:latest
# pull image from hub.docker.com
docker pull docker.io/openeuler/openeuler:latest
# pull from quay.io
docker pull quay.io/openeuler/openeuler:latest
Welcome to contribute openEuler application container images, please submit PR according to the above rules. Once the PR is passed and merged, the automatically publishing process will be triggered, and these images will be published to available container registries mentioned above!
Code check instruction:
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. Open source ecosystem
2. Collaboration, People, Software
3. Evaluation model