docker的安装

更多版本的安装方式可以查看电子书docker-实战

rhel版本(在root权限下)

  1. 添加yum源
    vi /etc/yum.repos.d/docker.repo 新建配置文件
    [dockerrepo]
    name=Docker Repository
    baseurl=http://yum.dockerproject.org/repo/main/centos/7/
    enabled=1
    gpgcheck=0

  2. 安装
    yum install docker-engine -y

  3. 启动Docker服务
    systemctl start docker

  4. 检测是否安装成功

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
[root@ip-172-31-29-22 yum.repos.d]# docker version
Client:
Version: 17.05.0-ce
API version: 1.29
Go version: go1.7.5
Git commit: 89658be
Built: Thu May 4 22:06:25 2017
OS/Arch: linux/amd64


Server:
Version: 17.05.0-ce
API version: 1.29 (minimum version 1.12)
Go version: go1.7.5
Git commit: 89658be
Built: Thu May 4 22:06:25 2017
OS/Arch: linux/amd64
Experimental: false

[root@ip-172-31-29-22 yum.repos.d]# docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.05.0-ce
Storage Driver: overlay
Backing Filesystem: xfs
Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 9048e5e50717ea4497b757314bad98ea3763c145
runc version: 9c2d8d184e5da67c95d601382adf14862e4f2228
init version: 949e6fa
Security Options:
seccomp
Profile: default
Kernel Version: 3.10.0-693.11.6.el7.x86_64
Operating System: Red Hat Enterprise Linux Server 7.4 (Maipo)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 990.8MiB
Name: ip-172-31-29-22.ap-northeast-1.compute.internal
ID: 6C4S:W4VA:MSIK:TGZC:BHYU:3AHR:FJX7:44SO:467J:4ZNL:7T67:3GYK
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

centOS版本(在root权限下)

卸载旧版本的

yum remove docker docker-common docker-selinux docker-engine

安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

更新yum为国内源

yum-config-manager –add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

更新yum缓存并且安装docker

yum makecache fast
yum install docker-ce

centOS下使用脚本安装

curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh –mirror Aliyun

docker的初次使用

运行测试程序 hello-wrold

docker run hello-world

linux设置国内源

1
2
3
4
5
6
7
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

$ sudo yum-config-manager \
--add-repo \
https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

docker 镜像加速

  1. 新建文件
    新版的 Docker 使用 /etc/docker/daemon.json(Linux) 或者 %programdata%\docker\config\daemon.json(Windows) 来配置 Daemon
  2. 更改文件内容
    {
    “registry-mirrors”: [“http://hub-mirror.c.163.com"]
    }
  3. 重启docker服务

docker的基本命令

  1. Docker 以 ubuntu15.10 镜像创建一个新容器,然后在容器里执行 bin/echo “Hello world”,然后输出结果。
    docker run ubuntu:15.10 /bin/echo “Hello world”
  2. 通过docker的两个参数 -i -t,让docker运行的容器实现”对话”的能力
    docker run -i -t ubuntu:15.10 /bin/bash
  3. 以进程方式运行的容器并且循环输出hello world
    docker run -d ubuntu:15.10 /bin/sh -c “while true; do echo hello world; sleep 1; done”

    返回的长串字符为容器ID
    在容器内使用docker logs命令,查看容器内的标准输出


    使用 docker stop 命令来停止容器

docker 查询状态

docer stats -a

docker 查询命令用法

docker

docker 内的镜像查询

docker images

docker 内磁盘控件占用情况

docker system df

查看虚悬镜像

docker image ls -f dangling=true
虚悬镜像已经失去了利用价值
所以可以通过 docker image prune 命令来进行删除

docker 查看实时系统日志

docker events

docker 查看指定镜像的历史版本信息

docker history 镜像名

docker 查看容器的运行日志

docker logs 容器

docker 镜像的导入

  • 使用docker load
  • 使用docker import(会丢弃历史数据但数据量小)

清理所有处于终止状态的容器(批量)

docker container prune