2016-07-16 28 views
1

これは私を夢中にしています...DockerコンテナのMySQL接続

私はMac上でDockerを使って簡単なLEMPスタックを構築しています。

nginx: 
    image: tutum/nginx 
    ports: 
     - "3333:80" 
    links: 
     - phpfpm 
     - db 
    volumes: 
     - ./nginx/default.conf:/etc/nginx/sites-available/default 
     - ./nginx/default.conf:/etc/nginx/sites-enabled/default 

     - ./logs/nginx-error.log:/var/log/nginx/error.log 
     - ./logs/nginx-access.log:/var/log/nginx/access.log 

phpfpm: 
    build: ./phpfpm 
    ports: 
     - "9000:9000" 
    volumes: 
     - ./code:/usr/share/nginx/html 

db: 
    image: mysql 
    tty: true 
    restart: always 
    volumes: 
    - /Users/mauo/local/mysql/data:/var/lib/mysql 
    ports: 
    - "3308:3306" 
    environment: 
    MYSQL_DATABASE: 'docker' 
    MYSQL_ROOT_PASSWORD: 'root' 
    MYSQL_USER: 'root' 
    MYSQL_ALLOW_EMPTY_PASSWORD: 'yes' 

すべてはMySQLのコンテナ上の例外を除いて、正常に動作します:

これは私のドッキングウィンドウ・コンファイルです。

これは私の接続を拒否します。

これは、コードフォルダ内の私のphpファイルのメッセージです:

(HY000/2002): Connection refused in /usr/share/nginx/html/index.php on line 2 

私は幹部-itのbashでMySQLの容器に入り、私は「mysqlの」、同じことを入力すると、アクセスがルートのために拒否されました@ localhost。

コンテナ内から、私は「mysqldを」起動しようとしましたが、それは任意の助けをいただければ幸い私に

2016-07-16T09:56:02.777893Z 0 [ERROR] InnoDB: Unable to lock ./ibdata1 error: 11 
    2016-07-16T09:56:02.778010Z 0 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files. 
    2016-07-16T09:56:03.779967Z 0 [ERROR] InnoDB: Unable to lock ./ibdata1 error: 11 
    2016-07-16T09:56:03.780182Z 0 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files. 

を伝えます!!!!

は私が私が間違っている可能性がドッカーする新たなんだ

M.

+0

問題を見つけることができます。 docker-configからボリュームを削除しよう: ' -/Users/mauo/local/mysql/data:/ var/lib/mysql' –

答えて

0

ありがとうございます。

root @ dbを試しましたか? 私はいくつかのドッカーの魔法はあなたのリンクされたコンテナのDNSレコードを作成すると思います。 root @ localhostが動作するようになったら、教えてください。私は同じ問題を抱えている。

関連する問題