Hoje deixo-vos aqui um pequeno tutorial a explicar como configurar o sonarqube a correr em Docker.
Vou-vos começar por explicar o que é o SonarQube e como ele funciona. Trata-se de um software de gestão de código que permite ao utilizador analisar o código fonte de um projeto e gerir os resultados de análise estática. Para quem não sabe o que é a análise estática, trata-se de verificar se o código segue os standards, se todas as variáveis estão declaradas, se existem problemas de tipificação entre outros.
Vou partir do principio que já têm instalado o docker e o docker-compose, caso não tenham têm se seguir o tutorial para instalar.
Vamos começar por criar um directório para o nosso projeto, para isso abram o terminal e executem o comando:
$ mkdir sonarqube
Vamos também criar mais alguns directórios para o nosso projeto, para isso executem o comando:
$ cd sonarqube
$ mkdir const data extensions logs pgdata
vamos então criar o nosso docker-compose.yml, com o seguinte conteúdo:
$ cat > docker-compose.yml <<EOF
version: '3'
services:
sonarqube:
image: sonarqube:community
privileged: true
depends_on:
- postgres
environment:
- "TZ=Europe/Lisbon"
- "ES_JAVA_HOME=/opt/java/openjdk"
volumes:
- ./conf:/opt/sonarqube/conf
- ./data:/opt/sonarqube/data
- ./logs:/opt/sonarqube/logs
- ./extensions:/opt/sonarqube/extensions
ports:
- 9000:9000
postgres:
image: postgres:12.7
volumes:
- ./pgdata:/var/lib/postgresql/data
environment:
POSTGRES_USER: sonar
POSTGRES_DB: sonardb
POSTGRES_PASSWORD: postgrespwd
basta correrem o comando:
$ docker-compose up -d
e a aplicação estará a correr. Abram o browser no endereço:
http://localhost:9000
deverão deparar-se com o seguinte ecran
as credenciais de acesso são:
login: admin
password: admin
Após fazerem o login, vai-vos ser pedido para actualizarem a password.
Se por algum motivo, tiverem dúvidas ou acontecer algum erro num dos comandos acima, não hesitem a deixar um comentário.
Pedro Resende
With over two decades of experience as a Full Stack Developer, I have journeyed through diverse facets of software development. Commencing with the creation of compact institutional websites, I progressed to crafting portals for insurance brokers and contributed to substantial projects for renowned companies such as MS Amlin. My expertise expanded further by delving into product development for Advertiser Kwanko and collaborating with startups in their pivotal ramp-up stages. Notably, I've been involved in architecting extensive e-commerce solutions for global enterprises like Wayfair.
I currently serve as the Tech Lead at Emergn, contributing to the establishment and advancement of the Strategyzer client.