Hey Lahiru, Thanks for reviewing my script and for your comments. It is not that I have not think about making a shell script instead of writing all the RUN commands in Dockerfile, but I think if we want to create a docker image/container i has to be in docker( that's what I do understand).
can you explain your comment where you said : *Why are you doing git clone inside the docker file ?* Also if you can put little more description about how writing the shell script create a new image and always create the docker image with the name of the revision(git describe --tags) will help. I am little confused. If you please clarify the idea then I can try that way. Thanks for your cooperation. Thanks Pankaj On Tue, Jun 16, 2015 at 7:34 PM, Lahiru Ginnaliya Gamathige < [email protected]> wrote: > Based on my quick look at the Dockerfile please find the comments below. > > Why are you doing git clone inside the docker file ? I believe this should > be in the repo itself and you are already in the source tree. > > I think this should support the development environment and should be > integrated seamlessly with the dev environment. > > How about writing a shell script to run whenever you do a change you run > that script and it will create a new image and always create the docker > image with the name of the revision(git describe --tags). > > You should not store data inside the docker container it should be mounted > from the host environment. > > > > On Tue, Jun 16, 2015 at 4:16 PM, Pankaj Saha <[email protected]> > wrote: > >> Hello Devs, >> >> I am trying to writing a docker script which can create a docker image >> based on Ubuntu where airavata (0.15 branch) PGA will be installed and all >> related required supporting software will stay installed. >> >> My Dockerfile looks like this: >> >> ------------------------------------------------------------------------------------------------------------------------------ >> #---------- set the base image to Ubuntu >> FROM ubuntu >> >> #---------- file Author / Maintainer >> MAINTAINER GSoC Pankaj Saha >> >> #---------- update the repository sources list >> RUN apt-get update >> >> #---------- setting the work directory as users home >> WORKDIR ~/ >> >> #---------- installing prerequisites for PGA gateway >> RUN apt-get install apache2 -y >> RUN sudo apt-get install php5 -y >> >> #---------- installing necessary php extensions >> RUN apt-get install unzip -y >> RUN apt-get install curl -y >> RUN apt-get install openssl -y >> RUN apt-get install php5-mcrypt -y >> >> #--------- installing composer >> RUN curl -sS https://getcomposer.org/installer | php >> RUN mv composer.phar /usr/local/bin/composer >> >> #--------- activate mod_rewrite >> RUN a2enmod rewrite >> RUN service apache2 restart >> >> #--------- modifying the 000default file >> #ADD /etc/apache2/sites-available/000-default.conf >> /etc/apache2/sites-available/ >> WORKDIR /etc/apache2/sites-available/ >> RUN sed -i 's/<\/VirtualHost>/<Directory "\/var\/www"> \n AllowOverride >> All \n <\/Directory> \n <\/VirtualHost>/g' 000-defau$ >> WORKDIR ~/ >> >> #--------- installing git >> RUN apt-get install git -y >> >> #--------- downloading airavata PGA >> >> RUN git clone https://github.com/apache/airavata-php-gateway.git >> /var/www/airavata-php-gateway >> WORKDIR /var/www/airavata-php-gateway >> RUN git checkout airavata-php-gateway-0.15-release >> WORKDIR ~/ >> #--------- making storage folder writable >> RUN chmod -R 777 /var/www/airavata-php-gateway/app/storage >> >> ----------------------------------------------------------------------------------------------------------------------------------- >> >> PGA web server should stay alive on default 80 port . Now from the image, >> that my Dockerfile is creating, I am creating a running container. I am >> facing trouble to check whether my host is able to listen from the default >> 80 port of the docker container. I am trying to figure it out, but if >> anyone has previous experience on this please guide me. >> >> Thanks >> Pankaj >> >> >> >> >> >> >> >> >
