CentOS7 安装Docker
官方文档地址:https://docs.docker.com/engine/install/centos/
镜像安装包地址:https://hub.docker.com/
1.Docker简介
-
虚拟化容器技术。
Docker基于镜像,可以秒级启动各种容器。每一种容器都是一个完整的运行环境,容器之间互相隔离。 -
Docker 包括三个基本概念:
镜像(Image):Docker 镜像,就相当于是一个 root 文件系统。比如官方镜 像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
容器(Container):镜像和容器的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。 -
Docker 分为 CE 社区版 和 EE 企业版。
适用版本
Docker要求CentOS系统的内核版本高于3.10
uname -r
2.卸载已安装的docker版本
若首次安装可跳过该步骤
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
3.更新yum
确保yum更新到最新版本
yum update
4.建立仓库
##安装docker所需的安装包
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
## 建立Docker仓库 (映射仓库地址)
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
缓存软件包信息(可选):
将软件包信息提前在本地缓存一份,用来提高搜索安装软件的速度
yum makecache fast
5.安装Docker引擎
yum install docker-ce docker-ce-cli containerd.io
6.启动Docker
Docker应用需要用到各种端口,逐一去修改防火墙设置。非常麻烦,因此建议大家直接关闭防火墙。
关闭防火墙!
# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
#查看是否关闭防火墙
systemctl status firewalld
启动docker
systemctl start docker # 启动docker服务
systemctl stop docker # 停止docker服务
systemctl restart docker # 重启docker服务
systemctl status docker #查看docker状态
docker version #查看docker版本
7.配置镜像加速
docker官方镜像仓库网速较差,我们需要设置国内镜像服务:
参考链接:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
#创建文件
mkdir -p /etc/docker
#在文件夹内新建一个daemon.json文件
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://akchsmlh.mirror.aliyuncs.com"]
}
EOF
重新加载文件
#重新加载文件
systemctl daemon-reload
#重新启动docker
systemctl restart docker
8.测试docker
运行hello-world镜像
到这里就基本结束了
9.一些Docker镜像命令
这里补充一些镜像的基础命令,方便学习
#卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
#删除资源
rm -rf /var/lib/docker
#查看本机的docker镜像
docker images
#拉取镜像 tag版本 不加版本号,默认拉取最新的
docker pull 镜像名
docker pull 镜像名:tag
#保存镜像
docker save 镜像名/镜像ID -o 镜像保存的名字 镜像保存的tag
例如:docker save -o redis.tar redis:latest
#删除镜像
docker rmi -f 镜像名/镜像ID
#加载镜像
docker load -i 镜像保存文件位置
例如:docker load -i redis.tar
#启动docker
systemctl start docker
#重启docker服务
systemctl restart docker
#关闭docker
systemctl stop docker
#守护进程重启
sudo systemctl daemon-reload
#查看版本
docker -v
#查看启动进程
docker ps
#设置开机自启
systemctl enable docker
#重启镜像文件
docker restart mysql
docker restart redis
#设置docker镜像自动启动
docker update redis --restart=always
docker update mysql --restart=always
#进入镜像内部控制台
docker exec -it mysql /bin/bash
10.docker-compose安装
10.1 Compose介绍
Docker Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose不再需要使用shell脚本来启动容器。( 个人理解 简单来说,一种启动镜像的命令方式 )
10.2安装
- 下载docker-compose 的二进制文件安装
Linux 上我们可以从 Github 上下载它的二进制包来使用
最新发行的版本地址
$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
要安装其他版本的 Compose,请替换 v2.18.1。
- 将可执行权限应用于二进制文件:
$ sudo chmod +x /usr/local/bin/docker-compose
- 创建软链:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
如果没有此步骤,会找不到docker-compose 命令(docker-compose命令 需要在所在目录里启动)
- 测试是否安装成功
$ docker-compose version
如上