啓動MySQL服務的時候,提示啓動失敗。github上有這個問題的問題單:https://github.com/docker/for-win/issues/573html
沒給出具體緣由,但解決方法是好使的。mysql
解決方法:git
1. Stop all the running containers docker stop $(docker ps -a -q) then 1. Stop the Docker on your machine & restart it.
Docker 每次重啓後,容器的IP地址會變化,查詢了資料,Docker是支持設置固定IP的。github
bridge:橋接網絡 默認狀況下啓動的Docker容器,都是使用 bridge,Docker安裝時建立的橋接網絡,每次Docker容器重啓時,會按照順序獲取對應的IP地址,這個就致使重啓下,Docker的IP地址就變了 none:無指定網絡 使用 --network=none ,docker 容器就不會分配局域網的IP host: 主機網絡 使用 --network=host,此時,Docker 容器的網絡會附屬在主機上,二者是互通的。 例如,在容器中運行一個Web服務,監聽8080端口,則主機的8080端口就會自動映射到容器中。sql
建立自定義網絡docker
docker network create --subnet=172.18.0.0/16 mynetwork
Docker MySQL官方鏡像亂碼字符集問題:latin1與utf8的糾纏網絡
#方法1:修改cnf [client] default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci #方法2:docker添加啓動命令 --character-set-server=utf8 --collation-server=utf8_unicode_ci --init-connect='SET NAMES UTF8;' #方法3:修改表 ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4;
我這是自定義了一些配置,因此使用了方法一,方法一也解決了個人問題!tcp