Return-Path: X-Original-To: apmail-airavata-dev-archive@www.apache.org Delivered-To: apmail-airavata-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 3A59F18500 for ; Wed, 22 Jul 2015 16:47:55 +0000 (UTC) Received: (qmail 90432 invoked by uid 500); 22 Jul 2015 16:47:55 -0000 Delivered-To: apmail-airavata-dev-archive@airavata.apache.org Received: (qmail 90381 invoked by uid 500); 22 Jul 2015 16:47:55 -0000 Mailing-List: contact dev-help@airavata.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@airavata.apache.org Delivered-To: mailing list dev@airavata.apache.org Received: (qmail 90357 invoked by uid 99); 22 Jul 2015 16:47:54 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Jul 2015 16:47:54 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 57400C0BAD for ; Wed, 22 Jul 2015 16:47:54 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.001 X-Spam-Level: *** X-Spam-Status: No, score=3.001 tagged_above=-999 required=6.31 tests=[HTML_MESSAGE=3, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id VeBubRqhusEK for ; Wed, 22 Jul 2015 16:47:43 +0000 (UTC) Received: from mail-ob0-f171.google.com (mail-ob0-f171.google.com [209.85.214.171]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with ESMTPS id 4A14043E2E for ; Wed, 22 Jul 2015 16:47:43 +0000 (UTC) Received: by obdeg2 with SMTP id eg2so41901758obd.0 for ; Wed, 22 Jul 2015 09:46:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=FmkTJsnOeTGNyi/wdIhh+QydUJxBzl7uq/t3Nh9nrtU=; b=FtyBsOY+1/hgqwNICjZ1Vlq+lgeu5qZZ6W+PSoiRfnZY9adFlxNwJVZorXLDjO7Vxq RgNmY7gxwWRQd7C7dntbIidJtplH3selKadrTqiQjfVqoKfhjJeeFwJsRqp9k6Wcbtbr 0p4hPEfGUkwc4+INNraKbaxef/4itabl3PnSE4jNngLiPr0iME7owoIi6fKaBXJGcKBI QZbYLf2QMQjxfvTVWYFPd4C1Mv7tEGHuVL0AxEEZSQCbc4ICzDkvcmGmGGGcdrPlaDqc 9lS3WPdpav2SQ8C4qrxzoRjGw/8WwHbwQODGLmf1E7CAm4EHIgktVA2iqIAB8PGw1hUt KJpA== X-Gm-Message-State: ALoCoQmtAKWrai5BXZq+2A6N/PLRswtPZ8iERpPg7Zn491QOu2SOEk/zPiCswTm4CX9pzHAWPn2T MIME-Version: 1.0 X-Received: by 10.202.199.75 with SMTP id x72mr3475976oif.121.1437583617774; Wed, 22 Jul 2015 09:46:57 -0700 (PDT) Received: by 10.202.89.84 with HTTP; Wed, 22 Jul 2015 09:46:57 -0700 (PDT) In-Reply-To: References: Date: Wed, 22 Jul 2015 12:46:57 -0400 Message-ID: Subject: Re: review - docker pga From: Pankaj Saha To: dev Content-Type: multipart/alternative; boundary=001a1134f0a4df6a44051b798470 --001a1134f0a4df6a44051b798470 Content-Type: text/plain; charset=UTF-8 Hi Shameera, Here is a bit of confusion. The approach should be: when used down load the airavata source code, he will get a Dockerfile(not image) with it. He can build his own docker image out of it. He can make changes to source code of airavata php gateway and make docker image out of it. So we have to keep a Docker file that way. If user really want to use official airavata PGA image, then he needs not to build it locally he can directly download (for different release versions) images, from dockerhub repository. I think Lahiru suggested me this approach long before, when I was not very much aware of that docker build. Thanks Pankaj On Wed, Jul 22, 2015 at 12:19 PM, Shameera Rathnayaka < shameerainfo@gmail.com> wrote: > Hi Pankaj, > > There are two types of docker images, > 1. Released airavata docker images - Here we will directly download binary > from one of apache mirror extract it and use. e.g.: after 0.15 release we > will have a docker images apache/airavata-:0.15 . Released > Dockerfiles are final, we won't change anything of that file. We can > release these docker images and files with our release process. And add a > link from docker registry. e.g.: see the ubuntu docker registry > > 2. latest docker image: This is an image of master code. latest > Dockerfile will download master branch and build it and start server. This > is the one we keep in our airavata master git branch. > > On Wed, Jul 22, 2015 at 11:29 AM Pankaj Saha > wrote: > >> we should not copy this from github. >> Reason is user can have his local version of code and after making >> changes he may wish to create a docker for his source code. >> > > Whole point of releasing docker images is to make user life easier. Hence > we assume user don't need to edit docker file. or source. if user need to > create his/her own docker image then user can edit the original docker file > and build it. > > >> Dockerfile should stay in the root of the airavata-php-gateway source >> code. If we download it from git for different version then user has to >> change the Dockerfile every time, which is not expected. >> > > We will release docker images for all released versions, so user need to > use those files. > > >> >> What ever the local copy that user have, Docker file should be able to >> create a docker image out of that. >> > > If we really wan't this, then let's make an new docker file which do this > instead the official latest or released docker files. > > Regards, > Shameera. > >> >> Thanks >> Pankaj >> >> >> >> On Wed, Jul 22, 2015 at 11:21 AM, Shameera Rathnayaka < >> shameerainfo@gmail.com> wrote: >> >>> When ever it is possible, we should reduce number of docker command >>> lines as it create a new layer. in that case not only RUNS we can reduce >>> WORKDIR too by using cd in following line. >>> >>> Is there any special reason you didn't get this from github? if you do >>> that then docker file it self explain which version of pga is using it. >>> >>> >>> On Wed, Jul 22, 2015 at 10:54 AM Pankaj Saha >>> wrote: >>> >>>> Hi Shameera, >>>> >>>> I think it always good create minimum layers with docker images >>>> do you mean concatenating multiple RUN statements together? >>>> >>>> "COPY ./ /var/www/airavata-php-gateway" >>>> is copying the content of the php gateway( >>>> /var/www/airavata-php-gateway) from local host system to the docker >>>> image. >>>> >>>> MAINTAINER to "Apache Airavata Community" >>>> Yes I will change it to appropriate. >>>> >>>> Other docker file is also available here attached (this is also >>>> uploaded to pankajsaha/dockerfiles git registry) >>>> >>>> Thanks >>>> pankaj >>>> >>>> On Wed, Jul 22, 2015 at 10:24 AM, Shameera Rathnayaka < >>>> shameerainfo@gmail.com> wrote: >>>> >>>>> Hi Pankaj, >>>>> >>>>> I think it always good create minimum layers with docker images, >>>>> because it is required to download large number of layers when you push >>>>> this to registry. base on that I would suggest to create one layer for all >>>>> prerequisites and one layer for all php extensions. e.g.: RUN apt-get >>>>> install -y apache2 php5 >>>>> >>>>> What are the things you copy here "COPY ./ >>>>> /var/www/airavata-php-gateway" ? >>>>> #--------- modifying the 000default file section without copy >>>>> command, can be reduced to one layer. >>>>> >>>>> If you going to contribute this to Apache, you may need to change >>>>> MAINTAINER to "Apache Airavata Community" >>>>> >>>>> BTW what about other docker files? >>>>> >>>>> Thanks, >>>>> Shameera >>>>> >>>>> On Tue, Jul 21, 2015 at 12:21 PM Pankaj Saha >>>>> wrote: >>>>> >>>>>> Hi Lahiru/shameera, >>>>>> >>>>>> Can you please once again review the docker file for airavata pga and >>>>>> send your comments.They are available at github: >>>>>> https://github.com/pankajsaha/dockerfiles. Dockerfile should be >>>>>> present at the root of the airavata-php-gateway source tree structure. >>>>>> >>>>>> also you can see it here at attachment. >>>>>> >>>>>> Thanks >>>>>> Pankaj >>>>>> >>>>>> >>>>>> -- >>>>> Shameera Rathnayaka >>>>> >>>> >>>> -- >>> Shameera Rathnayaka >>> >> >> -- > Shameera Rathnayaka > --001a1134f0a4df6a44051b798470 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Shameera,

Here is a bit of confusion= .
The approach should be: when used down load the airavata source= code, he will get a Dockerfile(not image) with it. He can build his own do= cker image out of it. He can make changes to source code of airavata php ga= teway and make docker image out of it. So we have to keep a Docker file tha= t way.=C2=A0

If user really want to use official a= iravata PGA image, then he needs not to build it locally he can directly do= wnload (for different release versions) images, from dockerhub repository.<= /div>

I think Lahiru suggested me this approach long bef= ore, when I was not very much aware of that docker build.

Thanks
Pankaj




=C2=A0

On Wed, Jul 22, 2015 at 12:19 PM= , Shameera Rathnayaka <shameerainfo@gmail.com> wrote:
Hi Pankaj,=C2=A0

=
There are two types of docker images,
1. Released aira= vata docker images - Here we will directly download binary from one of apac= he mirror extract it and use. e.g.: after 0.15 release we will have a docke= r images apache/airavata-<component>:0.15 . Released Dockerfiles are = final, we won't change anything of that file. We can release these dock= er images and files with our release process. And add a link from docker re= gistry. e.g.: see the ubuntu docker registry=C2=A0
2. latest doc= ker image: =C2=A0This is an image of master code. latest Dockerfile will do= wnload master branch and build it and start server. This is the one we keep= in our airavata master git branch.=C2=A0

<= div dir=3D"ltr">
On Wed, Jul 22, 2015 at 11:29 AM Pankaj Saha <psaha4@binghamton.edu> wrote:
=
we should not copy th= is from github.=C2=A0
Reason is user can have his local version of code= and after making changes he may wish to create a docker for his source cod= e.

Whole point of relea= sing docker images is to make user life easier. Hence we assume user don= 9;t need to edit docker file. or source. if user need to create his/her own= docker image then user can edit the original docker file and build it.=C2= =A0
=C2=A0
<= div dir=3D"ltr">
Dockerfile should stay in the root of the airavata-php= -gateway source code. If we download it from git for different version then= user has to change the Dockerfile every time, which is not expected.
=

We will release docker images= for all released versions, so user need to use those files.=C2=A0
=C2=A0

What ever the local copy that user have, Docker fil= e should be able to create a docker image out of that.

If we really wan't this, then let's = make an new docker file which do this instead the official latest or releas= ed docker files. =C2=A0

Regards,=C2=A0
S= hameera.

Thanks
Panka= j=C2=A0



On Wed, Jul 22, 2015 at 11:21 AM, Shame= era Rathnayaka <shameerainfo@gmail.com> wrote:
When ever it is possible, w= e should reduce number of docker command lines as it create a new layer. in= that case not only RUNS =C2=A0we can reduce WORKDIR too by using cd in fol= lowing line.=C2=A0

Is there any special reason you didn= 't get this from github? if you do that then docker file it self explai= n which version of pga is using it.=C2=A0

On Wed, Jul 22, 2015 at 10:54 = AM Pankaj Saha <psaha4@binghamton.edu> wrote:
Hi Shameera,

I think it always=C2=A0good create minimum layers with docker = images
do you mean concatenating multiple= RUN statements together?

=C2=A0"COPY ./ /var/www/airavata-php-gate= way&quo= t;=C2=A0
=C2=A0is copying the content of the php= gateway(/var/www/aira= vata-php-gateway) from local host system to the docker image.
<= /div>

MAINTAINER to "Apache A= iravata Community"=C2=A0
Yes I will change it to appropriate.

Other docker file is also available h= ere attached (this is also uploaded to pankajsaha/dockerfiles git registry)=

Thanks
pankaj

On Wed, Jul 22, = 2015 at 10:24 AM, Shameera Rathnayaka <shameerainfo@gmail.com>= wrote:
Hi Pankaj= ,=C2=A0

I think it always good create minimum layers wit= h docker images, because it is required to download large number of layers = when you push this to registry. base on that I would suggest to create one = layer for all prerequisites and one layer for all php extensions. e.g.: RUN= apt-get install -y apache2 php5

What are the thin= gs you copy here "COPY ./ /var/www/airavata-php-gateway<= span style=3D"line-height:1.5">" =C2=A0?
=C2=A0#--------- modifying the 000defaul= t file=C2=A0 =C2=A0section without c= opy command, can be reduced to one layer.

If yo= u going to contribute this to Apache, you may need to change MAINTAINER to = "Apache Airavata Community"=C2=A0

BTW what about other docker files?

Thanks,
<= div>Shameera

On Tue, Jul 21, 2015 at 12:21 PM Pankaj Saha <psaha4@binghamton.edu> wro= te:
Hi Lahiru/sham= eera,

Can you please once again review the docker file for air= avata pga and send your comments.They are available at github: =C2=A0https://g= ithub.com/pankajsaha/dockerfiles. Dockerfile should be present at the r= oot of the airavata-php-gateway source tree structure.

=
also you can see it here at attachment.

Thank= s
Pankaj


--
Shameera Rathna= yaka

--
Shameera Rathnayaka

--
Shameera Rath= nayaka

--001a1134f0a4df6a44051b798470--