一、前言
不得不吐槽下,現在的部落格寫的真太扯淡了,就網上寫的使用docker安裝SonarQube而言,搜到十篇文章,最少9篇照着操作配置都不可用,卡在SonarQube無法啟動。自然,我也是被折磨的身心俱疲(自身技術差,不會定位問題,才是重點)。
二、修改Linux系統參數
1、第一處修改
輸入如下指令:
vim /etc/sysctl.conf
2、修改内容
添加如下内容:
vm.max_map_count = 262144
fs.file-max = 65536
3、第二處修改
輸入如下指令:
vim /etc/security/limits.conf
4、修改内容
添加如下内容:
* soft nofile 65536
* hard nofile 65536
5、重新開機
reboot
三、拉取鏡像并啟動
1、拉取鏡像
輸入如下指令:
docker pull postgres:10
docker pull sonarqube:7.9.1-community
執行個體如下:
2、運作容器
啟動postgres,輸入如下指令:
docker run \
-d \
--name postgres10 \
-p 5432:5432 \
-e POSTGRES_USER=sonar \
-e POSTGRES_PASSWORD=123456 \
postgres:10
啟動SonarQube,輸入如下指令:
docker run \
-d \
--name sonarqube7.9 \
-p 9000:9000 \
--link postgres10 \
-e SONARQUBE_JDBC_URL=jdbc:postgresql://postgres10:5432/sonar \
-e SONARQUBE_JDBC_USERNAME=sonar \
-e SONARQUBE_JDBC_PASSWORD=123456 \
-v sonarqube_conf:/opt/sonarqube/conf \
-v sonarqube_extensions:/opt/sonarqube/extensions \
-v sonarqube_logs:/opt/sonarqube/logs \
-v sonarqube_data:/opt/sonarqube/data \
sonarqube:7.9.1-community
四、檢查容器運作狀态
1、檢視容器運作狀态
輸入如下指令:
docker ps
檢視容器執行狀态如下:
知識點:
- docker ps :列出正在運作的容器
- docker ps -a : 顯示所有的容器,包括未運作的
這裡我TM要吐槽下,某些部落客,不知道指令的含義,不要誤導我這個小白好嗎,告訴我用docker ps -a檢視容器狀态,我查完才知道,加-a的意思是會列出所有容器當然也包括未運作的,可不會顯示怎麼的,我要的是運作的,大哥。不要這麼坑好嗎。
2、搞定防火牆
firewall-cmd --zone=public --permanent --add-port=9000/tcp
firewall-cmd --zone=public --permanent --add-port=5432/tcp
firewall-cmd --reload
五、驗證
1、浏覽器通路
輸入http://192.168.1.106:9000 ,初始使用 admin/admin 登入,如下圖所示。
2、檢視資料庫資訊
六、設定成中文
1、系統漢化
2、根據提示重新開機Sonar Server
3、漢化成功
參考原文:https://www.cnblogs.com/anliven/p/12075636.html#_label2_1