Docker安装和配置

简介: 通过本实验,您可以学习如何在服务器上部署Docker运行环境。

Docker安装和配置


1. 创建云产品资源

  • 在体验实验室,单击创建资源。
  • (可选)在实验室⻚⾯左侧导航栏中,单击云产品资源列表,可查看本次实验资源相关信息(例如IP地址、⽤户信息等)。

说明:资源创建过程需要1~3分钟。

2. Docker的安装

Docker是基于Linux内核服务的轻量级开源容器产品,本系列实验我们将为大家介绍docker产品的安装,使用和案例。在本实验中,我们先来介绍docker 的安装。在centos系统中,我们一般通过yum进行软件包的安装。因此本次实验我们也通过yum来安装docker运行环境。

  1. 安装docker的依赖组件

在安装docker之前,我们需要先通过yum来安装docker的必要的依赖组件。同时为了编译后面的配置信息格式化输出,我们同时需要安装jq工具。

yum install -y yum-utils device-mapper-persistent-data lvm2
yum install -y jq
  1. 添加Docker的安装来源

因为docker安装包不在yum的默认源列表中,因此在安装之前我们需要通过yum-config-manager --add-repo命令向yum默认源列表中添加docker源的地址。

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

源添加成功后,我们可以使用yum list命令查看当前的docker源中支持的安装包版本列表。

yum list docker-ce --showduplicates | sort -r

  1. 安装Docker应用

docker依赖和docker源安装完成之后,我们就可以使用yum install docker-ce.x86_64命令来安装docker 应用,在使用yum install安装时,默认会选择最新的版本进行安装。如果需要指定安装版本也可以在命令后面加入具体的版本号,接下来我们来安装docker的3:20.10.16-3.el7版本。

yum install -y docker-ce.x86_64 3:20.10.16-3.el7

安装成功之后,我们还需要通过systemctl start命令来启动docker服务

systemctl start docker.service

3. Docker的配置

  1. 镜像源的配置

通过docker拉取镜像时,默认会通过国外的镜像源进行下载,因此可以配置国内的镜像源以加快下载速度。修改docker的镜像源时,我们使用vi编辑文件 /etc/docker/daemon.json 。注意使用vi编辑器时:

  1. 需要先按i键进入编辑模式。
  2. 编辑完成之后按esc退出编辑模式。
  3. 然后按大写的ZZ保存并退出vi。
vi /etc/docker/daemon.json

接下来将下列内容添加到文件中。其中阿里用户ID我们可以通过实验控制台获得。

{
   "registry-mirrors":["https://[阿里用户ID].mirror.aliyuncs.com"]
}

在编辑成功后,按ECS推出编辑模式,然后按ZZ退出vi。

  1. 镜像源修改后,需要重新启动docker服务。
systemctl restart docker.service

服务重启成功后,我们可以通过docker version查看docker版本信息。如果出现客户端版本信息和服务版本信息,则说明dcoker已经安装成功且服务已经启动

docker version

  1. 服务启动之后,为了防止计算机重启之后docker服务被关闭,我们还可以通过systemctl enable命令将docker服务配置为开机自启动。(此步骤为可选操作)
systemctl enable docker.service

4. Docker的快速上手

在前面的小节中我们介绍了Docker 的安装的配置,接下来为大家介绍一些Docker的快速上手命令和用法。

  1. 启动hello-world

Docker安装配置成功之后,我们就可以通过docker run命令启动轻量级的容器虚拟机。我们执行如下命令

docker run hello-world

会发现屏幕上输出了Hello from Docker!信息。这个信息输出表示hello-world容器虚拟机启动成功。

  1. 启动长期运行的bash容器

在上一个步骤中,我们演示了docker最基本的用法,这种方式启动的hello-world容器,在启动之后会输出文字,在输出之后容器就会结束。

接下来我们来启动一个可以长期运行的bash容器。我们在命令行中输入如下命令,运行成功后会看到命令提示行变为bash,这表示容器虚拟机已经持续运行。

docker run -it bash

  1. bash容器的退出

在运行的bash容器中我们可以使用一些基本的linux命令,如pwdls

pwd
ls

如果希望退出bash容器,回到宿主机,我们在控制台中输入exit命令即可。

exit

5. 容器的查找和下载

在使用docker run命令运行容器时,我们会看到在容器运行之前,出现了Status: Downloaded newer image状态。这表示在容器虚拟机第一次运行时,会首先从远程容器源服务器中下载镜像到本地,然后才能在本地运行。

在本小节中,我们来学习如何分步骤从镜像源查找所需要的容器镜像,然后再来了解如何下载容器镜像,并且查看本地已经下载好的容器镜像列表。

  1. 远程查找容器

当我们需要查找容器时,可以通过docker search命令在的镜像源中查找所需要的容器镜像。接下来我们来查找ubuntu容器。

docker search ubuntu

  1. 查找容器的版本信息

在找到所需要的容器镜像的名称之后,通常需要进一步在docker的镜像源中查找该镜像的版本列表。由于docker本身没有直接提供查看版本的功能,因此在这里我们为大家提供了一个可以查看镜像版本的简单脚本docker-tags。我们生成docker-tags脚本并加入以下内容 ,

注意使用vi编辑器时:

  1. 需要先按i键进入编辑模式。
  2. 编辑完成之后按esc退出编辑模式。
  3. 然后按大写的ZZ保存并退出vi。
vi docker-tags
curl -s -S "https://registry.hub.docker.com/v2/repositories/library/$1/tags/?page=$2" |
sed -e 's/,/\n/g' -e 's/\[/\\\[\n/g' |
grep -E '"name":|"count":' |
sed -e 's/"//g' -e "s/name:/$1:/g" -e "s/{count:/$1总版本数-/"

docker-tags脚本编辑好之后,需要通过chmod修改文件权限才可以执行。在权限修改完成之后,就可以使用docker-tags脚本来查询相关镜像的最近版本信息了。

chmod 777 docker-tags 
./docker-tags ubuntu
  1. 拉取容器镜像

当我们查找到镜像的版本信息之后,就可以拉取镜像到本地了。在拉取镜像时我们可指定拉取镜像的版本,也可不指定版本默认拉取最新版本。首先我们使用docker pull命令来拉取ubuntu容器的jammy版本。

docker pull ubuntu:jammy

接下来我们来拉取ubuntu的最新版本。

docker pull ubuntu

当镜像源已经拉取到本地之后,我们可以通过docker images命令来查看已经拉取到的本地镜像。

docker images

实验地址:https://developer.aliyun.com/adc/scenario/2e269bf2b2764d5ebc3642b70a8a99ff

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
9天前
|
监控 虚拟化 Docker
Window系统安装Docker
这篇文章提供了在Windows系统上安装与配置Docker的详细指南,包括Docker Desktop的安装及通过Docker来运行容器化应用的步骤。
31 1
Window系统安装Docker
|
12天前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
98 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
2天前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
17 3
|
5天前
|
网络协议 Docker 容器
docker中的DNS配置
【10月更文挑战第5天】
72 1
|
8天前
|
Linux 网络安全 Docker
安装后无法使用 Docker 命令
【10月更文挑战第3天】
22 2
|
8天前
|
存储 NoSQL MongoDB
docker安装Mongodb
这篇文章详细说明了如何使用Docker安装MongoDB,包括拉取镜像、创建并运行容器、数据持久化存储以及访问容器内的MongoDB服务的具体步骤。
22 1
|
10天前
|
Ubuntu Docker 容器
本地wsl的Ubuntu安装docker,不使用docker桌面版
本文提供了在WSL的Ubuntu环境中安装Docker引擎的步骤,包括安装引擎、配置iptables以及启动Docker服务。
30 2
|
9天前
|
存储 物联网 数据安全/隐私保护
Docker安装Mosquitto
这篇文章详细介绍了如何在Docker中安装和配置Mosquitto消息代理服务,包括拉取镜像、创建容器以及配置持久化存储等步骤。
15 0
Docker安装Mosquitto
|
10天前
|
Ubuntu Shell Linux
docker安装tar包安装
docker安装tar包安装
28 1
|
11天前
|
存储 Ubuntu JavaScript
如何使用Docker优化你的开发环境配置
如何使用Docker优化你的开发环境配置