Dockerfile 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. FROM debian:9
  2. EXPOSE 8000
  3. ## install app
  4. RUN apt-get update && apt-get install -yq wget apt-transport-https lsb-release ca-certificates software-properties-common gnupg2 curl iputils-ping
  5. RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
  6. RUN sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
  7. RUN apt-get update && apt-get install -yq python python-pip git vim tmux zip build-essential php7.1 iptables xz-utils php7.1-mbstring php7.1-gmp
  8. # mysql-client php7.1 php7.1-mysql php7.1-curl php7.1-xml php7.1-zip php7.1-bcmath php7.1-mbstring php7.1-dom php7.1-amqp php7.1-soap php7.1-snmp
  9. ## install composer
  10. RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  11. RUN php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  12. RUN php composer-setup.php --install-dir=/usr/local/bin --filename=composer
  13. RUN php -r "unlink('composer-setup.php');"
  14. ## install docker-composer
  15. #RUN curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
  16. #RUN chmod +x /usr/local/bin/docker-compose
  17. RUN pip install --upgrade pip
  18. RUN pip install docker-compose
  19. ## install ansible
  20. RUN echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main" | tee /etc/apt/sources.list.d/ansible.list
  21. RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
  22. RUN apt-get update && apt-get install -yq ansible
  23. ## install docker
  24. RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable"
  25. RUN apt-get update && apt-get install -yq --allow-unauthenticated docker-ce
  26. ## add keys ssh from hosts
  27. RUN mkdir ~/.ssh
  28. RUN ssh-keyscan -H -p 22 bitbucket.org >> ~/.ssh/known_hosts
  29. ## add key to container
  30. COPY keys /opt/keys
  31. RUN chmod 0600 /opt/keys/*
  32. ## contains file to execute
  33. #RUN mkdir /opt/installation
  34. #RUN chmod -R 777 /opt/installation
  35. #ADD . /opt/installation
  36. #WORKDIR /opt/installation
  37. ARG DIR_INSTALL
  38. RUN mkdir -p $DIR_INSTALL
  39. RUN chmod -R 777 $DIR_INSTALL
  40. ADD . $DIR_INSTALL
  41. WORKDIR $DIR_INSTALL
  42. RUN cd $DIR_INSTALL ; composer install -n
  43. ENV DOCKER_HOST unix:///tmp/docker.sock
  44. ENTRYPOINT ["./execute.sh"]