Hi Pankaj,

Are you using 0.15 branch of master for this?

Suresh

On Thu, Jul 23, 2015 at 2:56 PM Pankaj Saha <[email protected]> wrote:

> Thanks Shameera. Now the open issue is the dependency on JAVA_HOME, if we
> can remove that then we are done with server docker.
>
> Hi Suresh,
> I remember in last GSoC meeting you said you know how to remove the
> dependencies on JAVA_HOME. Can you please let us know the way out then we
> can give a try on local builds.
>
> Thanks
> Pankaj
>
>
> On Thu, Jul 23, 2015 at 2:10 PM, Shameera Rathnayaka <
> [email protected]> wrote:
>
>> Hi Pankaj,
>>
>> Ok then let's continue with your approach.
>>
>> Thanks,
>> Shameera.
>>
>> On Thu, Jul 23, 2015 at 1:15 PM Pankaj Saha <[email protected]>
>> wrote:
>>
>>> Hi Shameera,
>>>
>>> Here is an issue with the env variables.
>>> First time when we create a docker container we will pass the rabbitmq
>>> host ip as env variable in the run command.
>>>
>>>
>>>> docker run -i -d --name test --env RABBITMQ=172.0.23.15 -t server:test
>>>
>>>
>>> But after stopping the container if we restart the container again then
>>> that env variable will no longer be there (as we can not pass env variable
>>> in the start command), which will cause a failure.
>>>
>>> docker start test
>>>
>>>
>>> I have tested with an example, this is a problem. I think the script
>>> approach is fine as it writes the rabbitmq host ip in the properties file
>>> so need not to rely on env variable next time onward.
>>> what do you think?
>>>
>>> Thanks
>>> Pankaj
>>>
>>>
>>>
>>> On Thu, Jul 23, 2015 at 11:47 AM, Shameera Rathnayaka <
>>> [email protected]> wrote:
>>>
>>>> Hi Pankaj,
>>>>
>>>>
>>>> On Thu, Jul 23, 2015 at 11:36 AM Pankaj Saha <[email protected]>
>>>> wrote:
>>>>
>>>>> Yes my startup script reading the ip of the container and on startup
>>>>> and  its replacing the properties file's value.
>>>>>
>>>>> What I am asking is how this can be achieved by system properties (as
>>>>> you suggested earlier ) without manipulating the properties file?
>>>>> Do you suggest to set that as env variable on start up and then this
>>>>> env variable can be auto replaced in the airavata-server properties file? 
>>>>> I
>>>>> don't know how I can achieve that replacement.
>>>>>
>>>>
>>>> Yes setting with ENV should work . e.g.:  ENV rabbitmq.broker.url <url>
>>>>
>>>>
>>>>> On Thu, Jul 23, 2015 at 10:50 AM, Shameera Rathnayaka <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> For this we can use entry point or startup script which set
>>>>>> apiserve.server.host=<docker-ip> system property. You can read docker-ip 
>>>>>> at
>>>>>> startup, you already do this in startup script isn't it?.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Jul 23, 2015 at 10:28 AM Pankaj Saha <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi Shameera,
>>>>>>> Ok if this is the case then we are okay. For rabbitmq host ip this
>>>>>>> will work then.
>>>>>>> but problem with a*piserver.server.host=localhost* will still
>>>>>>> exist. Every time we start a container this will change and we can not 
>>>>>>> pass
>>>>>>> this ass env variables as we don't know the ip of a container until it
>>>>>>> starts.
>>>>>>>
>>>>>>> please suggest if you have any way out to this problem.
>>>>>>>
>>>>>>> Thanks
>>>>>>> Pankaj
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Jul 22, 2015 at 10:44 PM, Shameera Rathnayaka <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Pankaj,
>>>>>>>>
>>>>>>>> If you pass environment variable then you don't want to edit
>>>>>>>> property file. Airavata give priority to system property then 
>>>>>>>> properties
>>>>>>>> from airavata-server.properties file. Hence you don't need to edit
>>>>>>>> properties file.
>>>>>>>>
>>>>>>>> ~Shameera.
>>>>>>>>
>>>>>>>> On Wed, Jul 22, 2015 at 9:40 PM Pankaj Saha <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hey Shameera
>>>>>>>>> Can you please explain with an example, I am not able to get what
>>>>>>>>> you are trying to say about system properties. What I have suggested 
>>>>>>>>> here
>>>>>>>>> needs env variables to be passed as parameters while running the
>>>>>>>>> containers. Start up script will set these properties before running 
>>>>>>>>> the
>>>>>>>>> airavata server.
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Pankaj
>>>>>>>>> On 22-Jul-2015 9:34 PM, "Shameera Rathnayaka" <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Pankaj,
>>>>>>>>>>
>>>>>>>>>> did you try parsing those values as system properties when you
>>>>>>>>>> start docker images? It should work. Then you can add those system
>>>>>>>>>> properties from startup script instead of manipulating property file.
>>>>>>>>>>
>>>>>>>>>> On Wed, Jul 22, 2015 at 6:15 PM Pankaj Saha <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> I am planning to add a shell script(startup.sh) along with
>>>>>>>>>>> Dockerfile in the source, so that it make required changes and then 
>>>>>>>>>>> start
>>>>>>>>>>> the airavata server. This will resolve the issues 2,3,4.
>>>>>>>>>>> like:  CMD bash -C './startup.sh';'bash'
>>>>>>>>>>> ​
>>>>>>>>>>>  startup.sh
>>>>>>>>>>> <https://drive.google.com/a/binghamton.edu/file/d/0ByuFJ2KDIjkiaWk4RVZ4cFl6UXM/view?usp=drive_web>
>>>>>>>>>>> ​
>>>>>>>>>>> For JAVA_HOME dependencies, I remember Suresh knows some changes
>>>>>>>>>>> which can resolve this issue (as he told in previous GSoC meeting).
>>>>>>>>>>>
>>>>>>>>>>> Thanks
>>>>>>>>>>> Pankaj
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jul 22, 2015 at 12:00 PM, Pankaj Saha <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> adding one more item in the list
>>>>>>>>>>>> 4. Dockerfile should copy the content of airavata server after
>>>>>>>>>>>> maven build is completed. It will only copy the class files and 
>>>>>>>>>>>> executable
>>>>>>>>>>>> files no source code is required in the docker image.
>>>>>>>>>>>> Now for each branch, maven is creating zip folder with the
>>>>>>>>>>>> branch id like apache-airavata-server-*0.15*-SNAPSHOT. To
>>>>>>>>>>>> automate the docker image creation we have to provide some common 
>>>>>>>>>>>> name,
>>>>>>>>>>>> otherwise user have to modify dockerfile every time for different 
>>>>>>>>>>>> branches.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jul 22, 2015 at 11:47 AM, Pankaj Saha <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hello Devs,
>>>>>>>>>>>>>
>>>>>>>>>>>>> Here are few open items that we need to fix before we allow
>>>>>>>>>>>>> Dockerfile to be part of  airavata source tree.
>>>>>>>>>>>>>
>>>>>>>>>>>>> 1. airavata-server.sh still has dependency on JAVA_HOME env
>>>>>>>>>>>>> variable. Which we have to change manually after creating docker 
>>>>>>>>>>>>> container.
>>>>>>>>>>>>>
>>>>>>>>>>>>> 2. airavata-server.properties file needs to be modified with
>>>>>>>>>>>>> host address of rabbitmq. Are we planning to pass them as an env 
>>>>>>>>>>>>> variable
>>>>>>>>>>>>> while running the docker? Then we need to change the properties 
>>>>>>>>>>>>> file such
>>>>>>>>>>>>> that it can identify the env variable and replace it.
>>>>>>>>>>>>>
>>>>>>>>>>>>> 3. apiserver.server.host=localhost needs to be changed to the
>>>>>>>>>>>>> apiserver.server.host=container ip. Container ip will the ip 
>>>>>>>>>>>>> address of the
>>>>>>>>>>>>> running container. Which can be fetched by "wk 'NR==1 {print $1}'
>>>>>>>>>>>>> /etc/hosts" command. We need to plan how we are going to feed 
>>>>>>>>>>>>> these values
>>>>>>>>>>>>> to the properties file without manual changes.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>> Pankaj
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>> Shameera Rathnayaka
>>>>>>>>>>
>>>>>>>>> --
>>>>>>>> Shameera Rathnayaka
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>> Shameera Rathnayaka
>>>>>>
>>>>>
>>>>> --
>>>> Shameera Rathnayaka
>>>>
>>>
>>> --
>> Shameera Rathnayaka
>>
>
>

Reply via email to