Dockerfile 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. ARG gopath_default=/tmp/build-golang
  2. FROM bitnami/minideb-extras:jessie-buildpack as BUILD
  3. ARG gopath_default
  4. ENV GOPATH=$gopath_default
  5. ENV PATH=$GOPATH/bin:/opt/bitnami/go/bin:$PATH
  6. WORKDIR $GOPATH/src/github.com/didi/rdebug
  7. COPY . $GOPATH/src/github.com/didi/rdebug
  8. RUN mkdir -p $GOPATH/bin && bitnami-pkg install go-1.8.3-0 --checksum 557d43c4099bd852c702094b6789293aed678b253b80c34c764010a9449ff136
  9. RUN curl https://glide.sh/get | sh && bitnami-pkg install nginx-1.14.0-0
  10. RUN cd koala-libc && sh build.sh \
  11. && cd ../koala && sh build.sh vendor && sh build.sh && sh build.sh recorder
  12. FROM bitnami/php-fpm:7.1-debian-8 as FPM
  13. ARG gopath_default
  14. ENV PATH=/opt/bitnami/nginx/sbin:/opt/bitnami/php/bin:/opt/bitnami/php/sbin:$PATH
  15. WORKDIR /usr/local/var/koala
  16. COPY ./php/midi /usr/local/var/midi
  17. COPY --from=BUILD /opt/bitnami/nginx/sbin /opt/bitnami/nginx/sbin
  18. COPY --from=BUILD /bitnami/nginx/conf /opt/bitnami/nginx/conf
  19. COPY --from=BUILD $gopath_default/src/github.com/didi/rdebug/output/libs/*.so /usr/local/var/koala/
  20. COPY --from=BUILD $gopath_default/src/github.com/didi/rdebug/output/libs/koala-replayer.so /usr/local/var/midi/res/replayer/
  21. COPY ./composer.json /usr/local/var/midi/composer.json
  22. COPY ./example/php/nginx.conf /opt/bitnami/nginx/conf
  23. COPY ./example/php/index.php /usr/local/var/koala/index.php
  24. COPY ./example/php/1548160113499755925-1158745 /usr/local/var/koala/1548160113499755925-1158745
  25. COPY ./example/php/docker/start.sh /usr/local/var/koala/start.sh
  26. COPY ./example/php/docker/supervisor.conf /usr/local/var/koala/supervisor.conf
  27. RUN install_packages apt-utils git vim curl lsof procps ca-certificates sudo locales supervisor && \
  28. chmod 444 /usr/local/var/koala/*so && \
  29. addgroup nobody && \
  30. sed -i -e 's/\s*Defaults\s*secure_path\s*=/# Defaults secure_path=/' /etc/sudoers && \
  31. echo "nobody ALL=NOPASSWD: ALL" >> /etc/sudoers && \
  32. sed -i \
  33. -e "s/pm = ondemand/pm = static/g" \
  34. -e "s/^listen = 9000/listen = \/usr\/local\/var\/run\/php-fpm.sock/g" \
  35. -e "s/^;clear_env = no$/clear_env = no/" \
  36. /opt/bitnami/php/etc/php-fpm.d/www.conf && \
  37. sed -i \
  38. -e "s/user=daemon/user=nobody/g" \
  39. -e "s/^group=daemon/group=nobody/g" \
  40. -e "s/listen.owner=daemon/listen.owner=nobody/g" \
  41. -e "s/listen.group=daemon/listen.group=nobody/g" \
  42. /opt/bitnami/php/etc/common.conf
  43. EXPOSE 9111
  44. CMD ["./start.sh"]