2 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
1.說明你mysql沒有啟動(dòng),因?yàn)槟愫竺娴?bin/bash已經(jīng)暴露問題了。
2.試一試這樣啟動(dòng)
$docker run -d mysql $docker exec -it $container_id /bin/bash
問題的原因,可以看看官方對CMD 和 entrypoint指令得描述,你就懂了。
如下是我測試效果
#1.模擬你得效果,這里不會(huì)報(bào)錯(cuò),是因?yàn)闆]有執(zhí)行mysqld進(jìn)行初始化,bash已經(jīng)覆蓋了指令
docker@default:~$ docker run -it mysql bash
root@8b767c162afd:/# ps -aux | grep mysql
root 7 0.0 0.0 11128 984 ? S+ 03:04 0:00 grep mysql
#2.報(bào)錯(cuò),因?yàn)闆]有加-e環(huán)境參數(shù),說明mysqld執(zhí)行了初始化,未找到環(huán)境變量
docker@default:~$ docker run -d mysql
9212525aedf8f5586548fbc1d1e4fa130fd0ce294ac03c2d00a1c1d9945455a5
docker@default:~$ docker exec -it 92 bash
Error response from daemon: Container 9212525aedf8f5586548fbc1d1e4fa130fd0ce294ac03c2d00a1c1d9945455a5 is not running
mysql-db
docker@default:~$ docker logs 92
error: database is uninitialized and password option is not specified
You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD
docker@default:~$
添加回答
舉報(bào)