Hey Shameera, what about the PATH variable? If you see my dockerfile I have commented the ENV for the JAVA_HOME and PATH. It did not work for me. Lahiru suggested to use existing jdk8+maven base image which is better idea , what do you think?
On Mon, Jul 6, 2015 at 12:03 PM, Shameera Rathnayaka <[email protected] > wrote: > Hi Pankaj, > > you can use following steps on your Dockerfile to install java. After that > java will be available anywhere and you don't need to set PATH variable , > But you need to set JAVA_HOME variable which is used by airavata start > script. > > > # Install prerequisites > RUN apt-get update > RUN apt-get install -y software-properties-common > > # Install java8 > RUN add-apt-repository -y ppa:webupd8team/java > RUN apt-get update > RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select > true | sudo /usr/bin/debconf-set-selections > RUN apt-get install -y oracle-java8-installer > > # set JAVA_HOME > ENV JAVA_HOME /usr/lib/jvm/java-8-oracle > > > Regards, > Shameera. > > On Mon, Jul 6, 2015 at 11:56 AM Pankaj Saha <[email protected]> wrote: > >> Hi Lahiru, >> >> 1. So you suggest to use the "java8 with maven" as the base image. >> dockerfile/java:oracle-java8 is not based on ubuntu image and also its >> not official image from oracle, can we use still use that? >> >> 2. Do you suggest to put only the executables for airavata inside the >> docker image? Does that mean docker file will copy the local host machine's >> airavata executable files to the docker image through ADD directive? >> So I will build the airavata source code locally through maven and then >> put that inside the container image. >> >> 3. One thing that I could not able to do was changing the properties >> values for different port and server ips when the containers starts. I was >> trying to run a startup shell script which can do the required changes and >> then kick start the airavat-server.sh file. >> problem was airavata-server.properties need apiserver.server.host = >> current running containers ip address. Can you suggest some better way to >> achieve this through shell script. >> >> Thanks >> Pankaj >> >> >> >> On Mon, Jul 6, 2015 at 11:30 AM, Lahiru Ginnaliya Gamathige < >> [email protected]> wrote: >> >>> Hi Pankaj, >>> >>> I had a quick look. I think you can replace all the code to install java >>> and maven if you use this image [1] or at least java-8 image. >>> >>> I think its not necessary to build airavata inside the dockerfile, you >>> can just assume its built in host machine and you just have to put required >>> executables in to the docker image. >>> When you create he image maven and source code it not necessary at all. >>> Docker image should only contain required binaries, source code doesn't >>> have to in the image. >>> >>> [1] >>> https://registry.hub.docker.com/u/jamesdbloom/docker-java8-maven/dockerfile/ >>> >>> On Mon, Jul 6, 2015 at 8:13 AM, Pankaj Saha <[email protected]> >>> wrote: >>> >>>> I am so sorry , I have no intention to hide any docker code.I am >>>> attaching the docker files here.I have never done git check in and trying >>>> to upload files and its not working. I am trying to understand the git pull >>>> request/setting up git directory etc. >>>> >>>> My apology if I unnecessary delayed it. >>>> >>>> >>>> >>>> On Mon, Jul 6, 2015 at 10:51 AM, Suresh Marru <[email protected]> >>>> wrote: >>>> >>>>> Hi Pankaj, >>>>> >>>>> Open source software can never be final. Once the software is final, >>>>> the community is dead, because there is nothing for anyone to do. An >>>>> important aspect for all the GSoC students to embrace is, these are not >>>>> academic projects where you submit the final code. You are supposed to >>>>> commit every few hours of code, you need to do the development in open. We >>>>> have been lenient on this so far, but you have been holding off the docker >>>>> work little too long. Please do commit the docker files in as in >>>>> condition. >>>>> Thats the only way you can engage others, otherwise you will loose >>>>> everyone >>>>> interest. >>>>> >>>>> Suresh >>>>> >>>>> On Mon, Jul 6, 2015 at 10:42 AM, Lahiru Ginnaliya Gamathige < >>>>> [email protected]> wrote: >>>>> >>>>>> Not sure what is the big deal here, Why don't you create a pull >>>>>> request and every one can review it. It doesn't have to be finalized at >>>>>> all. People will comment and you can follow the comments and after >>>>>> multiple >>>>>> reviews we can move ti to the the code base. >>>>>> >>>>>> I propose to create a folder struction like this and put the docker >>>>>> files. >>>>>> >>>>>> airavata/deploy/thrift, airavata/deploy/rabbitmq, >>>>>> airavata/deploy/zookeeper. Create a directory for every image you build >>>>>> with proper naming and add the Dockerfile and other scripts if there's >>>>>> any. >>>>>> >>>>>> Lahiru >>>>>> >>>>>> On Mon, Jul 6, 2015 at 7:03 AM, Pankaj Saha <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> This docker file is not final yet as we have to automate the >>>>>>> environment variable to replace the properties file. >>>>>>> I believe in a hangout session we can walk through and fix this. >>>>>>> >>>>>>> On Mon, Jul 6, 2015 at 9:58 AM, Shameera Rathnayaka < >>>>>>> [email protected]> wrote: >>>>>>> >>>>>>>> Hi Pankaj, >>>>>>>> >>>>>>>> Let't do this via Apache way, upload these files to publicly >>>>>>>> accessible place (as i mentioned in my previous reply) then invite >>>>>>>> everyone >>>>>>>> to review it. >>>>>>>> >>>>>>>> Regards, >>>>>>>> Shameera. >>>>>>>> >>>>>>>> On Mon, Jul 6, 2015 at 9:44 AM Pankaj Saha <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Shameera, >>>>>>>>> Please find the attached Dockerfile for Airavata Server. >>>>>>>>> Please suggest changes. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thu, Jul 2, 2015 at 5:50 PM, Shameera Rathnayaka < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>>> Hi Pankaj, >>>>>>>>>> >>>>>>>>>> Yes please share your works with community. Do you have specific >>>>>>>>>> location to commit your works? If not you can use this location >>>>>>>>>> https://github.com/apache/airavata-sandbox. Let's try to track >>>>>>>>>> the changes with VCS. >>>>>>>>>> >>>>>>>>>> @Suresh do we have specific location for this time gsoc students? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Shameera. >>>>>>>>>> >>>>>>>>>> On Thu, Jul 2, 2015 at 5:24 PM Pankaj Saha <[email protected]> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Shameera >>>>>>>>>>> Yes we can see the containers ip they way you suggested. What I >>>>>>>>>>> mentioned is another way in case you are already inside the >>>>>>>>>>> container. >>>>>>>>>>> >>>>>>>>>>> Regarding java path variable yes we can do that with ENV in >>>>>>>>>>> docker file. It was throwing some errors so i just commented that >>>>>>>>>>> in the >>>>>>>>>>> docker file. >>>>>>>>>>> >>>>>>>>>>> I will send you the docker file in another email then we can go >>>>>>>>>>> through together to improve it. >>>>>>>>>>> >>>>>>>>>>> I was trying mesos today and didnt have time to fix that. We can >>>>>>>>>>> do it later as we are already running late for the mesos >>>>>>>>>>> implementation. >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Pankaj >>>>>>>>>>> On 02-Jul-2015 5:12 PM, "Shameera Rathnayaka" < >>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Pankaj, >>>>>>>>>>>> >>>>>>>>>>>> See my comments inline. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> docker attach server >>>>>>>>>>>>>> >>>>>>>>>>>>> awk 'NR==1 {print $1}' /etc/hosts ---- note the ip address >>>>>>>>>>>>>> of the running container >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> can't we use "docker inspect --format '{{ >>>>>>>>>>>> .NetworkSettings.IPAddress }}' server " to get airavata server >>>>>>>>>>>> docker >>>>>>>>>>>> container ip ? >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> pico airavata-server.properties >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> Replaces the below text as suggested below >>>>>>>>>>>>> apiserver.server.host= *<current containers ip address>* >>>>>>>>>>>>> default.registry.gateway=*default* >>>>>>>>>>>>> rabbitmq.broker.url=amqp://*<rabbit MQ's ip address>*:5672 >>>>>>>>>>>>> save changes. >>>>>>>>>>>>> >>>>>>>>>>>>> pico /etc/bash.bashrc >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> add below lines at the end >>>>>>>>>>>>> >>>>>>>>>>>>> #JAVA_HOME >>>>>>>>>>>>>> JAVA_HOME=/opt/jdk/jdk1.8.0_05 >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> You can improve you docker file to add this variables using ENV >>>>>>>>>>>> command. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> export JAVA_HOME >>>>>>>>>>>>>> PATH=$JAVA_HOME/bin:$PATH >>>>>>>>>>>>>> export PATH >>>>>>>>>>>>> >>>>>>>>>>>>> save changes. >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> How you install java 8?, There is a way to install java on >>>>>>>>>>>> docker which automatically available in PATH variable. You don't >>>>>>>>>>>> have to >>>>>>>>>>>> set it here. It is good if you can show us the Dockerfiles then we >>>>>>>>>>>> can >>>>>>>>>>>> review those files. is it available online ? >>>>>>>>>>>> >>>>>>>>>>>> Thanks, >>>>>>>>>>>> Shameera. >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >>
