无法在 Docker-Compose 中连接到 MySQL 数据库
尝试通过 docker-compose 在 Docker 中运行 Django 和 MariaDB 时,用户可能会遇到出现以下错误:
django.db.utils.OperationalError: (2003, 'Can\'t connect to MySQL server on \'mariadb55\' (111 "Connection refused")')
要解决此问题,请务必确保在 Django 设置文件中使用正确的端口和主机。具体来说,端口应设置为3306而不是3302,主机应设置为'db' 而不是 'mariadb55' 或 '127.0.0.1'。
以下是更新的 Django 设置文件的示例:
<code class="python">DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'test', 'USER': 'belter', 'HOST': 'db', # Use 'db' instead of 'mariadb55' or '127.0.0.1' 'PORT': '3306', # Use 3306 instead of 3302 'PASSWORD': 'belter_2017', 'default-character-set': 'utf8', 'OPTIONS': { 'sql_mode': 'traditional', } } }</code>
此外,确保可以在端口 3306 上访问 MariaDB 容器也很重要,可以使用原始响应中提供的 check_db.py 脚本进行验证。
按照这些步骤,用户应该能够在 Docker-compose 中连接到 MySQL 数据库并解决连接被拒绝的错误。
以上是为什么我无法在 Docker-Compose 中连接到我的 MySQL 数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!