Hi Pierre, As a quick follow up which might be useful to you...
I've created a docker-ofbiz github project at https://github.com/danwatford/ofbiz-docker which uses gradle to construct the Dockerfile on the fly when building the image. Blog post here - https://www.watfordconsulting.com/2020/04/01/building-apache-ofbiz-docker-images/ On Wed, 25 Mar 2020 at 15:28, Daniel Watford <[email protected]> wrote: > Hi Pierre, > > Sorry for coming back to this so late, but I thought I'd share how I have > my project setup for docker and pushing to a test environment in case its > of any use to you. > > I'm working on a plugin called Activate, built against Ofbiz R18. > > My work area is structured as: > - activate-docker-ofbiz-framework (private repo) > - - local-config > - - - environment-seed-data.xml > - - ofbiz (https://github.com/danwatford/ofbiz-framework forked from > https://github.com/apache/ofbiz-framework) > - - - plugins > - - - - activate (private repo) > > The activate-docker-ofbiz-framework project exists to build a docker image > of ofbiz both with and without the plugin. > > The build.gradle file and .dockerignore file are attached. See > task buildOfbizBaseImage in build.gradle. > > In build.gradle I'm using the com.bmuschko.docker-remote-api plugin to > construct a Dockerfile and build an image. I preferred the idea of keeping > as much build information in build.gradle rather than spreading it out > across build.gradle and a separate Dockerfile. > > Building Dockerfile on the fly gives opportunities to create different > variants of docker images. > > In this case I can build the ofbiz image from the > activate-docker-ofbiz-framework directory with: > ./gradlew buildOfbizBaseImage > > Once the base image is built, I extend it to include my plugin using: > ./gradlew buildOfbizBaseImage > > I separate building the two images for performance reasons, although these > aren't massive savings. > > > Next I can run the new image with docker-compose (see attached > docker-compose-standalone.yml file): > docker-compose -f docker-compose-standalone.yml up > > Here ofbiz is launched in the container using: ./gradlew "ofbiz > --load-data dir=local-config" ofbiz > > The --load-data argument causes the environment-seed-data.xml file to be > loaded, in this case to set the admin user's password to 'ofbiz' without > the need to change the password when they log in. > > Visit https://localhost:8443/ (you may need to vary the hostname > depending on your docker environment). > > > The above approach works well for me as I have some Azure DevOps pipelines > triggered from updates to git repositories to build my image, push to my > docker repository and then restart docker-compose running in my test > environment. > > The local-config directory in each test environment can hold different > data to load when the environment is brought up, configuring user accounts > and passwords as needed. > > Hope this helps, > > Dan. > > > > On Fri, 13 Mar 2020 at 17:37, Pierre Smits <[email protected]> wrote: > >> As I have stated in the ticket (and it being good enough to repeat it >> here): >> >> I have been working on a solution that will enable users >> (developers/adopters/etc.) to generate containers, that either will be >> based: >> >> >> - on a branch (trunk or whatever) without plugins and git-aware >> - on a branch with plugins git-aware >> - on a release without plugins >> - on a release with plugins >> >> >> And for the latter two I am looking at how to have it production-ready. >> >> >> Having docker hub working with it is a good idea. I started testing that >> angle a short while ago. It is an additional means to spread, and enables >> the project to control/direct some flow of dissemination. And for some >> (developers and/or potential adopters) it is a starting point. >> >> Met vriendelijke groet, >> >> Pierre Smits >> *Proud* *contributor** of* Apache OFBiz <https://ofbiz.apache.org/> since >> 2008 (without privileges) >> >> *Apache Trafodion <https://trafodion.apache.org>, Vice President* >> *Apache Directory <https://directory.apache.org>, PMC Member* >> Apache Incubator <https://incubator.apache.org>, committer >> Apache Steve <https://steve.apache.org>, committer >> >> >> On Fri, Mar 13, 2020 at 6:22 PM Taher Alkhateeb < >> [email protected]> >> wrote: >> >> > Hello Michael, >> > >> > 1. Absolutely from my side. Deployment becomes drastically simpler >> > 2. Which version of what? >> > 3. Hmm, I'm not sure of the purpose / benefit of having that. No one >> > just "deploys" OFBiz without customization. And even if so, if you >> > have comfy scripts in the code base, then that would be enough. >> > >> > Ideally, the way I'd go for it is to have a Dockerfile at the top >> > level directory and a docker folder to hold everything else. >> > Deployment can be targeted to multiple different environments such >> > that even the development environment can depend on a database engine >> > like postgres by default. >> > >> > On Fri, Mar 13, 2020 at 8:06 PM Michael Brohl <[email protected] >> > >> > wrote: >> > > >> > > Hi everyone, >> > > >> > > please have a look at the solutions provided in >> > > https://issues.apache.org/jira/browse/OFBIZ-10407. >> > > >> > > The main questions for the mailing list: >> > > >> > > 1. do we want to add and maintain Docker files in our codebase? >> > > >> > > 2. if yes, which version should we use? >> > > >> > > 3. if yes, additionally: would it be a good idea to place OFBiz Docker >> > > images on docker hub and maintain them? >> > > >> > > What do you think? >> > > >> > > Thanks, >> > > >> > > Michael Brohl >> > > >> > > ecomify GmbH - www.ecomify.de >> > > >> > > >> > >> > > > -- > Daniel Watford > -- Daniel Watford
