KissedBySnow 2019-07-12 10:09 采纳率: 0%
浏览 1140

Docker容器如何跨主机连接数据库

问题描述:

例如:我要创建一个 sonar 容器,如何使 sonar 连接到不同主机上的数据库。

简单介绍:

下面的代码是目前我在一台主机上运行MySQL和Sonar,如何修改Sonar的启动代码,达到让Sonar和MySQL分布在不同的主机呢?

主机A 启动 MySQL

    docker run \
    -d \
    -p 3307:3306 \
    --name mysql \
    -v /data/mysql/conf:/etc/mysql/conf.d \
    -v /data/mysql/logs:/logs \
    -v /data/mysql/data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=123456 \
    mysql:5.7

主机A 启动 Sonar

    docker run \
    -d \
    --name sonarqube \
    -p 9000:9000 \
    -p 9092:9092 \
    --link=mysql:mysql \
    -v /data/sonarqube/logs:/opt/sonarqube/logs \
    -v /data/sonarqube/conf:/opt/sonarqube/conf \
    -v /data/sonarqube/data:/opt/sonarqube/data \
    -v /data/sonarqube/extensions:/opt/sonarqube/extensions \
    -e SONARQUBE_JDBC_USERNAME=sonar \
    -e SONARQUBE_JDBC_PASSWORD=sonar \
    -e SONARQUBE_JDBC_URL="jdbc:mysql://10.9.40.121:3307/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false" \
    sonarqube:7.4-community
  • 写回答

2条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 使用c++读取文件,有没有办法快速定位到某几个类字符
      • ¥15 用python解答,需要简单的代码说明
      • ¥15 JAVA socket客户端在接受消息之后如何返回前端呢
      • ¥15 类文件具有错误的版本 61.0, 应为 52.0
      • ¥15 main函数里scanf_s("%c",&t)字符没办f法输入,断点调试时&t显示烫,求看看问题在哪?
      • ¥15 初学者学习xbeach 用matlab,缺失XBeach MATLAB Toolbox
      • ¥20 如何将tiff格式数据作为因变量,输入已建立的机器学习模型中,得到结果同样为空间tiff格式的数据
      • ¥20 编写一个脚本监听sql的运行状态并联动另一台服务器上的服务重启
      • ¥215 一年前的硬盘数据恢复
      • ¥15 htmclxx 求提供给64位windows预编译库