在使用docker的過程中,我們可能需要訪問宿主機(jī)的mysql數(shù)據(jù)庫,以便進(jìn)行一些數(shù)據(jù)操作等操作,下面介紹一下如何實(shí)現(xiàn)docker里訪問宿主機(jī)的mysql。
首先,我們需要確認(rèn)宿主機(jī)的mysql是否允許遠(yuǎn)程連接。可以通過以下步驟進(jìn)行設(shè)置:
1. 登錄到宿主機(jī)的mysql 2. 執(zhí)行以下命令: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密碼' WITH GRANT OPTION; flush privileges;
然后,需要在docker里使用以下命令創(chuàng)建mysql容器:
docker run -d --name=mysqlContainer -p 3306:3306 -e MYSQL_ROOT_PASSWORD=密碼 mysql
其中,-d表示后臺運(yùn)行,-p表示端口映射,將容器內(nèi)部的3306端口映射到宿主機(jī)的3306端口,方便訪問。MYSQL_ROOT_PASSWORD表示設(shè)置mysql的root賬號密碼。
接下來,在docker容器內(nèi)的終端輸入以下命令,連接到宿主機(jī)的mysql數(shù)據(jù)庫:
mysql -h 宿主機(jī)IP地址 -P 3306 -uroot -p密碼
其中,-h表示宿主機(jī)的IP地址,-P表示端口號,-uroot表示用戶名,-p表示密碼。
至此,我們已經(jīng)成功實(shí)現(xiàn)了docker里訪問宿主機(jī)的mysql數(shù)據(jù)庫。