【2.0】Docker安装与使用

发布时间 2023-08-29 15:57:41作者: Chimengmeng

【一】卸载Docker

  • 如果之前已经安装了Docker,可以按照以下步骤进行卸载:
yum remove docker docker-common docker-selinux docker-engine
rm -rf /var/lib/docker

【二】更新yum包到最新版本

  • 执行以下命令将yum包更新至最新版本:
sudo yum update

【三】安装所需软件包

  • 执行以下命令安装所需的软件包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  • 其中,yum-utils提供了yum-config-manager工具,而device-mapper-persistent-data和lvm2是devicemapper驱动所需的依赖软件包。

【四】设置阿里云作为yum源

  • 执行以下命令将yum源设置为阿里云镜像源:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

【五】安装Docker

  • 执行以下命令安装Docker:
sudo yum install -y docker-ce

【六】查看安装的Docker版本

  • 执行以下命令查看安装的Docker版本:
docker -v

【七】启动Docker服务

  • 执行以下命令启动Docker服务:
systemctl start docker

【八】拉取镜像

  • 可以使用以下命令拉取常用的镜像,如:

    • centos:7

    • redis

    • mysql:5.7

  • 例如,拉取centos:7镜像:

docker pull centos:7

【九】查看本地镜像

  • 执行以下命令可以查看本地已经下载的Docker镜像:
docker images

【十】运行容器

  • 可以通过运行Docker镜像创建并运行容器。
  • 以运行centos:7镜像为例:
docker run -di --name=mycentos centos:7
docker run -di --name=自定义镜像名 镜像名:版本
  • 其中,-d参数表示在后台运行容器,-i参数表示交互式运行容器,--name=mycentos指定容器的名称。

【十一】查看正在运行的容器

  • 执行以下命令可以查看正在运行的容器:
docker ps

【十二】进入容器

  • 通过docker exec命令可以进入容器的命令行终端:
docker exec -it 容器ID号 /bin/bash
  • 其中,-it参数表示以交互模式进入容器,容器ID号为要进入的容器的ID。

【十三】在容器中安装应用

【1】安装yum

(1)通过命令行进入Docker容器:

docker exec -it 容器ID号 /bin/bash
  • 容器ID号 替换为你要进入的容器的ID。

(2)安装yum:

apt-get update
apt-get install -y yum

(3)验证yum是否成功安装:

  • 运行以下命令来检查yum版本:
yum --version
  • 如果能够成功显示yum版本信息,则表示yum已经成功安装在你的容器中。
  • 请注意,以上步骤假设你使用的是基于Debian或Ubuntu的容器镜像,因此使用apt-get包管理器来安装yum。
  • 如果你使用的是其他不同的容器镜像,请根据实际情况选择相应的包管理器或方法来安装yum。

【2】安装 Redis

  • 当你成功进入Docker容器的命令行终端后
  • 你可以按照以下步骤在容器中安装Redis:

(1)更新apt源:

apt-get update

(2)安装Redis:

apt-get install -y redis-server

(3)启动Redis服务:

service redis-server start

(4)验证Redis是否成功安装和运行:

  • 运行Redis CLI命令行界面:

    redis-cli
    
  • 如果成功打开了Redis CLI终端,则表示Redis已经成功安装和启动。

  • 此时,你已经成功在容器中安装了Redis,并且可以通过Redis CLI与Redis建立连接,进行数据存储和检索等操作。

  • 请注意,以上步骤默认使用apt包管理器来安装Redis。
  • 如果你正在使用的容器基础镜像不支持apt,你需要根据不同的基础镜像使用相应的包管理器来安装Redis。

【补充】Docker国内源配置

【1】镜像和容器

  • Docker镜像是一个只读的模板,其中包含了运行应用程序所需的所有文件和依赖项。

    • 镜像可以来自于远程仓库,如Docker Hub,其中包含官方提供和第三方提供的镜像

    • 每个镜像可以有多个版本,通过标签(tag)来区分不同的版本

      • 例如centos:latest表示最新版本的CentOS镜像。
    • docker pull 能找到,仓库中有才行

      # 忽略即可,不常用
      docker search 名字  
      
  • 容器是基于镜像创建的可运行实例,类似于一个简洁的操作系统。

    • 在容器中,可以运行应用程序并访问其依赖项,保证应用程序的环境隔离和可移植性。
  • 镜像运行后的---》当成一个简洁的操作系统即可

【3】常用Docker命令

  • docker -v:查看Docker版本。
  • systemctl status docker:查看Docker服务状态。
  • systemctl start docker:启动Docker服务。
  • systemctl stop docker:停止Docker服务。
  • docker info:查看更详细的Docker信息。

【4】设置国内镜像站

  • 从远程仓库下载镜像
    • 即从国外
    • 下载比较慢
    • 为了加速镜像下载速度,可以配置国内镜像站来代替默认的远程仓库。
  • 首先,在安装Docker后,会在/etc/docker目录下生成一个daemon.json文件。
    • 可以使用以下命令打开该文件
  • 如果没有这个文件,就主动创建一个
vim /etc/docker/daemon.json
  • 然后,将以下内容添加到daemon.json文件中
{
  "registry-mirrors": ["自己的阿里云加速器地址"]
}
  • 将上述地址https://x1566319.mirror.aliyuncs.com替换为你所选择的国内镜像站地址。
  • 保存文件后,执行以下命令使配置生效
sudo systemctl daemon-reload
sudo systemctl restart docker
  • 这样就成功将国内镜像站配置到Docker中了。
  • 重启docker,如果容器停止运行,主动启动容器
docker ps 容器名

【补充命令】查看Linux系统版本

cat /etc/centos-release
[root@50f6caa20830 /]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)

【补充命令】不同系统内核的下载器

【1】CentOS :yum

  • CentOS使用的是yum作为包管理器,而不是apt-get。
  • 要更新你的系统,你需要使用yum命令。
  • 以下是正确的命令:
yum update

【2】Alpine :apk

  • 基于Alpine的镜像,可以使用apk命令来更新包索引:
apk update
apk install -y yum

【3】Debian/Ubuntu : apt-get

  • 使用的是基于Debian或Ubuntu的容器镜像
  • 因此使用apt-get包管理器来安装yum。
apt-get update
apt-get install -y yum