[ 
https://issues.apache.org/jira/browse/HDDS-851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16702086#comment-16702086
 ] 

Elek, Marton commented on HDDS-851:
-----------------------------------

Thank you very much the review [~anu]

I started to commit to a separated branch and finding the right settings in 
dockerhub to request it from the INFRA (pushed the branch only a github fork 
not to the apache repo, yet)

And found a problem.

Dockerhub as of now supports the following schemas:

1. hardcoded (branch -> docker tag) mapping
2. using the branch name dynamically as the tag name.

Let say we would like to provide apache/ozone:0.3.0-alpha, 
apache/ozone:0.4.0-alpha and apache/ozone:latest images.

We need three branches. Following the existing convention from hadoop they 
could be docker-ozone-0.3.0-alpha, docker-ozone-0.4.0-alpha and 
docker-ozone-latest.

With the first approach we need to add a mapping manually for all of the 
branches and for any feature releases:

For example:
branch: docker-ozone-0.3.0-alpha, tag: 0.3.0-alpha
branch: docker-ozone-0.4.0-alpha, tag: 0.4.0-alpha

With the second approach we can define a pattern:

branch: docker-ozone-(.*) tag: {sourceref}

But here is the problem. Dockerhub doesnt't support to use the regexp matching 
group just the '{sourceref}' notation which uses the whole branch name as the 
tag. We will have apache/ozone:docker-ozone-0.3.0-alpha with this approach

I can't see any other easy solution for this problem just creating an other git 
repository where we can use plain versions as the branch names.

Therefore I propose to create a new git repository: hadoop-docker-ozone (or 
hadoop-ozone-docker) and create 0.3.0-alpha, 0.4.0-alpha and master branches 
there.

And request two mapping from INFRA:

branch: master, tag: latest
branch: /[0-9.]+.*/ tag: {sourceref}

If it works well we can switch to this approach with the official hadoop images.

What do you think [~anu]?

> Provide official apache docker image for Ozone
> ----------------------------------------------
>
>                 Key: HDDS-851
>                 URL: https://issues.apache.org/jira/browse/HDDS-851
>             Project: Hadoop Distributed Data Store
>          Issue Type: Sub-task
>            Reporter: Elek, Marton
>            Assignee: Elek, Marton
>            Priority: Major
>         Attachments: docker-ozone-latest.tar.gz, ozonedocker.png
>
>
> Similar to the apache/hadoop:2 and apache/hadoop:3 images I propose to 
> provide apache/ozone docker images which includes the voted release binaries.
> The image can follow all the conventions from HADOOP-14898
> 1. BRANCHING
> I propose to create new docker branches:
> docker-ozone-0.3.0-alpha
> docker-ozone-latest
> And ask INFRA to register docker-ozone-(.*) in the dockerhub to create 
> apache/ozone: images
> 2. RUNNING
> I propose to create a default runner script which starts om + scm + datanode 
> + s3g all together. With this approach you can start a full ozone cluster as 
> easy as
> {code}
> docker run -p 9878:9878 -p 9876:9876 -p 9874:9874 -d apache/ozone
> {code}
> That's all. This is an all-in-one docker image which is ready to try out.
> 3. RUNNING with compose
> I propose to include a default docker-compose + config file in the image. To 
> start a multi-node pseudo cluster it will be enough to execute:
> {code}
> docker run apache/ozone cat docker-compose.yaml > docker-compose.yaml
> docker run apache/ozone cat docker-config > docker-config
> docker-compose up -d
> {code}
> That's all, and you have a multi-(pseudo)node ozone cluster which could be 
> scaled up and down with ozone.
> 4. k8s
> Later we can also provide k8s resource files with the same approach:
> {code}
> docker run apache/ozone cat k8s.yaml | kubectl apply -f -
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to