4 回答

TA貢獻1810條經驗 獲得超5個贊
開始安裝docker之旅:
?。踨oot@localhost ~]# uname -r
2.6.32-431.el6.x86_64
?。踨oot@localhost ~]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel \r on an \m
注意其他的源可能導致你的內核和docker的版本不一致,需要升級內核至3.x。
安裝:
?。踨oot@localhost ~]# rpm -ivh
Retrieving
warning: /var/tmp/rpm-tmp.JN76fI: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing.。。 ########################################### [100%]
1:epel-release ########################################### [100%]
?。踨oot@localhost ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
?。踨oot@localhost ~]# yum -y install docker-io
啟動并設置開機自動啟動
?。踨oot@localhost ~]# service docker start
Starting cgconfig service: [確定]
Starting docker: [確定]
?。踨oot@localhost ~]# chkconfig docker on
獲取cnetos鏡像
[root@localhost ~]# docker pull centos:latest
centos:latest: The image you are pulling has been verified
511136ea3c5a: Pull complete
5b12ef8fd570: Pull complete
34943839435d: Downloading [===》 ] 18.38 MB/232.5 MB 1h7m49s
#官方安裝方式docker pull imagename從docker的索引中心下載,imagename是鏡像名稱,例如docker pull Ubuntu就是下載base ubuntu并且tag是latest。
我們還可以搜索基于 Fedora 和 Ubuntu 操作系統的容器。
[root@localhost ~]# docker search ubuntu
?。踨oot@localhost ~]# docker search fedora
查看docker鏡像
[root@localhost ~]# docker images centos
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos latest 34943839435d Less than a second ago 224 MB
運行docker運行shell
?。踨oot@localhost ~]# docker run -i -t centos /bin/bash
[root@2ce733141ece /]#
?。踨oot@2ce733141ece /]#
[root@2ce733141ece /]#
?。踨oot@2ce733141ece /]#
停止容器
[root@localhost ~]# docker stop 《CONTAINER ID》
刪除所有容器
docker rm $(docker ps -a -q)
查看docker的子命令,直接敲docker 或完整的docker help 就可以
常用命令
總結一下常用命令:
其中《》闊起來的參數為必選,[]闊起來為可選
docker version 查看docker的版本號,包括客戶端、服務端、依賴的Go等
docker info 查看系統(docker)層面信息,包括管理的images, containers數等
docker search 在docker index中搜索image
docker pull 從docker registry server 中下拉image
docker push 推送一個image或repository到registry
docker push :TAG 同上,指定tag
docker inspect 查看image或container的底層信息
docker images TODO filter out the intermediate image layers (intermediate image layers 是什么)
docker images -a 列出所有的images
docker ps 默認顯示正在運行中的container
docker ps -l 顯示最后一次創建的container,包括未運行的
docker ps -a 顯示所有的container,包括未運行的
docker logs 查看container的日志,也就是執行命令的一些輸出
docker rm 刪除一個或多個container
docker rm `docker ps -a -q` 刪除所有的container
docker ps -a -q | xargs docker rm 同上, 刪除所有的container
docker rmi 刪除一個或多個image
docker start/stop/restart 開啟/停止/重啟container
docker start -i 啟動一個container并進入交互模式
docker attach attach一個運行中的container
docker run 使用image創建container并執行相應命令,然后停止
docker run -i -t /bin/bash 使用image創建container并進入交互模式, login shell是/bin/bash
docker run -i -t -p 將container的端口映射到宿主機的端口
docker commit [repo:tag] 將一個container固化為一個新的image,后面的repo:tag可選
docker build
尋找path路徑下名為的Dockerfile的配置文件,使用此配置生成新的image
docker build -t repo[:tag] 同上,可以指定repo和可選的tag
docker build - 使用指定的dockerfile配置文件,docker以stdin方式獲取內容,使用此配置生成新的image
docker port 查看本地哪個端口映射到container的指定端口,其實用docker ps 也可以看到。
上面就是CentOS6.5安裝Docker的方法介紹了,在安裝Docker的時候,需要升級內核至3.x,以免版本不一樣,本文除了介紹Docker的安裝,還介紹了其常用的命令,希望對你有所幫助。
,

TA貢獻1816條經驗 獲得超4個贊
官方鏡像下的簡單示例 本節中,將創建一個 Container 來運行 Docker 的官方 Registry 鏡像。你將推送(Push)一個鏡像到這個 Registry 服務器,然后再從該 Registry 中拉取(Pull)同一個鏡像。 這是個很好的練習,有助于理解客戶端與本地 Regis

TA貢獻1805條經驗 獲得超9個贊
避免Docker容器啟動腳本運行后自動退出的解決法dockerrun指定的命令如果不是那些一直掛起的命令(比如運行top,不斷echo),就是會自動退出的。-d命令是設置detach為true,根據官方的文檔,意思是讓這個命令在后臺運行,但并不是一直運行(我們在一個正常的LinuxTerminal中運行/bin/bash,運行完了也就完了,不會一直掛著等待響應的,所以確實沒法用daemon方式來跑/bin/bash)。這個地方官方早期和現在的文檔也確實有些前后不一致,現在是detach,早期的文檔說指定-d以daemon方式來運行容器,可能存在一定的誤解。另外,如果你需要跑容器里的bash,直接運行dockerrun-i-tCONTAINER_NAME/bin/bash就可以了,如果覺得參數比dockerattach多,可以設置一個別名(alias)來解決:aliasdockerbash='dockerrun-i-tCONTAINER_ID/bin/bash'設置好別名后,直接運行dockerbash就可以進入容器的bash了
添加回答
舉報