• 背景说明
  1. 同一台机子(以linux为例)部署以下项目、数据库
  2. docker部署mysql、mongo、postgresql、clickhouse数据库
  3. docker部署spring-boot项目、python、go等项目需要连接数据库
    以spring-boot项目连接mysql为例,通常yml这样配置
jdbc:mysql://127.0.0.1:3306/database_1?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2b8
  • 报错原因
    docker部署的项目、数据库是一个一个相互独立的环境。即spring-boot容器连接数据是去该容器内找127.0.0.1的mysql数据库,找不到就报错

  • 解决方案
    使用host.docker.internal替换127.0.0.1,
    示例:

    mysql://host.docker.internal:3306
    mongodb://host.docker.internal:27017
    postgresql://host.docker.internal:5432
    clickhouse://host.docker.internal:8123
    
  • 注意数据库启动时如果创建了网络
    则使用创建的网络ip替换127.0.0.1
    示例:

    # 创建网络
    docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 pgnetwork
    # 具体yml使用
    mysql://192.168.0.1:3306
    mongodb://192.168.0.1:27017
    postgresql://192.168.0.1:5432
    clickhouse://192.168.0.1:8123
    
  • docker启动数据库记得加参数,示例
    --network pgnetwork --ip 192.168.0.101

docker部署项目通过127.0.0.1访问数据库:Connection refused相关推荐

  1. IDE工具(45) idea使用Docker部署项目到服务器的全过程

    一.前言 温馨小提示: 案例源码demo放文章最后了 基本环境 idea CentOS7.3服务器 docker springboot项目 二.服务器配置docker远程连接 可参考小编的另外一篇文章 ...

  2. (四)docker部署项目

    docker部署项目 基于ubuntu16.4+python3的flask web项目,使用gunicorn启动,项目运行时需要加载一些动态链接库,并且项目在运行时需要多个后缀为.vpo的授权文件,项 ...

  3. 解决:consumer: Cannot connect to amqp://admin:**@127.0.0.1:5672//: [Errno 111] Connection refused.

    为了避免大家机毁人亡,徒耗精力搜索到一堆没用的重复旧文,我决定写下这篇关于docker容器化的celery 无法连接rabbitmq的文章,以增强互联网的技术氛围和工程师的原创精神 worker_1 ...

  4. 【7】idea集成docker部署项目

    [7]idea集成docker部署项目 一.修改docker配置 1.1 修改服务器docker.service服务信息 允许其他主机远程访问服务器的docker vim /usr/lib/syste ...

  5. docker部署项目自动化脚本

    docker部署项目脚本,脚本会完成容器停止,删除,镜像删除,镜像构造,运行容器等一系列操作 该脚本配合jenkins使用,真的舒服 #!/bin/bash echo "开始执行脚本&quo ...

  6. docker部署项目 dockerfile 实战 SpringBoot、flask

    1 SpringBoot微服务打包Docker镜像 1.1 构建springboot项目 package com.example.springboot.demo;import org.springfr ...

  7. docker部署项目 入门版

    1 通用 1.1 权限 开启挂载目录权限 #开启目录权限 chmod a+rwx /usr/local/test#开启docker挂载权限 chmod a+rw /var/run/docker.soc ...

  8. Docker部署项目的两种方式总结

    作者:LemonSquash cnblogs.com/npeng/p/14267007.html 1.手工方式 1.1.准备Springboot jar项目 将项目打包成jar 1.2.编写Docke ...

  9. Spring Boot细节挖掘(Docker部署项目)

    如今 Docker 的使用已经非常普遍,特别是在一线互联网公司,使用 Docker 技术可以帮助企业快速水平扩展服务,从而达到弹性部署业务的能力.在云服务概念兴起之后,Docker 的使用场景和范围进 ...

最新文章

  1. 【Ant Design Pro 五】箱套路由在菜单栏显示返回上一页
  2. python代码大全p-基于python实现计算两组数据P值
  3. Java并发编程:CopyOnWrite容器的实现
  4. 2021年1月10日停电感慨
  5. Vue项目使用百度地图——经纬度地图组件的封装及使用
  6. 前端学习(561):解决margin重叠第二种情况父子
  7. 这些年,NLP常见的预训练模型剖析
  8. 孙宇晨在线发钱,变身“人间王多鱼”之后,大家突然不讨厌他了?
  9. 迎春舞会之三人组舞 vijos1061 动态规划
  10. php能把字符串分割数组的函数是,php把字符串分割到数组中的函数str_split()
  11. javafx 按钮中放置图片导致大小设置失效
  12. wacom win10 未连接任何设备 驱动的问题 解决影拓3手绘板等老设备驱动无法在win10使用的问题
  13. AD中画PCB详细流程
  14. 电力电子,电机控制系统的建模与仿真
  15. 夸计算机老师的成语,赞美老师的成语句子
  16. 普渡大学计算机科学师生比,公立常春藤高校普渡大学,附申请要求+录取难度!...
  17. k1075停运吗_要外出的街坊注意!受台风影响,最近三天这些火车班次停运
  18. bzoj3029 守卫者的挑战
  19. 如何架设部署V2EX社区/论坛(Google App Engine版)
  20. python print空格占位_python的占位格式符 %

热门文章

  1. 什么是函数?什么是无参函数?什么是返回值?函数的分类?
  2. 有界面的python音乐播放器(可下载音乐)
  3. redis多实例常见部署方法和使用
  4. 使用JOL工具计算Java对象的大小
  5. ROS获取串口信息及后续处理(以惯导IMU XW-GI5651为例)
  6. Fedora各个历史版本官方下载地址
  7. http://nian.so/#网站的拓展工具编写
  8. EasyExcel增加下拉选择框
  9. RK WiFi驱动层初始化分析
  10. 图像识别,ocr 技术,有兴趣的可以了解一下