webentwicklung-frage-antwort-db.com.de

So starten Sie den MySQL-Server im Docker-Container

Ich erstelle Docker-Container und Basis-Image ist ubuntu: 14.04. Ich muss den mysql-Server in diesem Container starten und muss dann Datenbanken erstellen und den Benutzern die Berechtigung erteilen. Docker ist neu für mich. Ich habe viel versucht, aber immer noch, wenn ich zu diesem Image gehe und prüfe, ob der Mysql-Server läuft oder nicht. Jedes Mal, wenn ich meinen MySQL-Server stoppe, werden meine dbs auch nicht erstellt 

FROM ubuntu:14.04
MAINTAINER <name> <emailid>
RUN Sudo apt-get update
RUN Sudo apt-get install -y Apache2 mysql-server libapache2-mod-auth-mysql php5-mysql php5 git
RUN Sudo apt-get install -y vim
CMD Sudo /usr/sbin/mysqld -u mysql

Ich habe viel versucht, aber es ist nicht möglich, den Mysql-Server im Docker-Image auszuführen.

15
Mark Taylor

Haben Sie es manuell in Ihrem Container installiert?

Warum benutzen Sie nicht einfach:

docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=secret -e MYSQL_DATABASE=mySchema mysql:5

Dadurch würde ein Container mit dem Namen mysql gestartet, der einen mysql - Daemon ausführt, das Standard - Root - Passwort auf secret setzt, ein neues Schema mit dem Namen mySchema erstellt und den MySQL - Port 3306 Clients zur Verfügung stellen, damit sie dies tun könnten verbinden.

Dann können Sie sich mit jedem MySQL-Client unter Verwendung des Root-Benutzers mit dem angegebenen Kennwort secret verbinden und Ihre Tabellen innerhalb des erstellten Schemas mySchema erstellen.

8
h3nrik

Ich hatte ein ähnliches Problem für ubuntu: 14.04, als ich den Druidencluster im Docker-Container eingerichtet hatte und CMD zum Starten von mysql für mich verwendet hatte.

CMD-MySQL-Start \

Druidenverwandtes Zeug

&& mysql stop
2
Sindhu