1. 程式人生 > 其它 >用Docker Toolbox安裝的docker 替換預設儲存位置的記錄

用Docker Toolbox安裝的docker 替換預設儲存位置的記錄

技術標籤:小問題docker

關於Docker Toolbox安裝的docker更換儲存位置,全網都沒有多少資料,過程中參考了下面這篇博文,感謝

Docker Toolbox替換預設docker machine的儲存位置
https://www.cnblogs.com/ginponson/p/8601320.html

先說一下我的情況,系統是windows server 2012 R2,C盤不夠用,所以需要更換預設儲存位置,我安裝的toolbox版本是19.03.1
操作步驟:

  1. 在開始安裝之前就配置環境變數(如果已經安裝了,需要解除安裝,按照上面那篇博文操作,我沒有成功)
    以我的為例:
    新增變數名:MACHINE_STORAGE_PATH
    值為F:\Docker\machines
    修改環境變數

建議:
這裡可以先去github下載一下boot2docker.iso,這個需要下載最新版本
下載好後新建個cache目錄,路徑為:F:\Docker\cache,然後把boot2docker.iso放進去

  1. 然後再執行DockerToolbox-19.03.1.exe進行安裝
    這裡直接next就行,都是選擇預設配置,無需額外操作

  2. 安裝完後,進入目錄F:\Docker\machines\machines\default,編輯config.json,配置國內映象(從這裡也可以看出,儲存位置在F盤,如果切換不成功,配置項的路徑都是在C盤)

{
    "ConfigVersion"
: 3, "Driver": { "IPAddress": "192.168.99.100", "MachineName": "default", "SSHUser": "docker", "SSHPort": 54403, "SSHKeyPath": "F:\\Docker\\machines\\machines\\default\\id_rsa"
, "StorePath": "F:\\Docker\\machines", "SwarmMaster": false, "SwarmHost": "tcp://0.0.0.0:3376", "SwarmDiscovery": "", "VBoxManager": {}, "HostInterfaces": {}, "CPU": 1, "Memory": 1024, "DiskSize": 20000, "NatNicType": "82540EM", "Boot2DockerURL": "", "Boot2DockerImportVM": "", "HostDNSResolver": false, "HostOnlyCIDR": "192.168.99.1/24", "HostOnlyNicType": "82540EM", "HostOnlyPromiscMode": "deny", "UIType": "headless", "HostOnlyNoDHCP": false, "NoShare": false, "DNSProxy": true, "NoVTXCheck": false, "ShareFolder": "" }, "DriverName": "virtualbox", "HostOptions": { "Driver": "", "Memory": 0, "Disk": 0, "EngineOptions": { "ArbitraryFlags": [], "Dns": null, "GraphDir": "", "Env": [], "Ipv6": false, "InsecureRegistry": [], "Labels": [], "LogLevel": "", "StorageDriver": "", "SelinuxEnabled": false, "TlsVerify": true, "RegistryMirror": ["https://xxx.mirror.aliyuncs.com"],#這裡更換阿里映象 "InstallURL": "https://get.docker.com" }, "SwarmOptions": { "IsSwarm": false, "Address": "", "Discovery": "", "Agent": false, "Master": false, "Host": "tcp://0.0.0.0:3376", "Image": "swarm:latest", "Strategy": "spread", "Heartbeat": 0, "Overcommit": 0, "ArbitraryFlags": [], "ArbitraryJoinFlags": [], "Env": null, "IsExperimental": false }, "AuthOptions": { "CertDir": "F:\\Docker\\machines\\certs", "CaCertPath": "F:\\Docker\\machines\\certs\\ca.pem", "CaPrivateKeyPath": "F:\\Docker\\machines\\certs\\ca-key.pem", "CaCertRemotePath": "", "ServerCertPath": "F:\\Docker\\machines\\machines\\default\\server.pem", "ServerKeyPath": "F:\\Docker\\machines\\machines\\default\\server-key.pem", "ClientKeyPath": "F:\\Docker\\machines\\certs\\key.pem", "ServerCertRemotePath": "", "ServerKeyRemotePath": "", "ClientCertPath": "F:\\Docker\\machines\\certs\\cert.pem", "ServerCertSANs": [], "StorePath": "F:\\Docker\\machines\\machines\\default" } }, "Name": "default" }
  1. 然後就可以正常執行Docker Quickstart Terminal了