尝试docker mysql图像但用户/密码不起作用

时间:2016-09-01 08:44:16

标签: mysql docker

我有一个简单的docker设置使用php7和mysql,都来自docker hub。到目前为止设置还可以,一切都启动了,我可以访问我的应用程序。但我不能让mysql连接为我工作。我甚至登录到框中并尝试访问数据库,但它失败了。有人有什么想法吗?

搬运工-compose.yml

db:
  restart: always
  image: mysql/mysql-server:5.7
  ports:
    - "3306:3306"
  environment:
    MYSQL_ROOT_PASSWORD: root
    MYSQL_USER: myapp
    MYSQL_PASSWORD: myapp
    MYSQL_DATABASE: myapp
web:
  restart: always
  image: silintl/php7
  command: php -S 0.0.0.0:8000 -t /app/web
  links:
    - db
  ports:
    - "8000:8000"
  volumes:
    - ../:/app

尝试访问db

[bash]marcobehnke@Marcos-MacBook-Pro-2 ~ $ docker exec -it docker_db_1 bash

[root@7eff3007bb11 /]# mysql --user=myapp --password=myapp --host=localhost --port=3306 myapp
mysql: [Warning] Using a password on the command line interface can be insecure.

ERROR 1045 (28000): Access denied for user 'myapp'@'localhost' (using password: YES)
[root@7eff3007bb11 /]#

我在这里缺少什么?

编辑:看一下我的github repo,这是我正在使用的确切配置:https://github.com/firegate666/docker-php7-mysql-postgres

2 个答案:

答案 0 :(得分:0)

好像您正在使用wrong syntax。应该看起来像这样:

version: '2'
services:
  db:
    restart: always
    image: mysql/mysql-server:5.7
    ports:
      - "3306:3306"
  environment:
    MYSQL_ROOT_PASSWORD: "root"
    MYSQL_USER: "myapp"
    MYSQL_PASSWORD: "myapp"
    MYSQL_DATABASE: "myapp"
  # ...

答案 1 :(得分:0)

好的,我拿了一台不同的机器试过我的设置,开箱即用。我不知道为什么会这样,但问题显然是我的机器: - )