【问题标题】:Why can't I run the mysql command in docker compose?为什么我不能在docker compose中运行mysql命令?
【发布时间】:2022-08-02 15:43:54
【问题描述】:

我有一个在容器中带有 mysql 数据库的项目。我使用 docker-compose 来设置我的项目。我想运行 mysql 命令来检查 te 数据库。

所以我做了,并得到:

docker-compose run --rm database mysql
Creating myproject_database_run ... done
ERROR 2002 (HY000): Can\'t connect to local MySQL server through socket \'/var/run/mysqld/mysqld.sock\' (2)

但是,当我尝试这样做时,它可以工作:

docker exec -it myproject_database_1 mysql
ERROR 1045 (28000): Access denied for user \'root\'@\'localhost\' (using password: NO)

有人可以解释一下吗?

我的码头工人撰写文件:

version: \"3.7\"

services:
  database:
    image: mysql
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    ports:
      - \"127.0.0.1:3306:3306\"
    env_file: .env
    volumes:
      - type: volume
        source: db_data
        target: /var/lib/mysql
      - type: bind
        source: ./my.cnf
        target: /etc/my.cnf
        read_only: true

volumes:
  db_data:
  testing_images:
  • 向我们展示你的 docker compose 文件

标签: mysql docker docker-compose


【解决方案1】:

尝试在环境中添加MYSQL_ROOT_PASSWORD

environment:
    MYSQL_ROOT_PASSWORD: root

这是来自我的一个工作撰写文件

services:
    ## -----------------------------------------------
    ##           MySql database
    ## -----------------------------------------------
    db_mysql:
      image: mysql:8.0
      restart: always
      volumes:
        - db_mysql:/var/lib/mysql
        - ./mysql:/docker-entrypoint-initdb.d
      command: --default-authentication-plugin=mysql_native_password
      environment:
        MYSQL_ROOT_PASSWORD: root
      networks:
        - app-network
      deploy:
        mode: global
      ports:
        - "3306:3306"

    ## map volume
    volumes:
      db_mysql:

    ## in network, we can define any name under networks:
    networks:
       app-network:
        driver: bridge

供参考:Official MySQL docker image - Docker Hub

【讨论】:

    猜你喜欢
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-21
    • 2022-01-14
    相关资源
    最近更新 更多