摘要:如果查到的不是版的內(nèi)核,可以用來升級然后更新啟動加載器來加載新內(nèi)核完成安裝后,重啟宿主機(jī)來啟用新的內(nèi)核重啟之后,可以用確認(rèn)是否運(yùn)行了新版本內(nèi)核。如果是較低版本的系統(tǒng),需要先更新內(nèi)核。然后重復(fù)上面的步驟即可。
本人的學(xué)習(xí)筆記,主要是對《我的第一本Docker書》、《Docker —— 從入門到實(shí)踐》的學(xué)習(xí)記錄,并結(jié)合其他各種資源的學(xué)習(xí)。這次記錄了4種常見系統(tǒng)的Docker安裝方法,這些系統(tǒng)我不是都有,但是也記錄一下,也許以后用得上。
支持的平臺Docker目前已經(jīng)支持非常多的Linux平臺,Ubuntu、Red Hat企業(yè)版Linux、Debian、CentOs、Fedora、Oracle Linux等。如果使用虛擬環(huán)境,甚至可以在OS X 和 windows中運(yùn)行。
安裝的條件Docker目前只能在64位CPU架構(gòu)的計(jì)算機(jī)上運(yùn)行(目前只能是x86_64 、amd64)。
Linux 3.8 或 更高版本的內(nèi)核。3.8之前的版本也能運(yùn)行,但效果不同,遇到問題時大家都建議你升級。
內(nèi)核必須支持一些是和的存儲驅(qū)動(strage drive),例如:
Device Manage
AUFS
vfs
btrfs
默認(rèn)存儲驅(qū)動通常是Device
內(nèi)核必須支持并開啟cgroup和命名空間(banespace)功能
在Ubuntu中安裝Docker版本支持:Ubuntu 12.04 LTS 及之后的 64位版本 。但這并不意味著除此之外的Ubuntu或Debian不能按照Docker,只要有適當(dāng)?shù)膬?nèi)核和Docker所必須的支持,其他版本也能安裝,但是不能得到官方的支持,遇到BUG無法得到官方的修復(fù)。
現(xiàn)假設(shè)我安裝好的Ubuntu 12.04 LTS 64位電腦為darknight.example.com。
檢查前提條件 內(nèi)核確認(rèn)依據(jù)安裝能滿足要求的Linux內(nèi)核。通過uname命令查詢。
$ uname -a
Ubuntu 12.04.3及以上版本的默認(rèn)內(nèi)核是3.8.0 x86_64。
如果查到的不是3.8版的內(nèi)核,可以用apt-get來升級:
$ sudo apt-get update $ sudo apt-get install linux-headers-3.8.0-27-generic
然后更新Grub啟動加載器來加載新內(nèi)核:
$ sudo update-grub
完成安裝后,重啟宿主機(jī)來啟用新的3.8內(nèi)核:
$sudo reboot
重啟之后,可以用 uname -a確認(rèn)是否運(yùn)行了新版本內(nèi)核。
檢查Device Mapper這里使用Device Mapper昨晚存儲驅(qū)動。2.6.9版本及以上的Linux內(nèi)核已經(jīng)集成了Device Mapper,并提供了一個將塊設(shè)備映射到高級虛擬設(shè)備的方法。Device Mapper支持“自動精簡配置”(thin-provisioning)的概念,可以在一種文件系統(tǒng)中存儲多臺虛擬設(shè)備(Docker鏡像中的層)。所以很適合做Docker的存儲驅(qū)動。
Ubuntu 12.04 以上都裝好了,可以用一下代碼檢查:
$ ls l /sys/class/misc/device-mapper
如果沒有出現(xiàn)device-mapper的信息,可以加載 dm_mod 模塊:
$ sudo modprobe dm_mod
cgroup 和命名空間自2.6版本已經(jīng)開始集成在Linux內(nèi)核中了。
安裝Docker通過Docker源安裝最新版本。要安裝最新的 Docker 版本,首先需要安裝 apt-transport-https 支持,之后通過添加源來安裝。
$ sudo apt-get install apt-transport-https $ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 $ sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list" $ sudo apt-get update $ sudo apt-get install lxc-docker
如果是較低版本的 Ubuntu 系統(tǒng),需要先更新內(nèi)核。
$ sudo apt-get update $ sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring $ sudo reboot
然后重復(fù)上面的步驟即可。
安裝之后啟動 Docker 服務(wù)。
$ sudo service docker start
評論中一網(wǎng)友的建議:
ubuntu下,用以下這種腳本方式安裝最方便,來源于sameersbn/docker-gitlab官方說明:
sudo apt-get purge docker.io curl -s https://get.docker.io/ubuntu/ | sudo sh sudo apt-get update sudo apt-get install lxc-dockerOS X
使用 Boot2Docker 工具。
Boot2Docker 是一個極小的虛擬機(jī),同時提供了一個包裝腳本(wrapper script)對該虛擬機(jī)進(jìn)行管理。
安裝Boot2Docker的條件:
VirtualBox
Docker客戶端
安裝Boot2Docker到GitHub安裝,或者官網(wǎng)下載安裝。官網(wǎng)有個視頻可學(xué)。
啟動Boot2Docker進(jìn)入系統(tǒng)的Application文件夾,找到Boot2Docker打開
測試Boot2Docker通過本機(jī)的Docker客戶端連接到Boot2Docker虛擬機(jī)中運(yùn)行Docker守護(hù)進(jìn)程,來測試Boot2Docker安裝程序是否正常運(yùn)行
$ docker info
當(dāng)顯示出Docker信息時就是安裝成功運(yùn)行了。
Windows與OS X一樣,用Boot2Docker安裝。官網(wǎng)、GitHub。
同樣需要兩個條件:
VirtualBox
Docker客戶端
下載好后運(yùn)行腳本即可。
測試Boot2Docker也是用以下命令測試:
$ docker info
當(dāng)顯示出Docker信息時就是安裝成功運(yùn)行了。
CentOS對于 CentOS6,可以使用 EPEL 庫安裝 Docker,命令如下
$ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm $ sudo yum install docker-io CentOS7
CentOS7 系統(tǒng) CentOS-Extras 庫中已帶 Docker,可以直接安裝:
$ sudo yum install docker
安裝之后啟動 Docker 服務(wù),并讓它隨系統(tǒng)啟動自動加載。
$ sudo service docker start $ sudo chkconfig docker on
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26366.html
摘要:作為面試官,我是如何甄別應(yīng)聘者的包裝程度語言和等其他語言的對比分析和主從復(fù)制的原理詳解和持久化的原理是什么面試中經(jīng)常被問到的持久化與恢復(fù)實(shí)現(xiàn)故障恢復(fù)自動化詳解哨兵技術(shù)查漏補(bǔ)缺最易錯過的技術(shù)要點(diǎn)大掃盲意外宕機(jī)不難解決,但你真的懂?dāng)?shù)據(jù)恢復(fù)嗎每秒 作為面試官,我是如何甄別應(yīng)聘者的包裝程度Go語言和Java、python等其他語言的對比分析 Redis和MySQL Redis:主從復(fù)制的原理詳...
摘要:作為面試官,我是如何甄別應(yīng)聘者的包裝程度語言和等其他語言的對比分析和主從復(fù)制的原理詳解和持久化的原理是什么面試中經(jīng)常被問到的持久化與恢復(fù)實(shí)現(xiàn)故障恢復(fù)自動化詳解哨兵技術(shù)查漏補(bǔ)缺最易錯過的技術(shù)要點(diǎn)大掃盲意外宕機(jī)不難解決,但你真的懂?dāng)?shù)據(jù)恢復(fù)嗎每秒 作為面試官,我是如何甄別應(yīng)聘者的包裝程度Go語言和Java、python等其他語言的對比分析 Redis和MySQL Redis:主從復(fù)制的原理詳...
摘要:一個鏡像可以放到另一個京廣線的頂部,位于下面的鏡像稱為父鏡像,最底部的稱為基礎(chǔ)鏡像。鏡像是基于聯(lián)合文件系統(tǒng)的一種層式的結(jié)構(gòu),由一系列指令一步步構(gòu)建處理。拉取鏡像使用命令啟動一個鏡像時,會檢查本地是否存在該鏡像。 什么是鏡像 Docker鏡像時由文件系統(tǒng)疊加而成,最底端是一個引導(dǎo)文件系統(tǒng),即bootfs,這很像典型的Linux/Unix的引導(dǎo)文件系統(tǒng)。Docker用戶幾乎永遠(yuǎn)不會和引導(dǎo)...
摘要:郵件激活后,可以測試登錄這條命令會完成登錄,并將認(rèn)證信息報(bào)錯起來供后面使用。所以先用命令退出容器,再運(yùn)行命令命令中,指定了要提交的修改過的容器的目標(biāo)鏡像倉庫鏡像名。提交的知識創(chuàng)建容器的鏡像與容器的當(dāng)前狀態(tài)之間的差異部分,很輕量。 假期快要結(jié)束了,干點(diǎn)正事,接著Docker的學(xué)習(xí)。 構(gòu)建鏡像 構(gòu)建鏡像的兩種方法: 使用docker commit 命令 使用docker build...
閱讀 565·2023-04-26 01:39
閱讀 4590·2021-11-16 11:45
閱讀 2646·2021-09-27 13:37
閱讀 925·2021-09-01 10:50
閱讀 3649·2021-08-16 10:50
閱讀 2251·2019-08-30 15:55
閱讀 3024·2019-08-30 15:55
閱讀 2286·2019-08-30 14:07