Advertisement
Guest User

Untitled

a guest
Aug 4th, 2019
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.08 KB | None | 0 0
  1. FROM docker:stable-dind
  2.  
  3. ARG user=jenkins
  4. ARG group=jenkins
  5. ARG uid=1001
  6. ARG gid=1001
  7. ARG JENKINS_AGENT_HOME=/home/${user}
  8.  
  9. ENV JENKINS_AGENT_HOME ${JENKINS_AGENT_HOME}
  10. ENV LANG=C.UTF-8 \
  11. JAVA_HOME=/usr/lib/jvm/java-1.8-openjdk \
  12. PATH="$PATH:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin"
  13.  
  14. RUN addgroup -g ${gid} ${group} \
  15. && adduser -D -h "${JENKINS_AGENT_HOME}" -u "${uid}" -G "${group}" -s /bin/bash "${user}" \
  16. && passwd -u jenkins
  17.  
  18. # setup SSH server
  19. RUN apk update \
  20. && apk add --no-cache sudo bash openssh git curl openjdk8-jre wget gcc jq musl-dev openssl go
  21. RUN sed -i /etc/ssh/sshd_config \
  22. -e 's/#PermitRootLogin.*/PermitRootLogin no/' \
  23. -e 's/#RSAAuthentication.*/RSAAuthentication yes/' \
  24. -e 's/#PasswordAuthentication.*/PasswordAuthentication no/' \
  25. -e 's/#SyslogFacility.*/SyslogFacility AUTH/' \
  26. -e 's/#LogLevel.*/LogLevel INFO/' \
  27. && mkdir /var/run/sshd \
  28. && echo "%${user} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
  29.  
  30. # Install Sonar scanner.
  31. RUN curl -s -L https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.3.0.1492.zip -o sonarscanner.zip \
  32. && unzip -qq sonarscanner.zip \
  33. && rm -rf sonarscanner.zip \
  34. && mv sonar-scanner-3.3.0.1492 /bin/sonar-scanner
  35. COPY sonar-scanner.properties /bin/sonar-scanner/conf/sonar-scanner.properties
  36.  
  37. #Update credential for Jenkins user
  38. RUN delgroup ping \
  39. && addgroup -g 999 docker \
  40. && addgroup jenkins docker \
  41. && ln -s /usr/local/bin/docker /usr/bin/docker \
  42. && mkdir -p /home/jenkins/.ssh \
  43. && chmod -R 777 /usr/local/bin \
  44. && echo -e "# Java\nJAVA_HOME=${JAVA_HOME}\nPATH=\$PATH:\$JAVA_HOME\nexport JAVA_HOME PATH\n" > /etc/profile.d/java.sh
  45.  
  46. COPY --chown=jenkins:jenkins config /home/jenkins/.ssh/
  47.  
  48. ENV GOPATH /opt/go
  49. ENV PATH $PATH:$GOPATH/bin
  50.  
  51. USER jenkins
  52.  
  53. WORKDIR "${JENKINS_AGENT_HOME}"
  54.  
  55. USER root
  56.  
  57. VOLUME "${JENKINS_AGENT_HOME}" "/tmp" "/run" "/var/run"
  58.  
  59. COPY setup /usr/local/bin/setup
  60.  
  61. EXPOSE 22
  62.  
  63. # This one is for running in Jenkins
  64. ENTRYPOINT ["setup"]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement