docker介绍
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
使用场景
-
Web 应用的自动化打包和发布。
-
自动化测试和持续集成、发布。
-
在服务型环境中部署和调整数据库或其他的后台应用。
-
从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
容器和传统虚拟机的对比
容器 | 虚拟机 | |
启动时间 | 秒 | 分钟 |
资源消耗 | 几乎无 | 至少消耗50%(资源消耗) |
硬盘空间占用单位 | MB | GB |
系统支持 | 上千个 | 几十个 |
隔离性 | 资源限制 | 完全隔离(物理隔离) |
性能 | 接近云原生 | 弱于云原生 |
docker的优点
Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。
1、快速,一致地交付您的应用程序
2、响应式部署和扩展
3、在同一硬件上运行更多工作负载
docker安装方法一
卸载旧版本
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
使用dockers仓库进行安装
使用官方地址速度慢,所以这里用的是阿里云
$ sudo yum-config-manager \ --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装最新版本的 Docker Engine-Community 和 containerd,或者转到下一步安装特定版本:
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
(如果提示您接受 GPG 密钥,请选是。
如果启用了多个 Docker 仓库,则在未在 yum install 或 yum update 命令中指定版本的情况下,进行的安装或更新将始终安装最高版本,这可能不适合您的稳定性需求。)
Docker 安装完默认未启动。并且已经创建好 docker 用户组,但该用户组下没有用户。
要安装特定版本的 Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
1、列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序。
$ yum list docker-ce --showduplicates | sort -r
启动doekr
systemctl start docker
卸载安装包
yum remove docker-ce
删除镜像、容器、配置文件等内容
rm -rf /var/lib/docker
docker安装方法二
安装准备前提
iptables -F setenforce 0 systemctl stop firewalld
要保证可以上网
ping baidu.com
yum clean all && yum makecache fast
默认yum安装
yum -y install docker
systemctl start docker 启动docker
systemctl enable docker 设置开机自启
docker version 查看dockerb版本
安装docker-ce
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum -y install yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
ls /etc/yum.repos.d/
yum -y install docker-ce
systemctl start docker
systemctl enable docker
配置阿里云镜像加速
为什么要配置阿里云镜像加速?
因为直接访问国外的网站会很慢
docker info 查看docker 信息 查看有没有换成阿里云的
docker基础操作
docker version 查看版本信息
docker info 查看详细信息
docker search 镜像 //从Docker Hub中搜索镜像
例如:docker search nginx //搜索nginx镜像
docker pull 镜像:标签
例如:docker pull nginx //没有写标签就是默认,下载最新的版本
docker images 镜像名:标签
例如:docker images nginx //查询nginx镜像
docker images 查询所有镜像
回显的信息
- REPOSITORY 镜像所属仓库
- TAG 镜像的标签信息
- IMAGE ID 镜像的唯一ID
- CREATED 镜像创建时间
- SIZE 镜像大小
docker inspect 镜像:标签或镜像id //获取镜像详细信息
例如:docker inspect centos //查看centos 详细信息
为镜像添加新名称和标签
docker tag 镜像名:标签 新名称:标签
例如:docker tag nginx:latest nginx:test
注意 只是改了镜像名和标签,其它如id都没有
将镜像拉到本地文件中
docker save 镜像:标签 > 本地文件
docker save centos:7 > centos7.tgz
将本地文件上传本地镜像仓库
cat 本地文件 | docker import - 镜像名:标签