Docker CodeIgniter MariaDb 连接被拒绝

时间:2021-01-30 05:15:33

标签: mysql docker codeigniter docker-compose

我是 docker 新手,并尝试在我的机器上本地的 docker 容器上部署我的脚本。但问题是我无法连接到我的数据库,每当我查询数据库时,我都会收到错误

<块引用>

mysqli::real_connect(): (HY000/2002): 连接被拒绝

我已尝试将 hostname => 'localhost' 替换为 127.0.0.1:3306 的解决方案,正如我在 docker ps 服务中看到的那样,但我无法连接。

Docker Compose 文件:

version: '3'

services:
  myapp:
    image: 'bitnami/codeigniter:3'
    ports:
      - '8000:8000'
    volumes:
      - '.:/app'
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
  phpmyadmin:
      image: phpmyadmin/phpmyadmin
      restart: always
      ports:
          - 8080:80
      volumes:
          - /sessions
      environment:
        PMA_HOST: mariadb

running container images

我也尝试升级ma​​riadb:latest,但没有成功。

Database.php

$db['default'] = array(
    'dsn'   => '',
    'hostname' => '127.0.0.1:3306',
    'username' => 'root',
    'password' => '',
    'database' => 'notification_task',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

已编辑:

我还通过 shell 和 docker exec 访问它来验证我的 sql 服务器正在运行。但它无法通过 codeigniter 访问

0 个答案:

没有答案