[
https://issues.apache.org/jira/browse/SOLR-15321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17317365#comment-17317365
]
Chris M. Hostetter commented on SOLR-15321:
-------------------------------------------
{quote}So could a hybrid approach work, where we provision a {{solr-docker}}
repo at apache, that only contains final Dockerfiles and scripts in version
folders. Not all the build infrastructure and templating as now (that will be
in main repo and partly gradle).
{quote}
Right, that's what i was understanding we would almost certainly need –
although one thing Houston and i have been talking about is that even the
'scripts' should live in the solr.git repo, and get bundled into the solr.tgz
(that gets "VOTE"ed on during the release) and used as the docker build context
(SOLR-15322).
Ideally the docker-solr.git repo should be *JUST* the per-version Dockerfiles
produced by each release
{quote}2. During release, an "official" docker image is produced and pushed to
e.g. {{apache/solr:9.0.0-STAGING}} used to smoke-test release
{quote}
Nit-pick, but i would suggest these should be {{apache/solr:9.0.0-RC1}}, etc...
{quote}2. Push the Dockerfile to official {{_/solr:9.0.0}} and submit the PR
(may need a slightly different dockerfile?)
{quote}
Strictly speaking we don't get to "push" directly to {{_/solr:9.0.0}}, we only
get to commit the Dockerfile to our docker-solr.git repo, and submit the PR to
the docker-library/official-images.git repo to add the metadata so that _they_
build it.
We *ABSOLTELY* need a different Dockerfile for this this then what we currently
have in solr.git/main – not just slightly. the feedback we've gotten from
docker-library and the various docs/faqs about what are "allowed" make it clear
that the Dockerfile used for {{_/solr}} is going to have to be radically
different from what we have for people who want to run {{./gradlew
dockerBuild}} in terms of how it gets the "bits" of Solr make it into the build
context.
I've started referring to these as "Dockerfile.local" (what people use to build
an image locally from gradle) and "Dockerfile.official" (what we give to
docker-library to build {{_/solr}} ) ... in SOLR-15250 we're talking about how
to try and template-ize them from a common base to minimize variance in how the
images actually function.
One key aspect of this that i feel like we should probably start thinking about
is viewing the "Dockerfile.official" files that we produce as "release
artifacts" -- included in the VOTE, and canonically kept in archive.apache.org.
(Committing them into docker-solr.git after the release is just something we
do to make docker-library happy)
> Flesh out process for managing/storing "official" Dockerfiles used by
> docker-library
> ------------------------------------------------------------------------------------
>
> Key: SOLR-15321
> URL: https://issues.apache.org/jira/browse/SOLR-15321
> Project: Solr
> Issue Type: Sub-task
> Reporter: Chris M. Hostetter
> Priority: Major
>
> Assuming we (the Apache Solr TLP) do want to be the maintainer of "official"
> {{_/solr}} docker images moving forward, we need to flesh out how/where
> exactly we plan on storing/managing/maintaining the Dockerfiles that should
> be pointed to by the docker-library manifest file for solr...
> [https://github.com/docker-library/official-images/blob/master/library/solr]
> ie:
> * what replaces [https://github.com/docker-solr/docker-solr.git]
> * what process do we use to update/manage this?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]