8 jul. 2016

Correr sonarqube desde un contenedor Docker

Continuando con los artículos de Docker, en este caso se muestra como iniciar SonarQube conectado a una base de datos PostgreSQL y pasando los datos de la base de datos por medio de variables de ambiente.

Sonarqube es una plataforma para evaluar código fuente (tomado de wikipedia).
Los artículos anteriores sobre Docker son:
  1. Instalar Docker en Debian Jessie
  2. Uso de Docker en Debian Jessie (parte 1)
  3. Uso de Docker en Debian Jessie (parte 2)
  4. Crear una imagen Docker a partir de un archivo Dockerfile
  5. Iniciando Django usando Docker
  6. Instalar Gitlab por medio de Docker
  7. Ejecutando microservicios con docker usando docker-compose
  8. Docker en Docker (DinD)
  9. Iniciando Django con docker usando docker-compose con postgresql como microservicio.
  10. Importar un contenedor Docker en Python.
  11. Compartir imagenes Docker por medio de archivos tar.
  12. Crear un registro de imagenes Docker privado.
  13. Usar Anaconda desde un contenedor Docker.
  14. Crear un entorno de Integración y Despligue continue con Docker para node.js.
  15. Usar Jupyter Notebook desde un contenedor Docker.
  16. Ejecutar una prueba de doctest con un contenedor Docker.
  17. Ejecutar una prueba de unittest en Python con un contenedor Docker.
  18. Montar una Plataforma como servicio (PaaS) con Dokku (docker).
  19. Uso de docker-machine.
  20. Proveer un cluster con docker swarm y docker-machine.
  21. Instalar Jenkins por medio de Docker y crear una imagen Docker de Jenkins
  22. Automatizar la construcción de imágenes Docker con github.
  23. Crear una imagen Docker para MongoDB3.
  24. Crear un contenedor Docker como entorno de desarrollo para Sails.js.
  25. Correr aplicaciones de escritorio desde un contenedor Docker.
  26. Usar dockerui para la gestión de imágenes y contenedores de Docker
  27. Crear una imagen Docker de RethinkDB
  28. Profiling de un script Python con cProfile
  29. Instalar gitlab-runner de gitlab-ci por medio de Docker
La guía de configuración y uso de  contenedores Docker para sonarqube lo pueden ver en el enalce de Docker hub.

Lo primero que se hará es iniciar un contenedor de postgreSQL:

docker run -d --name postgres2 --restart always  -e POSTGRES_PASSWORD=sonar -e POSTGRES_USER=sonar postgres


Se define que el usuario de la base de datos es sonar y su clave es sonar.


Ahora se inicia el contenedor de sonarqube:

docker run -d --name sonarqube --restart always -p 9000:9000 -p 9092:9092 -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -e SONARQUBE_JDBC_URL=jdbc:postgresql://postgres2/sonar --link postgres2:postgres sonarqube


Se le pasa los puertos donde estará sonarqube (9000 y 9092), se le pasa la configuración de la base de datos a sonarqube (usuario, clave y url de conexión que usará el nombre del contenedor de postgres) y se enlace con el contenedor de postgres.


A continuación se muestra una captura de pantalla del contenedor corriendo:


Para terminar se muestra los contenedores corriendo:

docker ps 
CONTAINER ID        IMAGE                     COMMAND                  CREATED             STATUS              PORTS                                                          NAMES
e20d4108f54f        sonarqube                 "./bin/run.sh"           29 minutes ago      Up 29 minutes       0.0.0.0:9092->9092/tcp, 0.0.0.0:49000->9000/tcp                sonarqube
e3387c2754d1        postgres                  "/docker-entrypoint.s"   6 hours ago         Up 6 hours          5432/tcp                                                       postgres2



Publicar un comentario en la entrada

AddThis