Docker实践:Centos下安装Docker并简单的使用
1 環境介紹
?
版本信息:
[root@localhost]#? cat /proc/version
Linux version 3.10.0-514.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Nov 22 16:42:41 UTC 2016
[root@localhost jenkins]# cat? /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
?
# Centos系統是離線的,但是可以通過代理訪問網絡,否則,就無法pull Image了.
# 查看yum list中是否有docker安裝包:
[root@localhost home]# yum list | grep docker
docker.x86_64????????????????????????????? 2:1.12.6-32.git88a4867.el7.centos
docker-client.x86_64?????????????????????? 2:1.12.6-32.git88a4867.el7.centos
docker-common.x86_64?????????????????????? 2:1.12.6-32.git88a4867.el7.centos
…
[root@localhost home]#
2安裝Docker
# install
sudo yum install -y docker.x86_64
#? yum install docker
?
# 查看docker是否安裝成功
docker --version
?
# 開機自啟動, 好像開機啟動并不是很靈
sudo chkconfig docker on
# 查看docker daemon是否在運行
ps aux | grep docker
3設置代理
# following link is to resolve docker-runc not found issue,proxy is not necessary *#
ln -s /usr/libexec/docker/docker-proxy-current /usr/bin/docker-proxy
ln -s /usr/libexec/docker/docker-runc-current /usr/bin/docker-runc
?
#停止docker service(設置代理前,需要停止)
service docker stop
?
# 設置代理, 成功后,會自動啟動docker service
sudo HTTP_PROXY=http://ip:port /usr/bin/dockerd --userland-proxy=false &
4 Docker Service
# 啟動Docker Service
# 注: 設置代理時,Docker Service會自動啟動
service docker start
# 或者這種啟動方式
systemctl start docker.service
?
#停止docker service(設置代理前,需要停止)
service docker stop
# 或者這種停止方式
systemctl stop docker.service
?
# 查看服務狀態
systemctl status docker.service
?
# 查看docker daemon是否在運行
ps aux | grep docker
?
?
5 Image
# 下載Image,? 默認從docker.io下載,速度會比較慢
#?????????? 可以從daocloud.io中下載,速度會快一些.
# 我在公司, Centos上感覺不明顯, 在家里用ubuntu感覺特別明顯
docker pull centos
?
# 查詢倉庫中的Image
# --automated=false:?????? 僅顯示自動創建的鏡像
# --no-trunc=false:?? 不截斷顯示
# -s, --starts=0:??????? 指定星級以上
docker search -s 10 centos
?
# 查詢本地Image
docker images
?
# 刪除Image
?docker rmi docker.io/Ubuntu
6 運行Image
# 運行Image
?# 注意: 運行Image時, 需要關閉代理,重啟docker service,
?#????? 否則會遇到錯誤:container_linux.go:247: starting container process caused
?#????? "process_linux.go:334: running prestart hook 1 caused \"error running hook: exit status 1, stdout: , stderr: \""
#????????? /usr/bin/docker-current: Error response from daemon: invalid header field value "oci runtime error:
#????????? container_linux.go:247: starting container process caused \"process_linux.go:334:
#?????????? running prestart hook 1 caused \\\"error running hook: exit status 1, stdout: , stderr: \\\"\"\n".
?
# 方式1
sudo docker? run centos /bin/echo 'Hello World'
# 帶調試信息
sudo docker --debug=true run centos /bin/echo 'Hello World'
?
?
#方式2
[root@localhost home]# docker create centos
3e8185a9fb586e1b3f12fb1c69c2a22225df1e5505c9315e3b62743d489d2904
?
# 查看容器信息
[root@localhost home]# docker ps -a
CONTAINER ID??????? IMAGE?????????????? COMMAND???????????? CREATED???????????? STATUS????????????? PORTS?????????????? NAMES
3e8185a9fb58??????? centos????????????? "/bin/bash"???????? 5 seconds ago?????? Created???????????????????????????????? gigantic_franklin
[root@localhost home]# docker start 3e8185a9fb58
?
docker run -idt --name pcta-demon matthewx:pcta-matthewx
?
# 進入容器
docker attach pcta-demon
?
# 刪除容器
docker rm 3e8185a9fb58
?
7 卸載Docker
#centos卸載
yum list installed | grep docker
yum -y remove docker.x86_64?
yum -y remove docker-client.x86_64?
yum -y remove docker-common.x86_64?
# 如果/var/lib/docker刪除失敗,
# 請使用lsof |grep docker看看有哪些進程在使用,kill掉這些進程.
# 此處刪除應該是刪除pull的image等,所以也可以不刪除.
rm -rf /var/lib/docker
lsof |grep docker
轉載于:https://www.cnblogs.com/Rong-/p/7670709.html
總結
以上是生活随笔為你收集整理的Docker实践:Centos下安装Docker并简单的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态IP解析
- 下一篇: Centos 下添加开机自启动服务和脚本