Ubuntu docker部署sonarQube
时间: 2025-01-06 09:38:29 浏览: 72
### 安装和配置SonarQube
#### 准备工作
为了在Ubuntu操作系统中通过Docker容器安装和配置SonarQube,需先确保已正确安装Docker环境。可以通过`docker --version`命令验证Docker是否已经成功安装。
#### 创建网络
为使SonarQube与数据库能够相互通信,建议创建自定义桥接网络:
```bash
docker network create sonarnet
```
#### 启动MySQL服务
由于SonarQube依赖于关系型数据库存储数据,在此选用官方推荐的MySQL作为其后台数据库。下面展示的是基于Docker启动带有特定参数设定的MySQL实例的方式[^5]:
```yaml
version: '2'
services:
db:
image: mysql:5.6
container_name: sonarqubedb
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_USER=sonar
- MYSQL_PASSWORD=sonar
- MYSQL_DATABASE=sonar
networks:
- sonarnet
networks:
sonarnet:
external: true
```
保存上述YAML文件至本地磁盘(例如命名为`docker-compose-mysql.yml`),并通过如下指令来运行该组合体内的所有组件:
```bash
docker-compose -f docker-compose-mysql.yml up -d
```
#### 配置SonarQube镜像
接下来准备用于部署SonarQube应用本身的Docker Compose YAML描述文档。这里同样指定了必要的连接字符串和其他初始化选项[^4]:
```yaml
version: '2'
services:
app:
image: sonarqube:latest
container_name: sonarqube
ports:
- "9000:9000"
environment:
SONAR_JDBC_URL: jdbc:mysql://db:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false
SONAR_JDBC_USERNAME: sonar
SONAR_JDBC_PASSWORD: sonar
depends_on:
- db
networks:
- sonarnet
volumes:
sonarqube_data: {}
networks:
sonarnet:
external: true
```
将这段代码存入另一个名为`docker-compose-app.yml`的新文件里,并利用相同的方法将其激活:
```bash
docker-compose -f docker-compose-app.yml up -d
```
此时访问浏览器输入http://localhost:9000应该可以看到默认登录页面,默认管理员账号密码均为admin/admin,请及时修改以保障安全[^1]。
#### 日常维护操作
对于日常的服务启停以及状态查询可以借助systemctl工具完成,不过针对由Compose编排起来的应用集群更推荐采用专门设计过的子命令集来进行管理[^3]:
- 停止整个站点:`docker-compose down`
- 查看当前健康状况:`docker ps | grep sonarqube`
阅读全文
相关推荐


















