學前須知:
1.docker必須運行在一個linux環境下,如果你是windows上面運行,他會幫你建一個linux虛擬機。
2.docker是一個容器引擎,在容器的操作不會影響到本地磁盤。(沙箱機制)
首先,安裝docker,我這裏是window7,裝的是DockerToolbox,裝完會在桌面生成三個快捷方式如下:
第一個是docker的shell窗口,需要引用到git的bash.exe操作窗口,啓動成功的圖是這樣的:
第二個是虛擬機管理工具,引用的是Oracle的VM VirtualBox,界面如下:
安裝好會默認裝上一個default的虛擬機作爲docker的運行環境(也就是說docker只能在linux上運行)。
第三個工具Kitematic (Alpha),據瞭解是docker圖形化界面,我沒有過多瞭解,想想應該很強,有時間瞭解下。
這時候docker在Windows上已經裝好了,開始拉取一個鏡像,這裏使用了阿里雲的容器加速,詳參
https://cr.console.aliyun.com/?spm=5176.166170.863063.btn1cr3.afaa217f0b8T2m#/accelerator
docker-machine create --engine-registry-mirror=https://0cpdanzt.mirror.aliyuncs.com -d virtualbox test
創建一臺安裝有Docker環境的Linux虛擬機,指定機器名稱爲test,同時配置Docker加速器地址。
也可以改 /etc/docker/daemon.json 來加速已有的虛擬機。內容如下
{
"registry-mirrors": ["https://0cpdanzt.mirror.aliyuncs.com"]
}
虛擬機弄好了,開始找你想要的鏡像吧,我這裏使用的是centos最新一版的
進入到我們的虛擬機 docker-machine ssh test
查找鏡像 docker search centos
拉取鏡像 docker pull centos
有鏡像了,查看一下docker images
49f是我剛拉下來的鏡像,07e是我裝好自己的環境後提交的鏡像。
docker run -d -i -t <imageID> /bin/bash 啓動鏡像生成一個容器
啓動好了會把容器id(ContainerID)返回給你,記住21f就行了
顯示當前運行的容器docker ps(-a 顯示所有)
進入容器 docker attach <ContainerID>
現在可以爲所欲爲了,比如這裏我們裝上一個ssh,ifconfig,裝完之後想保存下環境,這時候需要提交併生成一個新的鏡像:
#退出,但不停止容器
Ctrl+P+Q
#回到Docker下面,停止容器
docker stop <容器ID>
#提交當前容器到鏡像
docker commit <容器ID> <NAME/VERSION>
#啓動新容器,並且進行端口映射
docker run -itd -p 50001:22 <剛纔提交的鏡像ID> /bin/bash
這時候可以通過宿主機的50001進入我們剛剛提交的那個容器了。
下次啓動需要選擇一個固化的鏡像,所以退出後記得提交鏡像哦。