Docker 主要特性:

  • 文件、资源、网络隔离;
  • 变更管理、日志记录;
  • 写时复制(采用写时复制方式创建根文件系统);

一、安装 Docker

以下操作均在 CentOS 系统上进行。

  1. 先删除旧的版本

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

  1. 安装必须的依赖

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

  1. 添加 stable 的 Docker-ce 的源

yum-config-manager —add-repo https://download.docker.com/linux/centos/docker-ce.repo

  1. 安装 docker-ce

yum install docker-ce docker-ce-cli containerd.io

安装完毕后,可以测试下 docker 是否安装成功。

  • 开启 docker

systemctl start docker

  • 查看 docker 的运行状态

systemctl status docker

  • 运行官方提供的 docker 测试应用

docker run hello-world

二、镜像加速

  1. 列出容器

docker ps

列出所有的容器(-a: 包括未运行的)

docker ps -a

  1. 镜像加速

在中国区,需添加下中国官方镜像加速。

在/etc/docker/daemon.json 添加如下配置:

  1. {
  2. "registry-mirrors": ["https://registry.docker-cn.com"]
  3. }

修改保存后重启 Docker 以使配置生效。

systemctl daemon-reload systemctl restart docker

  • daemon-reload 命令会做很多的事情,其中之一是重新生成依赖树(也就是 unit 之间的依赖关系),所以当你修改了 unit 配置文件中的依赖关系后如果不执行 daemon-reload 命令是不会生效的。

三、Docker 常用命令

  1. 列出本地镜像

    1. docker images
  2. 删除所有未被 tag 标记和未被容器使用的镜像

    1. docker image prune -a
  3. 删除所有停止运行的容器

    1. docker container prune
  4. 登录到 Docker 容器内

    1. docker exec -it 容器ID bash
  5. 获取容器的日志

    1. docker logs [OPTIONS] CONTAINER

    查看容器 mynginx 从2016年7月1日后的最新10条日志。

    1. docker logs --since="2016-07-01" --tail=10 mynginx