Linux中安装Docker环境

标题Linux中安装Docker环

整体流程:卸载 -> 准备 -> 安装 -> 测试
Docker官网:http://www.docker.com
一、卸载旧版(可选)
目的是确保安装最新的Docker,只有重新构建Docker后才能修改内存。
1.停止docker服务
sudo systemctl stop docker
2.查看已安装的docker软件包
sudo yum list installed | grep docker
3.卸载已安装的docker软件包
sudo yum remove containerd.io.x86_64 docker* -y
4.删除Docker数据和配置文件
sudo rm -rf /var/lib/docker # 存放容器、镜像、卷、网络的配置
sudo rm -rf /var/lib/containerd # 管理docker容器生命周期的组件(docker容器的运行环境)
sudo rm -rf /etc/docker # docker的配置文件

二、安装准备
1.查看系统版本
Docker 需要至少 CentOS 7 作为基础操作系统,且建议系统内核版本不低于3.10
cat /etc/centos-release
uname -a
2.安装yum-utils
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
注:device-mapper-persistent-data是Linux下存储技术(DeviceMapper)的驱动
lvm2的作用则是创建逻辑磁盘分区
3.设置docker安装源
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i ‘s+download.docker.com+mirrors.aliyun.com/docker-ce+’ /etc/yum.repos.d/docker-ce.repo
sudo yum makecache fast # 提前在本地创建软件包索引缓存,以此来提高搜索和安装软件的速度

三、安装Docker社区版
1.安装命令
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
注:
ce版为免费的社区版,ee版为收费的企业版
docker-ce-cli 是 Docker Engine 的命令行界面
containerd.io 是容器运行时的基本组件,负责管理容器的生命周期、镜像管理和存储
docker-buildx-plugin 官方提供的构建工具,可快速、高效地构建 Docker 镜像,并支持跨平台
docker-compose-plugin 容器编排插件。允许通过一个配置文件来描述服务,并通过命令来管理这些服务
2.启动服务
sudo systemctl start docker # 启动docker服务
注意:docker应用需要用到各种端口,因此之后每启动一个容器都应逐一去防火墙开放对应端口,否则容器无法启动,
为避免因此带来的繁琐操作,建议在启动docker服务前将防火墙关闭!
sudo systemctl stop firewalld # 关闭防火墙
sudo systemctl disable firewalld # 禁止防火墙开机自动启动
3.镜像加速(可选)
docker官方镜像仓库网速较差,最好设置国内镜像站点
依次执行如下命令(参考:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://bubbxc3j.mirror.aliyuncs.com”]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

四、测试安装
docker -v # 查看docker引擎版本
docker compose version # 查看docker-compose版本

docker pull hello-world # 拉取镜像
docker run hello-world # 启动容器

标题Docker核心知识

1.什么是Docker
简介:Docker是一个开源的容器引擎,用于构建、部署和管理应用程序和相关的服务。
起源:2010年DotCloud公司创始人Solomon Hykes(所罗门‧海克斯,1984年)发起一项公司内部的项目
使用Google公司推出的Go语言进行开发,最初是在Ubuntu 12.04上实现的。
发展:2013年3月开源,主要项目代码在GitHub上进行维护,后来还加入了 Linux 基金会,
并成立"开放容器联盟"。
注意:Docker首选推荐安装在linux系统上,Windows并不推荐(需要使用Hyper-V + Docker-Desktop)

2.Docker与传统虚拟技术对比
传统虚拟机技术是通过虚拟软件虚拟出一套硬件,然后在其上安装一个操作系统,最后在该系统上再运行所需的应用;
Redis7(依赖库、Redis7安装包、配置)
|- 虚拟系统 linux +1
|- 虚拟硬件 CPU、内存、声卡、网卡…… +1
|- 虚拟软件 vmware、vb +1
|- 宿主系统 windows
|- 宿主硬件 计算机
容器没有自己的内核,应用直接运行于宿主的内核,而且也没有进行硬件虚拟。
Redis7容器
|- Docker引擎
|- 宿主系统
|- 宿主硬件

因此容器要比传统虚拟机更为轻便!
特性 容器 虚拟机
启动 秒级 分钟级
硬盘使用 一般为 MB 一般为 GB
性能 接近原生 弱于原生
系统支持量 单机支持上千个容器 一般几十个

3.仓库
仓库,Registry
镜像构建完成后,可以很容易的在当前宿主机上运行。
但是,如果需要在其它服务器上使用这个镜像,
需要一个集中的存储、分发镜像的服务,DockerHub就是这样的服务。
Docker-Hub地址(远程仓库):https://hub-stage.docker.com/ (旧:https://hub.docker.com/)
本地镜像仓库: /var/lib/docker/image

4.镜像
镜像,Image。
镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,
还包含了一些运行时的配置参数(如环境变量、用户等)。
4.1 搜索镜像
docker search 镜像名 --limit 5 --no-trunc
4.2 查看镜像
docker images 或者 docker image ls
4.3 下载镜像
docker pull 镜像名:版本
4.4 删除镜像
docker rmi 镜像名:版本 或 镜像ID # 被删镜像应从未运行过任何容器
docker rmi -f 镜像名:版本 或 镜像ID # 强制删除镜像(不删除对应的容器)

5.容器
容器,Container。
镜像(Image)和容器(Container)的关系,就和OOP设计中"类"和"对象"的关系类似,
镜像是模板,容器是镜像运行时的实例,一个镜像可以被多次创建为不同容器。
5.1 查看容器
docker ps -a
5.2 运行容器
docker run --name 容器名 -itd 镜像名
注意: 若省略容器名,Docker会自动分配一个(有趣的)容器名字;
-i(interaction)交互模式运行容器,-t(terminal)为容器分配一个伪终端;
-d(daemon)守护进程运行容器(exit退出交互模式后容器仍运行),针对一些自带运行进程的应用;
若本地仓库没有对应镜像会自动从远程仓库下载,否则出错!
5.3 进入容器
docker exec -it 容器名字 或 容器ID /bin/bash
5.4 停止容器
docker stop/kill 容器名字 或 容器ID
5.5 删除容器
docker rm 容器名 或 容器ID
docker container prune -f
注意:启动中的容器无法删除!

  • 12
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值