Ich versuche, einen MySQL-Container in Docker über den folgenden Befehl zu initialisieren:
docker run --name some-name -e MYSQL_ROOT_PASSWORD=my-password -e MYSQL_DATABASE=db-name mysql/mysql-server
Der Container wird erfolgreich gezogen, und wenn er diese Linie erreicht, stoppt er dort und bewegt sich nie:
2022-02-28T09:10:03.040757Z 0 [系统] [MY-010931] [服务器] /usr/sbin/mysqld:准备连接。版本:“8.0.28”套接字:“/var/run/mysqld/mysqld.sock”端口:3306 MySQL 社区服务器 - GPL.
Ich habe versucht, diese Flagge hinzuzufügen -h 127.0.0.1
und blieb immer noch in derselben Zeile hängen.
Dies ist die Ausgabe von docker container ls -a
:
70579fec1ed2 mysql“docker-entrypoint.s…”3小时前退出(1)3小时前spawning-pool
Dies ist die letzte Zeile der Ausgabe von docker logs $(container-name)
:
2022-02-28T10:24:24.316843Z 0 [系统] [MY-010910] [服务器] /usr/sbin/mysqld: 关闭完成 (mysqld 8.0.28) MySQL 社区服务器 - GPL.
我发现解决办法是添加以下标志:
-it
并在末尾添加/bin/bash
所以最终命令的结尾看起来像这样:
-it -d mysql:mysql-server /bin/bash
这将在mysql的后台运行一个终端,并防止其关闭。 只是我希望如果这会导致任何未来错误,有人能纠正我,因为一个bash终端会一直运行。