Advertisement
Guest User

Untitled

a guest
Aug 6th, 2017
454
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.67 KB | None | 0 0
  1. FROM ubuntu:16.04
  2. MAINTAINER Rogger Barsanulfo Fernandes <roggerfernandes@softbox.com.br>
  3.  
  4. USER root
  5.  
  6. #variaveis usadas dentro deste arquivo
  7. ARG DEBIAN_FRONTED=noninteractive
  8. ARG GITUSERNAME=roggerfernandes
  9. ARG GITPASSWORD=soft%123
  10. ARG GRADLEVERSION=3.3
  11. ARG WILDFLYVERSION=8.1.0
  12. ARG MYSQLVERSION=5.6
  13. ARG POSTGRESQLVERSION=9.4
  14. ARG POSTGRESQLMODULEVERSION=9.4.1212
  15. ARG MYSQL_ROOT_PASSWORD=soft@123
  16.  
  17. #variaveis de ambientes dentro do docker para usar no bash_aliases
  18. ENV WILDFLYVERSION 8.1.0
  19. ENV PROJETO GPC
  20. #instalacoes utilitarios ----------------------------------------------------
  21. RUN rm /bin/sh && ln -s /bin/bash /bin/sh
  22.  
  23. RUN apt-get update && apt-get install -y \
  24. vim \
  25. dialog \
  26. wget \
  27. curl \
  28. unzip \
  29. toilet \
  30. xvfb \
  31. links \
  32. build-essential \
  33. libssl-dev \
  34. ssh \
  35. locales \
  36. sudo
  37.  
  38. ARG ID_GITLAB
  39. RUN useradd -u $ID_GITLAB -ms /bin/bash gitlab-runner
  40. RUN passwd -d gitlab-runner
  41. RUN adduser gitlab-runner sudo
  42. #RUN echo "gitlab-runner ALL=NOPASSWD: ALL" >> /etc/sudoers
  43. RUN echo "ALL ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
  44. RUN echo "%sudo ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
  45.  
  46. #Alterar Locates do container -----------------------------------------------
  47. RUN locale-gen pt_BR.UTF-8
  48. ENV LANG pt_BR.UTF-8
  49. ENV LC_ALL pt_BR.UTF-8
  50.  
  51. #Instalar wildfly Final -----------------------------------------------
  52. WORKDIR /opt
  53. RUN adduser --no-create-home --disabled-password --disabled-login wildfly \
  54. && wget http://download.jboss.org/wildfly/${WILDFLYVERSION}.Final/wildfly-${WILDFLYVERSION}.Final.tar.gz \
  55. && tar -xzvf wildfly-${WILDFLYVERSION}.Final.tar.gz \
  56. && ln -s wildfly-${WILDFLYVERSION}.Final wildfly \
  57. && chown -R wildfly.wildfly wildfly \
  58. && chown -R wildfly.wildfly wildfly-${WILDFLYVERSION}.Final \
  59. && rm -rf wildfly-${WILDFLYVERSION}.Final.tar.gz
  60.  
  61. #Configurar wildfly.conf ----------------------------------------------------
  62. RUN echo 'JBOSS_HOME="/opt/wildfly"' >> /opt/wildfly/wildfly.conf
  63. RUN echo 'JBOSS_USER=wildfly' >> /opt/wildfly/wildfly.conf
  64. RUN echo 'JBOSS_MODE=standalone' >> /opt/wildfly/wildfly.conf
  65. RUN echo 'JBOSS_CONFIG=standalone.xml' >> /opt/wildfly/wildfly.conf
  66. RUN echo 'STARTUP_WAIT=120' >> /opt/wildfly/wildfly.conf
  67. RUN echo 'SHUTDOWN_WAIT=120' >> /opt/wildfly/wildfly.conf
  68. RUN echo 'JBOSS_CONSOLE_LOG="/var/log/wildfly/console.log"' >> /opt/wildfly/wildfly.conf
  69.  
  70. RUN ln -s /opt/wildfly/bin/init.d/wildfly.conf /etc/default/wildfly
  71. RUN ln -s /opt/wildfly/bin/init.d/wildfly-init-debian.sh /etc/init.d/wildfly
  72.  
  73. # Standalone xml
  74. COPY ./files/standalone.xml /opt/wildfly/standalone/configuration/standalone.xml
  75.  
  76. # Diretorios drivers
  77. RUN mkdir -p /opt/wildfly/standalone/modules/com/mysql/main
  78. RUN mkdir -p /opt/wildfly/standalone/modules/org/postgres/main
  79.  
  80. # Drivers e modules
  81. COPY ./files/module_mysql.xml /opt/wildfly/modules/com/mysql/main/module.xml
  82. COPY ./files/module_postgresql.xml /opt/wildfly/modules/org/postgres/main/module.xml
  83. COPY ./files/mysql-connector-java-5.1.17-bin.jar /opt/wildfly/modules/com/mysql/main/mysql-connector-java-5.1.17-bin.jar
  84. COPY ./files/postgresql-9.4-1201.jdbc41.jar /opt/wildfly/modules/org/postgres/main/postgresql-9.4-1201.jdbc41.jar
  85.  
  86. #Configurar wildfly start on reboot ----------------------------------------
  87. WORKDIR /etc/init.d
  88. RUN update-rc.d wildfly defaults
  89.  
  90. RUN apt-get update && apt-get install -y \
  91. python-software-properties \
  92. software-properties-common
  93.  
  94. # Mysql
  95. RUN ["/bin/bash","-c", "debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password password soft@123'"]
  96. RUN ["/bin/bash","-c", "debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password_again password soft@123'"]
  97. RUN add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe' && apt-get update && apt install mysql-server-${MYSQLVERSION} -y && apt install mysql-client-${MYSQLVERSION} -y
  98. EXPOSE 3306
  99.  
  100. COPY ./files/my.cnf /etc/mysql/my.cnf
  101. RUN cp -r /var/lib/mysql /opt/mysqldata/ && mv /var/lib/mysql /dev/mysql
  102.  
  103. # JAVA
  104. WORKDIR /opt
  105. COPY ./files/jdk-7u80-linux-x64.tar.gz /opt/
  106. RUN mkdir -p /opt/jdk
  107. RUN tar -zxf jdk-7u80-linux-x64.tar.gz -C /opt/jdk
  108. RUN mkdir -p /usr/local/java/ && mv /opt/jdk/jdk1.7.0_80/ /usr/local/java/
  109. ENV JAVA_HOME /usr/local/java/jdk1.7.0_80
  110. ENV JRE_HOME /usr/local/java/jdk1.7.0_80/jre/bin
  111. ENV CLASSPATH /usr/local/java/jdk1.7.0_80/lib
  112. ENV PATH="${JAVA_HOME}:${JRE_HOME}:${CLASSPATH}:${PATH}"
  113. #ENV PATH $PATH:$JAVA_HOME:$JRE_HOME:$CLASSPATH
  114. RUN java -version
  115.  
  116. RUN apt-get update && apt-get install -y wget
  117.  
  118. #Instalar gradle ------------------------------------------------------------
  119. RUN wget https://services.gradle.org/distributions/gradle-${GRADLEVERSION}-bin.zip
  120. RUN unzip gradle-${GRADLEVERSION}-bin.zip
  121. #RUN mv gradle-${GRADLEVERSION} /opt/
  122. RUN rm gradle-${GRADLEVERSION}-bin.zip
  123. ENV GRADLE_HOME /opt/gradle-${GRADLEVERSION}
  124. ENV PATH $PATH:$GRADLE_HOME/bin
  125. RUN gradle -version
  126.  
  127. RUN apt-get update && apt-get install -y default-jre
  128.  
  129. COPY ./files/jacocoagent.jar /opt/jacocoagent.jar
  130. COPY ./files/wildfly-standalone.conf /opt/wildfly/bin/standalone.conf
  131. RUN chmod +x /opt/jacocoagent.jar
  132. RUN chmod +r /opt/jacocoagent.jar
  133.  
  134. USER gitlab-runner
  135.  
  136. #USER gitlab-runner
  137. WORKDIR /opt/wildfly/bin/
  138. #CMD ["sudo", "-s"]
  139. CMD ["sudo", "./standalone.sh", "-b", "0.0.0.0"]
  140.  
  141. #Copiar bash_aliases customizado p/ dentro da imagem ----------------------
  142. #COPY ./files/bash_aliases.sh /root/.bash_aliases
  143.  
  144. #RUN localedef -c -f UTF-8 -i pt_BR pt_BR.UTF-8
  145. #ENV LC_ALL pt_BR.UTF-8docker exec -t gpc-fontes-ci /bin/bash -c "source /bats/gpc.cfg && /bats/startdbci.sh"
  146.  
  147. #CMD ["cd", "/opt/wildfly/bin/", "&&", "./jboss-cli.sh", "--connect", "command=:shutdown", "2>&1", "&"]
  148. #CMD ["pkill", "-f", "wildfly"]
  149. #CMD ["/bin/bash"]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement