Postgres && Sonar 安装

  1. 下载 postgresql 与 sonarqube 镜像
# 拉取数据库
docker pull postgres

# 拉取sonarqube
docker pull sonarqube
  1. 启动 postgres 数据库并创建 sonar 用户
docker run \
  --name postgresqldb \
  -p 5432:5432 \
  -e POSTGRES_USER=sonar \
  -e POSTGRES_PASSWORD=sonar \
  -d postgres
  
  # 解释
  --name【数据库名称】
  -p 【端口:端口】
  -e POSTGRES_USER=【数据库用户】
  -e POSTGRES_PASSWORD=【登录密码】
  -d 【镜像名称】
  1. 首次操作需要,进入容器创建数据库,给sonar用户授予权限。
# 进入容器
docker exec -it 【postgresqldb的id】 /bin/bash  
  
# 使用用户名sonar登录数据库
psql -U sonar
  
# 创建sonar数据库
create database sonar
  
# 给sonar用户授权
alter role sonar createdb;alter role sonar superuser;alter role sonar createrole;
  
# 更改sonar数据库拥有者(这一步是必须的,否则会sonarqube会连接失败)
alter database sonar owner to sonar;
  
# 退出
\q 
  1. 启动 sonarqube
docker run \
	--name sonarqube \
	-e sonar.jdbc.password=sonar \
	-e sonar.jdbc.username=sonar \
	-e sonar.jdbc.url=jdbc:postgresql://postgres/sonar \
	--link postgresqldb:postgres \
	-p 9000:9000 \
	-d sonarqube
	
	
	# 解释
	--name【sonar名称】
	-e sonar.jdbc.password=【数据库用户名】
	-e sonar.jdbc.username=【数据库密码】
	-e sonar.jdbc.url=jdbc:postgresql://postgres/sonar
	--link 【数据库名称】:postgres 
	-p 【端口:端口】
	-d 【镜像名称】
  1. 如果启动报vm.max_map_count错误的话, 是给elasticsearch分配的数量不够
vi  /etc/sysctl.conf
   
vm.max_map_count=262144
Last Updated:
Contributors: kk