Dockerfile 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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. ADD composer.sh /opt/composer.sh
  11. RUN chmod +x /opt/composer.sh ; ./opt/composer.sh
  12. ## install docker-composer
  13. #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
  14. #RUN chmod +x /usr/local/bin/docker-compose
  15. RUN pip install --upgrade pip
  16. RUN pip install docker-compose==1.22
  17. ## install ansible
  18. RUN echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main" | tee /etc/apt/sources.list.d/ansible.list
  19. RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
  20. RUN apt-get update && apt-get install -yq ansible
  21. ## install docker
  22. RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") $(lsb_release -cs) stable"
  23. RUN apt-get update && apt-get install -yq --allow-unauthenticated docker-ce
  24. ## add keys ssh from hosts
  25. RUN mkdir ~/.ssh
  26. RUN ssh-keyscan -H -p 22 bitbucket.org >> ~/.ssh/known_hosts
  27. RUN ssh-keyscan -H -p 222 infra.flowdat.com >> ~/.ssh/known_hosts
  28. ## add key to container
  29. COPY keys /opt/keys
  30. RUN chmod 0600 /opt/keys/*
  31. ARG DIR_INSTALL
  32. RUN mkdir -p $DIR_INSTALL
  33. RUN chmod -R 777 $DIR_INSTALL
  34. ADD . $DIR_INSTALL
  35. WORKDIR $DIR_INSTALL
  36. RUN cd $DIR_INSTALL ; eval $(ssh-agent); ssh-add /opt/keys/bitbucket.id_rsa; composer install -n
  37. ENV DOCKER_HOST unix:///tmp/docker.sock
  38. ENTRYPOINT ["./execute.sh"]