Docker容器连接本地MySQL

在Docker中部署Django项目时遇到问题,由于本地MySQL只监听本地环回接口,导致容器内的Django服务无法连接。通过修改MySQL配置文件,将bind-address改为0.0.0.0,使得MySQL监听所有网络IP,从而解决了Docker容器连接本地数据库的难题。
摘要由CSDN通过智能技术生成

在将Django项目通过Docker部署到生产环境前,需要在本地测试Docker镜像是否可用。
部署的项目用UWSGI作为服务器,生成容器后,访问admin页面报500,于是进入容器内查看Django服务是否开启:

user@starx:~/program/my_project$ docker exec -it  33d729ba5b37 bash
root@33d729ba5b37:/home/my_project# python manage.py runserver
Performing system checks...

System check identified no issues (0 silenced).
Exception in thread django-main-thread:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/base.py", line 217, in ensure_connection
    self.connect()
  File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/base.py", line 195, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 227, in get_new_connection
    return Database.connect(**conn_params)
  File "/usr/local/lib/python3.7/site-packages/MySQLdb/__ini
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值