用docker時遇到的錯及解決方法

2021-08-17 03:05:33 字數 2061 閱讀 8972

1⃣ 用docker起乙個mysql的服務,執行以下指令:

docker run --name root -p

3306:3306

-v /tmp/lancmysql:/var/lib/mysql -e mysql_root_password=

123456

-d mysql

然後檢視docker 的容器:

docker ps
沒有mysql的docker 起來。

然後檢視沒有執行的docker :

docker ps -a
看到mysql的docker。

檢視mysql的container的日誌:

docker logs
這句話檢視的日誌只是docker裡邊的日誌。就是在遠端主機上的日誌,並不能看到自己本機的日誌。

報的錯:

此時/var/lib/mysql/這個目錄是遠端主機上的目錄。往回看我們執行的第一條指令,我們往遠端主機上對映的目錄是:/tmp/lancmysql:/var/lib/mysql。所以往回倒,相對於在自己本機/tmp/lancmysq,這個目錄沒有操作許可權。

因為我的這個/tmp/lancmysqllancmysql目錄是用sudo,建立的。所以沒有操作許可權。把/tmp目錄下的lancmysql刪除,然後刪除已經存在的mysql的container。之後再執行第一句話的時候,執行的時候讓他自己建立lancmysql目錄。

再執行docker ps,mysql的container就起來了。

2⃣ 用docker起乙個mysql的服務

3⃣️ 我當前mysql的本地目錄是/tmp,報下邊這個錯,是不讓在/tmp目錄下操作:

更改到別的目錄就可以了。

一直需要使用的檔案不能放在tmp資料夾下

放在/tmp資料夾下,系統會自己刪除,所以在加blockchain-explorer的sql的檔案的時候,起專案的時候,就需要新增一次,換乙個資料夾就好了。

4⃣️ 新增docker file sharing,報的錯如下:

error: for user-dashboard  cannot start service user-dashboard: mounts denied:

the path /opt/cello/baas

isnot shared from os x and

isnot known to docker.

you can configure shared paths from docker -> preferences... -> file sharing.

see for more info.

5⃣️ 報eaddrinuse的錯

主要日誌中出現這個eaddrinuse,就是埠被占用的意思,可檢視埠只占用情況:

lsof -i:3306

如果不出結果,就輸入:sudo lsof -i:3306

解除埠占用:kill -9 3306

用where in遇到null時的解決方法1

參考 1 select from 華東 where 公司 in select 公司代 from 備選客戶 where 公司代 and 公司代 is not null 2 用exists替換 select from 華東 where exists select 公司代 from 備選客戶 where ...

用msn時遇到的問題

1 提示 服務暫時不可用 還說是防火牆阻止了連線 還有個號 80048883 圖 msn 登陸失敗.jpg 2 疑難問題解答程式,提示 閘道器顯示為離線 圖 msn message疑難解答對話方塊.jpg 3 選項 連線 連線狀態 提示 沒有連線到 net message web service 圖...

關於解除安裝Hyper v 時遇到的問題及解決方案

曾經使用過vs2015編寫過幾個簡單的uwp程式,由於使用的時候在虛擬機器上進行的除錯,所以沒有注意啟動了hyper v的虛擬化。最近想要使用安卓模擬器,安裝過程中提示hyper v未關閉,於是出現了這個問題。安卓虛擬機器無法使用,強行啟動造成系統崩潰。通過檢視服務發現hyper v相關的兩個服務會...