Docker-compose安装SonarQube
文章目录
- Docker-compose安装SonarQube
- 1.安装Docker-compose
- 1.Linux官方推荐方法安装Docker-Compose
- 2.编写docker-compose.yml文件
- 2.拉取相关镜像并运行
- 2.1拉取相关镜像
- 2.2拉取相关镜像
- 2.3创建网桥
- 2.3编写docker-compose.yml文件
- 3.2.查询docker-compose.yml文件位置
- 3.4 Portainer 可视化工具
1.安装Docker-compose
1.Linux官方推荐方法安装Docker-Compose
Linux系统默认是没有安装docker-compose
工具的,可以进入下面的网址。
进入亡之后,选择Product Manuals
—>Docker compose
—>Liunx
后,可以看到三条命令,依次执行就可以安装docker-compose
工具了。
第一条命令:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 或者
yum install docker-compose
如果一次安装不成功,可以多安装几次。一般是网络问题。
第二条命令:
sudo chmod +x /usr/local/bin/docker-compose
第三条命令:
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
安装好以后,用docker-compose --version
进行检查,如果能出现版本,说明安装成功了。
查看是否安装成功:
docker-compose --version
2.编写docker-compose.yml文件
查询docker-comcpose.yml文件位置,并进行修改。
whereis docker-compose.yml
# 或者
locate docker-compose.yml
# 或者
find / -name "docker-compose*"
2.拉取相关镜像并运行
2.1拉取相关镜像
# 拉取sonarqube镜像
$ docker pull sonarqube:9.1.0-community (推荐使用) / $ docker pull sonarqube:7.6-community
# 拉取postgres镜像
$ docker pull postgres:9.6.23
2.2拉取相关镜像
创建目录:
# 创建目录
mkdir -p /opt/sonarqube
# 进入目录文件夹下面
cd /opt/sonarqube
# 创建文件docker-compose.yml
touch docker-compose.yml
# 保存镜像
docker save -o sonarqube.tar sonarqube:9.1.0-community
docker save -o postgres.tar postgres:9.6.23
docker save -o portainer.tar portainer/portainer
docker load -i postgres.tar
2.3创建网桥
使sonarqube容器与postgres在同一个网桥中
docker network create sonarnet
查看创建的网桥
docker network ls
2.3编写docker-compose.yml文件
docker-compose.yml
version: "3.2"
services:
sonarqube: #服务名称
container_name: sonarqube # 相当于run 的 --name
image: sonarqube:9.1.0-community
restart: always
ports:
- "9001:9000"
depends_on:
- postgres
networks:
- sonarnet
environment:
- sonar.jdbc.username=sonar
- sonar.jdbc.password=123456
- sonar.jdbc.url=jdbc:postgresql://postgres:5432/sonarqube
- SONARQUBE_JDBC_USERNAME=sonar
- SONARQUBE_JDBC_PASSWORD=123456
- SONARQUBE_JDBC_URL=jdbc:postgresql://postgres:5432/sonarqube
volumes:
- /home/sonar/sonarqube/extensions:/opt/sonarqube/extensions
- /home/sonar/sonarqube/logs:/opt/sonarqube/logs
- /home/sonar/sonarqube/data:/opt/sonarqube/data
- /home/sonar/sonarqube/conf:/opt/sonarqube/conf
postgres:
container_name: postgres # 相当于run 的 --name
image: postgres:9.6.23
restart: always
ports:
- 5432:5432
networks:
- sonarnet
environment:
- ES_JAVA_POTS="-Xms128m -Xmx128m"
- TZ=Asia/Shanghai
- POSTGRES_USER=sonar
- POSTGRES_PASSWORD=123456
- POSTGRES_DB=sonarqube
volumes:
- /home/sonar/postgres/postgresql:/var/lib/postgresql
- /home/sonar/postgres/data:/var/lib/postgresql/data
potainer:
container_name: potainer # 相当于run 的 --name
image: portainer/portainer
container_name: portainer
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
ports:
- "8000:8000"
- "9000:9000"
volumes:
portainer_data:
networks:
sonarnet:
driver: bridge
external:
true #使用外部指定网桥 注意:网桥必须存在
在终端
里输入下面的命令,就可以开启wordpress
容器了。
docker-compose up
但这时候的容器开启方式是有日志输出的,并且窗口被占用了。没办法进行其它操作了。可以加入-d
参数,解决这个问题。
docker-compose up -d
3.2.查询docker-compose.yml文件位置
查询docker-compose.yml文件位置,并进行修改。
whereis docker-compose.yml
# 或者
locate docker-compose.yml
# 查看相关的yml文件路径
find / -name "docker-compose.yml"
3.4 Portainer 可视化工具
输入用户名和密码:
用户名:admin
密码:12345678
Manage the Docker environment where Portainer is running.
Ensure that you have started the Portainer container with the following Docker flag:
-v "/var/run/docker.sock:/var/run/docker.sock"
(Linux).
or
-v \\.\pipe\docker_engine:\\.\pipe\docker_engine
(Windows).