diff --git a/README.en.md b/README.en.md index 23b816233977a90e55da05c43af129d62d4e88b8..d26c8bcddd5ab0f58e0c2fdd92cfcf87a1ac2097 100644 --- a/README.en.md +++ b/README.en.md @@ -1,36 +1,47 @@ -# openeuler-docker-images +# openEuler official container images -#### Description -Dockerfiles for openEuler official basic and application images. +#### Introduction -#### Software Architecture -Software architecture description +Dockerfiles for openEuler official container images, include openEuler basic image and appliaction images. -#### Installation -1. xxxx -2. xxxx -3. xxxx +#### openEuler Basic Container Image -#### Instructions +openEuler basic image is published by openEuler community in [openEuler repo](https://repo.openeuler.org) -1. xxxx -2. xxxx -3. xxxx -#### Contribution +"openeuler:latest" is current stable avalible image. -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request +After offcial images published, we will push to every remote container images hub: +- name: `openeuler/openeuler` +- Download: `docker pull [Remote repo URL]openeuler/openeuler[:tags]` +- Support arch: amd64, arm64 +- Tags: + - [20.09](https://repo.openeuler.org/openEuler-20.09/docker_img/) + - [20.03-lts](https://repo.openeuler.org/openEuler-20.03-LTS/) + - [20.03-lts-sp1, 20.03, latest](https://repo.openeuler.org/openEuler-20.03-LTS-SP1/docker_img/) + - [20.03-lts-sp2](https://repo.openeuler.org/openEuler-20.03-LTS-SP2/docker_img/) + - [21.03](https://repo.openeuler.org/openEuler-21.03/docker_img/) -#### Gitee Feature +#### openEuler Application Container Image -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +Dockerfiles for various popular application implementations based on openEuler basic image. + +Every openEuler application images contains the README, included: + +- Desciption for container images build. +- openEuler, container service (like Docker, iSula) and application version info. + +The container images would be published after Dockerfile merged under `openeuler`. + +#### Avalible Container Repo + +- Hub oepkgs: https://hub.oepkgs.net/ + +- AtomHub: https://atomhub.org/ + + +#### Contributions + +Welcome to submit your idea, issue and pull request. diff --git a/README.md b/README.md index c538b252286249b0ca58f64d8bd330fd6ae0f243..ce177ab2e008e2b4a8b03e13c2dfa35cde4ee990 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,50 @@ -# openeuler-docker-images +# openEuler官方容器镜像仓 #### 介绍 -Dockerfiles for openEuler official basic and application images. -#### 软件架构 -软件架构说明 +这里存放着由openEuler官方提供的容器镜像,包含openEuler基础镜像、应用镜像。 -#### 安装教程 +#### openEuler基础镜像 -1. xxxx -2. xxxx -3. xxxx +openEuler的基础镜像由社区官方发布,目前发布在[openEuler镜像站](https://repo.openeuler.org)。 -#### 使用说明 +"openeuler:latest"是最新可用的长期稳定镜像。 -1. xxxx -2. xxxx -3. xxxx +镜像发布后,会同步推送到各个远端容器镜像仓,信息如下: -#### 参与贡献 +- 仓库及镜像名:`openeuler/openeuler` +- 下载命令:`docker pull [远端容器镜像仓URL]openeuler/openeuler[:tags]` +- 支持架构:amd64, arm64 +- 当前可用Tags的命名: + - [20.09](https://repo.openeuler.org/openEuler-20.09/docker_img/) + - [20.03-lts](https://repo.openeuler.org/openEuler-20.03-LTS/) + - [20.03-lts-sp1, 20.03, latest](https://repo.openeuler.org/openEuler-20.03-LTS-SP1/docker_img/) + - [20.03-lts-sp2](https://repo.openeuler.org/openEuler-20.03-LTS-SP2/docker_img/) + - [21.03](https://repo.openeuler.org/openEuler-21.03/docker_img/) + + +#### openEuler应用镜像 + +基于openEuler基础镜像,将一些热门应用进行发布,生成基于openEuler应用镜像。 + +每个应用镜像,应当包含一个README,涵盖以下信息: + +- 构建容器镜像的说明。 +- 配套的openEuler、容器(例如Docker, iSula)及应用的版本信息。 -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request +合入后,将会发布至openeuler仓库下。 -#### 特技 +#### 国内镜像仓 + +目前支持的第三方国内镜像仓有: + +- Hub oepkgs: https://hub.oepkgs.net/ + +- AtomHub: https://atomhub.org/ + + +#### 参与贡献 -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +欢迎发表想法、提交问题、贡献代码。 diff --git a/openeuler/Dockerfile b/openeuler/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..7be33086b49e196849bbd492c46fac927f1a47e4 --- /dev/null +++ b/openeuler/Dockerfile @@ -0,0 +1,6 @@ +FROM scratch +ARG TARGETARCH +ADD openEuler-docker-rootfs.$TARGETARCH.tar.xz / +# See more in https://gitee.com/openeuler/cloudnative/issues/I482Q6 +RUN ln -sf /usr/share/zoneinfo/UTC /etc/localtime +CMD ["bash"] diff --git a/openeuler/README.md b/openeuler/README.md new file mode 100644 index 0000000000000000000000000000000000000000..f23e1f7804419c6530ca0b0bb6533449b113274a --- /dev/null +++ b/openeuler/README.md @@ -0,0 +1,36 @@ +# openEuler Basic Container Images + +# Quick reference + +- Maintained by: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative) + +- Where to get help: [openEuler CloudNative SIG](https://gitee.com/openeuler/cloudnative), [openEuler](https://gitee.com/openeuler/community) + +# Build referebce + +1. Download all images: + +```shell +download.sh +``` + +2. Build images and push: +```shell +docker buildx build -t "openeuler/openeuler:$VERSION" --platform linux/amd64,linux/arm64 . --push +``` + +We are using `buildx` in here to generate multi-arch images, see more in [Docker Buildx](https://docs.docker.com/buildx/working-with-buildx/) + + +# Supported tags and respective Dockerfile links + +- 21.03 +- 20.09 +- 20.03-LTS-SP2 +- 20.03-LTS-SP1, 20.03, latest +- 20.03-LTS + + +## Operating System +Linux/Unix, ARM64 or x86-64 architecture. + diff --git a/openeuler/download.sh b/openeuler/download.sh new file mode 100755 index 0000000000000000000000000000000000000000..d71c7ebf0ae41083b9b323915dcf24ad3e650727 --- /dev/null +++ b/openeuler/download.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +set -ex + +archs="x86_64 aarch64" +versions="20.03-lts 20.03-lts-sp1 20.03-lts-sp2 20.09 21.03" +for ARCH in $archs ; +do + if [[ "$ARCH" = "aarch64" ]];then + DOCKER_ARCH=arm64 + elif [[ "$ARCH" = "x86_64" ]];then + DOCKER_ARCH=amd64 + else + echo "Unknow arch: "$ARCH + exit 1 + fi + for VERSION in $versions ; + do + mkdir -p $VERSION + # Download + cd $VERSION + if [ ! -f "openEuler-docker.$ARCH.tar.xz" ]; then + wget https://repo.openeuler.org/openEuler-$VERSION/docker_img/$ARCH/openEuler-docker.$ARCH.tar.xz + fi + # Re-download and validate sha256sum everytime + rm -f openEuler-docker.$ARCH.tar.xz.sha256sum + wget https://repo.openeuler.org/openEuler-$VERSION/docker_img/$ARCH/openEuler-docker.$ARCH.tar.xz.sha256sum + shasum -c openEuler-docker.$ARCH.tar.xz.sha256sum + # Extract rootfs + if [ ! -f "openEuler-docker-rootfs.$DOCKER_ARCH.tar.xz" ]; then + tar -xf openEuler-docker.$ARCH.tar.xz --wildcards "*.tar" --exclude "layer.tar" + ROOT_FS=`ls | xargs -n1 | grep -v openEuler |grep *.tar` + mv $ROOT_FS openEuler-docker-rootfs.$DOCKER_ARCH.tar + xz -z openEuler-docker-rootfs.$DOCKER_ARCH.tar + fi + cp -f ../Dockerfile ./ + cd .. + done +done +