MySQL Dockerコンテナは/ var/runロックを使用していません。その代わりに、IPアドレスを明示的に指定してコンテナのアドレスを直接指定してみてください。
最初にコンテナのIPアドレスを取得します。このような何か:「mysql_db」は、あなたのMySQLのドッカーコンテナを与えてくれた名前です
export MYSQL_IP_ADDRESS=$(sudo docker inspect --format="{{ .NetworkSettings.IPAddress }}" mysql_db)
。
あなたのIPアドレスを「エコー」することができるはずです。
[email protected]:~$ echo $MYSQL_IP_ADDRESS
172.17.121.2
次に、コマンドラインでそのホスト名を指定します。
mysql -h $MYSQL_IP_ADDRESS -u root -p
ポートの可視性についてのあなたの他の質問に答えるために、私はhub.docker.comの標準のmysql/mysql-serverイメージを使用していると仮定します。そのイメージは自動的に3306を公開しますが、MYSQL_ROOT_HOSTを使用してホストIPから接続できるようにする必要があります。たとえば、私のホストIPアドレスは172.17.121.1です。だから私はこのように私のコンテナを始めるでしょう:
[email protected]:~$ sudo docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=blat -e MYSQL_ROOT_HOST=172.17.121.1 mysql/mysql-server:latest
aa09bc5a30b8f84b68d760d828f8e451238405a177caef4ad802bef44ad43352
[email protected]:~$ mysql -h $MYSQL_IP_ADDRESS -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.17 MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
これは、ネットワークソケットではなく、Unixソケットに関する苦情のようです。 (ところで、 'install'はサービスを開始しないことに注意してください。) –
mysqlでpbされているようなビンゴ。私はそれが私が持っている他の問題のいくつかを解決するかどうかを二重チェックするつもりです。 –
ただ好奇心から:なぜあなたは時間を構築するのではなく、実行時にmysqlをインストールしていますか? –