首页 > 解决方案 > 如何将 docker 容器连接到远程数据库?

问题描述

几天前我开始了 docker 教程。我正在尝试连接到远程数据库。我不知道如何在我的yml文件中添加数据库 URL 这是我要连接的数据库:mydomainuat1.mydomain.com:1531/myuat. 下面是我的yml文件。

version: "3"

services:

  mydb:
    image: 7bb2586065cd
     ports:
      - "3306:1531"
    environment:
      - MYSQL_ALLOW_EMPTY_PASSWORD:1
      - MYSQL_DATABASE:students
      - MYSQL_USER:kaka
      - MYSQL_PASSWORD:kaka1234
  networks:
      - my-network

  ws:
    image: 92c203b7b219
    ports:
      - "8085:8085"
    depends_on:
      - mydb
    networks:
      - my-network



  networks:
    my-network:
    driver: overlay

标签: javadatabasespring-bootdockerdocker-container

解决方案


好像你在这里混淆了一些东西。你所做的docker-compose.yml是定义一个mydb服务,它将在你的 Docker 主机上启动一个数据库。然后,您的ws服务可以使用mydb:1531. (如果您只希望容器与数据库通信,则端口映射3306也不是必需ws的,因为它们不依赖于主机端口。)

如果您想访问另一台机器上的远程数据库,则根本不需要该mydb服务,只需将连接详细信息传递到您的ws容器中,就像您已经为该mydb服务所做的那样,然后从那里继续。


推荐阅读