簡體   English   中英

使用數據庫指定時,Docker MySQL容器未使用密碼創建用戶

[英]Docker mysql container not creating user with password when specified with database

我有一個用例,我需要在一個容器上運行mysql並將其鏈接到另一個容器。 我的db文件數據也位於我的主機位置,該數據已作為卷安裝到數據庫容器中。...的條件是,不是以root用戶身份而是以具有所有特權的其他用戶身份運行該容器。 db在已安裝的卷中。

我運行了以下命令:

docker run -d -v ~/testdata:/var/lib/mysql -e MYSQL_DATABASE=Testdata_DB -e MYSQL_USER=testdata -e MYSQL_PASSWORD=mypasswordhere -p 3306:3306 --name=testdata_db mysql

上面的命令將啟動容器,但是當我向正在運行的容器中重擊時,我無法看到帶有密碼的用戶。 只有mysql正在運行

docker exec -it testdata_db bash

請讓我知道我要去哪里了。 我遵循了docker官方repo鏈接下的文檔。

我通過使用所需的sql命令創建一個init.sql來解決該問題,以創建user,表,該表從我的主機加載到docker-entrypoint-initdb.d /下的容器中,並根據需要設置env變量。 這使得mysql實例作為一個新實例加載,並加載了所有必需的表和數據。 最后的命令是:

docker run --name testdata_db -p 3306:3306 -e "MYSQL_ROOT_PASSWORD= " -e "MYSQL_USER=test" -e "MYSQL_PASSWORD=mypass" -e "MYSQL_DATABASE=mysql" -v ~/mysql/db/:/var/lib/mysql/ -v ~/mysql/init/:/docker-entrypoint-initdb.d/ -d mysql

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM