Hi @andrew.currie ,
are you running docker with nested virtualization on hyper-v? if yes you might need to adjust the settings inside your vm. one approach to this would be to use docker compose to create a kind of init container:
version: "3"
services:
sonarqube:
image: sonarqube:7.9.5-community
depends_on:
- init
environment:
SONARQUBE_JDBC_URL: jdbc:sqlserver://xx.xxx.xx.xx;databaseName=DBName
SONARQUBE_JDBC_USERNAME: username
SONARQUBE_JDBC_PASSWORD: password
volumes:
- sonarqube_data:/opt/sonarqube/data
- sonarqube_extensions:/opt/sonarqube/extensions
- sonarqube_logs:/opt/sonarqube/logs
- sonarqube_temp:/opt/sonarqube/temp
ulimits:
nproc: 131072
nofile:
soft: 8192
hard: 131072
ports:
- "9000:9000"
init:
image: bash
privileged: true
user: root
volumes:
- $(pwd)/init.sh:/mnt/init.sh <---- replace the path
command: ["sh", "-e", "/mnt/init.sh"]
volumes:
sonarqube_data:
sonarqube_extensions:
sonarqube_logs:
sonarqube_temp:
with init.sh
being the commands from the docs:
sysctl -w vm.max_map_count=524288
sysctl -w fs.file-max=131072
the other option (THAT I WOULD NOT RECOMMAND!) would be to disable the elasticsearch startup check using a command like this:
docker run -d --name sonarqube -p 9000:9000 -m 4gb -e SONAR_JDBC_URL=jdbc:sqlserver://xx.xxx.xx.xx;databaseName=DBName -e SONAR_JDBC_USERNAME=username -e SONAR_JDBC_PASSWORD=password -v sonarqube_data:/opt/sonarqube/data -v sonarqube_extensions:/opt/sonarqube/extensions -v sonarqube_logs:/opt/sonarqube/logs sonarqube:7.9.5-community -Dsonar.es.bootstrap.checks.disable=true
hope that helps