目前的IT環境發生了很大的變化,有big server到vm server到docker,一步步的敏捷快速,更加合理的利用硬件資源,分離不一樣環境帶來的問題,簡化部署。linux
2016過年的這幾天就自學了一下docker,以及在工做中如何實踐這一技術提高IT管理效能。 git
學習的步驟分爲5步: github
docker相比過去的vm建立、啓動、關閉速度更快。dockerhub上有豐富的標準資源開箱即用。更加容易從開發到測試到生產環境的遷移、回滾。每一個容器都是沙箱同樣相互隔離互不影響。 web
目前docker只能運行在liunx下,也就說只能支持asp.net core版本,這個對於如今的項目是一個巨大的挑戰,由於我當時選擇用asp.net webform來搭建現有的項目,這個問題要如何解決,如何轉換成mvc項目,有沒有可能直接改成asp.net core版的支持跨平臺運行?工做量又多大?docker
橫向擴展很是屌,經過命令來循環複製N個container,幾分鐘就搞定了。 ubuntu
container指運行中的,image指非運行中的,每一個歷史記錄均可以是一個Image。一個image能夠運行爲多個container;能夠經過端口映射形式進行通訊。 windows
訪問的過程有點麻煩:windows docker client -> ubuntu(vmware)->docker host->docker container。過程當中還須要去docker hub上拉一個imager下來。須要將docker container的端口映射到docker host的主機端口上,而後再由windows(UA)訪問。 mvc
sudo -i app
輸入密碼 asp.net
root@linuxidc:~# gedit /etc/apt/sources.list
把下面的安裝源寫入
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
而後更新apt-get
root@linuxidc:~#apt-get update
root@linuxidc:~#apt-get install docker.io
root@linuxidc:~# service docker restart
git clone https://github.com/aspnet/Home.git aspnet-home
cd aspnet-home/samples/1.0.0-rc1-update1/HelloWeb
docker build -t myapp .
docker images
docker run -t -d -p 80:5004 myapp
docker ps
firefox localhost