[jira] [Work logged] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?focusedWorklogId=864879=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-864879 ] ASF GitHub Bot logged work on ARTEMIS-3042: --- Author: ASF GitHub Bot Created on: 12/Jun/23 05:38 Start Date: 12/Jun/23 05:38 Worklog Time Spent: 10m Work Description: ViliusS commented on PR #4307: URL: https://github.com/apache/activemq-artemis/pull/4307#issuecomment-1586616294 > Well that should be possible without a problem. You do your changes in the jenkins pipeline first, then compile it on the machine with `mvn clean install` or a similar command and then simply copy it to ./artemis-docker/target/apache-artemis*-bin/*SNAPSHOT . After that just `docker-compose -f artemis-docker/docker-compose-final.yml up -d` and you are done. As I said multiple times before, we can't without modifying provided Dockerfile. For modification to happen tarball needs to be downloaded and extracted first. Issue Time Tracking --- Worklog Id: (was: 864879) Time Spent: 11.5h (was: 11h 20m) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 11.5h > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?focusedWorklogId=864861=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-864861 ] ASF GitHub Bot logged work on ARTEMIS-3042: --- Author: ASF GitHub Bot Created on: 11/Jun/23 20:28 Start Date: 11/Jun/23 20:28 Worklog Time Spent: 10m Work Description: SamTV12345 commented on PR #4307: URL: https://github.com/apache/activemq-artemis/pull/4307#issuecomment-1586327618 Well that should be possible without a problem. You do your changes in the jenkins pipeline first, then compile it on the machine with `mvn clean install` or a similar command and then simply copy it to ./artemis-docker/target/apache-artemis*-bin/*SNAPSHOT . After that just `docker-compose -f artemis-docker/docker-compose-final.yml up -d` and you are done. Issue Time Tracking --- Worklog Id: (was: 864861) Time Spent: 11h 20m (was: 11h 10m) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 11h 20m > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?focusedWorklogId=864860=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-864860 ] ASF GitHub Bot logged work on ARTEMIS-3042: --- Author: ASF GitHub Bot Created on: 11/Jun/23 20:20 Start Date: 11/Jun/23 20:20 Worklog Time Spent: 10m Work Description: ViliusS commented on PR #4307: URL: https://github.com/apache/activemq-artemis/pull/4307#issuecomment-1586326079 > What exactly is this step sh " our modifications and custom configuration goes here." and can't you simply do this before the jar is put into the container? The final build step is simply take the compiled jar with modifications if you like and put it into the various docker images. Modifications to web console for example. In the past this was also the place where we applied our own patches before building Artemis from source. Issue Time Tracking --- Worklog Id: (was: 864860) Time Spent: 11h 10m (was: 11h) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 11h 10m > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?focusedWorklogId=864852=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-864852 ] ASF GitHub Bot logged work on ARTEMIS-3042: --- Author: ASF GitHub Bot Created on: 11/Jun/23 16:09 Start Date: 11/Jun/23 16:09 Worklog Time Spent: 10m Work Description: SamTV12345 commented on PR #4307: URL: https://github.com/apache/activemq-artemis/pull/4307#issuecomment-1586233484 What exactly is this step sh " our modifications and custom configuration goes here." and can't you simply do this before the jar is put into the container? Issue Time Tracking --- Worklog Id: (was: 864852) Time Spent: 11h (was: 10h 50m) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 11h > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Commented] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17731336#comment-17731336 ] Alexey Markevich commented on ARTEMIS-3042: --- {quote}RUN ./bin/artemis create --user=${ARTEMIS_USER} --password=${ARTEMIS_PASSWORD} --require-login instance {quote} - instance credentials is a part of image -> probably should be avoided for official image + instance exist and can be easily configured (like additional login module setup) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 10h 50m > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (ARTEMIS-3042) Official Docker Multistage Build as well as an official Docker image.
[ https://issues.apache.org/jira/browse/ARTEMIS-3042?focusedWorklogId=864839=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-864839 ] ASF GitHub Bot logged work on ARTEMIS-3042: --- Author: ASF GitHub Bot Created on: 11/Jun/23 09:35 Start Date: 11/Jun/23 09:35 Worklog Time Spent: 10m Work Description: ViliusS commented on PR #4307: URL: https://github.com/apache/activemq-artemis/pull/4307#issuecomment-1586091960 I've went through couple of different YAML and bash solution iterations today. I have also tested the solution provided in this PR. I still have to conclude that at least for us multistage builds give more headache than it solves. My main concern, as mentioned previously, is that Artemis preparation process will be integrated into Docker image which doesn't allow for easy customization. For example previously we had such Jenkins CI pipeline: ``` stage('prepare configuration') { steps { sh "./prepare-docker.sh --from-release --artemis-version $ARTEMIS_VERSION" sh " our modifications and custom configuration goes here." } } stage('build image') { steps { script { docker.withRegistry(env.DOCKER__REPOSITORY, env.DOCKER_LOGIN) { sh ''' cd _TMP_/artemis/$ARTEMIS_VERSION docker build -f ./docker/Dockerfile-ubuntu-17-jre -t $BUILD_IMAGE $BUILD_DIR docker push $BUILD_IMAGE rm -rf _TMP_ ''' } } } } ``` If this PR is ought to be accepted we won't be able to modify Artemis image as easily anymore. We would need to download official docker file, modify it by using "patch" or similar tools and only then build our image. This means we would need to maintain our own Dockerfile which looses the purpose of having official Docker file altogether. It also integrates preparation process into build process which lowers visibility in Jenkins (or any other CI system) UI. The final word will be on Artemis maintainers, by my proposal is to leave current Docker files as their are. If building Artemis images for fast local development is really a problem (which I don't think it is to run 2 commands instead of 1), then have separate Docker files. Or better yet, have official Docker image uploaded to Docker Hub for easy run with default settings. That way Docker files can stay in the repo for those wanting to modify the image. On a side note, what I would really want to see happening is proper customization via environment variables or Docker entrypoint as mentioned in [ARTEMIS-3042](https://issues.apache.org/jira/browse/ARTEMIS-3042). Issue Time Tracking --- Worklog Id: (was: 864839) Time Spent: 10h 50m (was: 10h 40m) > Official Docker Multistage Build as well as an official Docker image. > - > > Key: ARTEMIS-3042 > URL: https://issues.apache.org/jira/browse/ARTEMIS-3042 > Project: ActiveMQ Artemis > Issue Type: Improvement >Reporter: John Behm >Priority: Minor > Labels: docker,, dockerfile,, kubernetes > Time Spent: 10h 50m > Remaining Estimate: 0h > > It would be rather convenient to get people up and running with an easy to > build or to setup Docker image that automatically builds the project from > source, discards the build container and moves the necessary files over to > the final container that can simply be started. > The current docker image build is not really user firendly or convenient at > all. > > https://github.com/apache/activemq-artemis/tree/master/artemis-docker > The whole setup process of artemis in a containerized environment is very > far from even good. > The hurdle of using this software is gigantic, as the configuration is so > complex, one will not be able to do this within one month without having gone > through the whole documentation multiple times. -- This message was sent by Atlassian Jira (v8.20.10#820010)