window安裝docker(經過Oracle VM VirtualBox)

1、下載:

軟件DockerToolbox-19.03.1.exe下載:https://github.com/docker/toolbox/releases linux

國內:https://get.daocloud.io/toolbox/git

最新版boot2docker.iso:https://github.com/boot2docker/boot2docker/releasesgithub

2、安裝:

已經安裝virtualBox和git則勾選掉docker

安裝完,將boot2docker.iso複製到C:\Users\用戶名\.docker\machine\cacheshell

3、使用:

選擇圖標,啓動DockerToolboxbash

第一次運行Docker Quickstart Terminal時會進行Docker環境的初始化,會在VirtualBox中自動建立名字爲【default】的linux虛擬機,再此過程當中會用到boot2docker.iso鏡像文件。默認狀況下,啓動程序會從GitHub上下載此文件的最新版,但因爲文件相對較大且速度不給力,多數狀況下會下載失敗,形成Docker環境沒法啓動,以下圖:網絡

 

解決方法:ssh

其實DockerToolbox安裝文件自帶了boot2docker.iso鏡像文件,位於安裝目錄下(如C:\Program Files\Docker Toolbox) ,將此文件拷至C:\Users\Administrator\.docker\machine\cache目錄下,而後在網絡斷開的狀況下從新啓動,即可初始化成功。以下圖:curl

其中 【192.168.99.100】是VirtualBox中名字爲【default】虛擬機的ip地址。ui

利用Xshell登陸

Docker Quickstart Terminal使用起來不方便,可使用XShell進行SSH登陸Docker環境(其實就是遠程訪問default linux虛擬機)。

經過在PowerShell或cmd終端中執行【docker-machine ls】命令,能夠看到虛擬機的地址,本機是192.168.99.100。

 

default虛擬機的默認用戶名和密碼

用戶名:docker 
密碼: tcuser

登陸成功後的界面

ssh docker@192.168.99.101
tcuser

 

docker-machine 經常使用命令
  ip                    Get the IP address of a machine
  ls                    List machines
  restart               Restart a machine
  ssh                   Log into or run a command on a machine with SSH.
  start                 Start a machine
  status                Get the status of a machine
  stop                  Stop a machine
  url                   Get the URL of a machine

 

4、配置:

點擊Oracle VM VirtualBox,進入後,有一個default虛擬機

處理器個數根據本身主機狀況設置:1-2個

顯存根據本身主機設置,有可能則設置爲128M

設定一個橋接網卡:

添加一個共享文件夾,存放鏡像數據

 

更改虛擬磁盤存儲位置

 虛擬機的默認存儲位置是C:\Users\Administrator\.docker\machine\machines ,後期docke鏡像文件會不斷增長,爲了給系統盤減負,最好將磁盤移動到其餘位置。

  •  首先經過PowerShell或cmd終端中執行【docker-machine stop default】命令中止default虛擬機

  • 經過VirtualBox【管理】-》【虛擬介質管理】界面對虛擬磁盤進行復制

須要注意虛擬磁盤類型的選擇

    

  •  爲虛擬機添加新複製的虛擬磁盤,刪除以前的dick

 

  • 經過PowerShell或cmd終端中執行【docker-machine start default】命令中止default虛擬機

 

5、虛擬機內部設定:

修改配置文件:

一、進入shell界面:

ssh docker@192.168.99.101
tcuser
sudo vi /var/lib/boot2docker/profile

或者

docker-machine ssh default

二、修改編輯 /var/lib/boot2docker/profile 文件中的 EXTRA_ARGS 信息

sudo /etc/init.d/docker stop

docker info |grep "Docker Root Dir" 
#### /mnt/sda1/var/lib/docker
sudo mkdir -p /docker_data/var_lib
sudo cp -R /mnt/sda1/var/lib/docker /docker_data/var_lib/
mv /mnt/sda1/var/lib/docker /mnt/sda1/var/lib/docker_bak

sudo cp /var/lib/boot2docker/profile /var/lib/boot2docker/profile.bak
sudo sed -i '4i--insecure-registry=192.168.99.101:5000' /var/lib/boot2docker/profile
sudo sed -i '4i--registry-mirror=https://p31wiatp.mirror.aliyuncs.com/' /var/lib/boot2docker/profile
sudo sed -i '4i--registry-mirror=https://docker.mirrors.ustc.edu.cn/' /var/lib/boot2docker/profile
sudo sed -i '4i--registry-mirror=https://registry.docker-cn.com/' /var/lib/boot2docker/profile
sudo sed -i '4i--registry-mirror=http://hub-mirror.c.163.com/' /var/lib/boot2docker/profile
## 無論用  sudo sed -i '4i-g=/docker_data/var_lib/docker' /var/lib/boot2docker/profile
sudo sed -i '4i--log-opt max-size=100m' /var/lib/boot2docker/profile

sudo /etc/init.d/docker restart

6、搭建私庫:

docker pull hello-world
docker tag hello-world 192.168.99.101:5000/hello-world:latest
docker push 192.168.99.101:5000/hello-world:latest
curl http://192.168.99.101:5000/v2/_catalog
curl http://192.168.99.101:5000/v2/hello-world/tags/list
相關文章
相關標籤/搜索