01、Docker入门之Centos7安装和基本操作

左手的ㄟ右手 2023-06-22 06:28 64阅读 0赞

Docker入门

一、 Docker是什么
Docker是一个由GO语言写的程序运行的“容器”(Linux containers, LXCs),它是完整的一套容器管理系统
Docker提供了一组命令,让用户更加方便直接地使用容器技术,而无需要过多关心底层内核技术

注1:什么是容器?
一个容器就相当于一个虚拟机

注2:docker用途,目前有三大类
1.提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境
2.提供弹性的云服务。因为 Docker 容器可以随开随关,很适合动态扩容和缩容
3.组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构

二、Docker与虚拟化
传统来看,虚拟化既可以通过硬件模拟来实现,也可以通过操作系统软件来实现 而容器技术则更为优雅,
它充分利用了操作系统本身已有的机制和特性,可以实现远超传统虚拟机的轻量级虚拟化 因此,有人甚至把它称为
“新一代的虚拟化”技术,并将基于容器打造的云平台亲切地称为“容器云”毫无疑问,
Docker 正是众多容器技术中的佼佼者,是容器技术发展过程中耀眼的一抹亮色

Docker 和常见的虚拟机方式的不同之处
在这里插入图片描述
三、4. 核心概念
Docker大部分的操作都围绕着它的三大核心概念: 镜像、容器和仓库(本章只用到镜像/容器)

四、CentOS7 安装docker(在线方式)
注:Docker支持运行CentOS版本:CentOS 7.X

1、内核版本信息检查

  1. uname -r

2、卸载可能存在的旧版本

  1. 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叫做docker或者docker-engine,如果有安装,先卸载其以及其依赖,新版本的docker叫做docker-ce

docker-ce(社区版,免费) docker-ee(专业版,收费)
肯定用免费的啊

3、 安装必要的系统工具

  1. yum install -y yum-utils device-mapper-persistent-data lvm2

4、添加docker-ce安装源
默认好像是国外的,跟换国内的

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

可选
默认开启的是stable稳定版仓库,如果想要安装test测试版或者是边缘版本可使用如下命令开启相关模式,关闭的话只需要将–enable参数换成–disable(可选)
$ yum-config-manager —enable docker-ce-edge
$ yum-config-manager —enable docker-ce-test

5、 更新yum缓存

  1. yum makecache fast

6、 安装docker-CE
这里安装会很慢,耐心等待

  1. yum -y install docker-ce

我用的是最新版上面那条命令,如果你想安装特点的版本,如下:

1)查看版本列表请使用如下命令:

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

2)如果要安装特定版本的docker-CE请使用如下命令格式:

  1. yum install docker-ce-<版本号>

7、验证安装成功后

  1. systemctl status docker //查看运行状态

启停服务

  1. $ systemctl start docker //启动
  2. $ systemctl stop docker //停止
  3. $ systemclt restart docker //重启

8、 运行第一个容器(经典的hello world)

  1. docker run hello-world
  2. 输入以上命令后,窗口有输出,表示docker安装成功

以上是安装,下面是关于容器与镜像的基本操作命令

五、镜像
Docker 运行容器前需要本地存在对应的镜像, 如果镜像不存在, Docker 会尝试先从默认镜像仓库下载(默认使用 Docker Hub 公共注册服务器中的仓库), 用户也可以通过配置,使用自定义的镜像仓库

镜像相关操作:
1、 配置加速器
国内从Docker Hub下载镜像速度很慢,我们可以配置阿里云专属加速器来解决
浏览器访问并登陆阿里云(淘宝或支付宝帐号登陆也可以)

https://www.aliyun.com/

登陆后,进入阿里云“控制台”,搜索“容器镜像服务”,然后点击菜单:“镜像中心”–>“镜像加速器”
最后,将容器右边的“加速器地址”复制下来即可
在这里插入图片描述
先执行

  1. mkdir -p /etc/docker //创建文件夹

然后

  1. sudo tee /etc/docker/daemon.json <<-'EOF'
  2. {
  3. "registry-mirrors": ["你自己加速器的网址"]
  4. }
  5. EOF

执行完毕后可以进入该文件夹查看是否添加完毕

  1. cd /etc/docker/
  2. //查看
  3. cat daemon.json

注意空格格式

2、重新加载daemon

  1. systemctl daemon-reload

3、重启docker

  1. systemctl restart docker

4、下载镜像
两种方式
第一种

  1. docker pull centos

第二种

  1. docker pull centos:版本号

5、查看宿主机上的镜像

  1. docker images

6、删除镜像

  1. docker rmi 镜像ID/标签

六、 Docker容器
容器是Docker的另一个核心概念。简单来说,容器是镜像的一个运行实例。所不同的是,
镜像是静态的只读文件,而容器带有运行时需要的可写文件层,同时,容器中的应用进程处于运行状态
如何理解:类->实例,镜像->容器
常用操作:

创建容器(重点)

  1. docker create -it centos:latest
  2. docker create -it --name tomcat01 centos:latest

注1:命令说明
create:关键字
centos:latest:即镜像名字:版本(或镜像ID),将使用指定镜像创建容器。另外,Docker会检查本地是否存在指定的镜像,
不存在就从公有仓库下载
-it:是两个参数,-i:interactive容器具有交互功能,-t:容器将提供伪终端
–name:指定生成的容器的名字,允许空,如果不指定会自动生成

  1. 2:此时,通过如下命令,可以查看到刚刚创建的容器
  2. $ docker ps - a
  3. 3create命令新建的容器处于停止状态,可以使用start命令来启动它
  4. $ docker start 容器ID

1、 启动、停止、重启容器命令

  1. $ docker start 容器IDname
  2. $ docker stop 容器IDname
  3. $ docker restart 容器IDname

2、 查看当前运行的容器

  1. docker ps -a

3、查看所有容器

  1. docker ps -a

4、 删除容器

  1. docker rm 容器ID

5、 进入容器(重点)

  1. docker exec -it 容器ID/容器NAME /bin/bash
  2. //简写
  3. docker exec -it 容器ID/容器NAME bash

6、 创建\启动\进入容器(run=create+start)

  1. // 新建->启动->进入容器
  2. $ docker run -it centos:latest /bin/bash

7、退出容器
退出时如果想继续运行容器:按顺序按【ctrl+p】,【ctrl+q】
如果不想继续运行:按【ctrl+d】或输入exit

8、查看Docker容器内部信息
1)进入容器内部获取信息

  1. docker exec -it 容器ID/容器NAME /bin/bash
  2. 如果此时已进入容器内部,可分别执行hostnameip addrenv这三个命令可以获取相关信息
  3. hostname
  4. ip addr
  5. env

2)外部获取信息
在宿主机(localhost),执行docker exec命令
获取容器的hostname:docker exec 容器ID/容器NAME hostname
获取容器ip地址:docker exec 容器ID/容器NAME ip addr
获取容器环境变量:docker exec 容器ID/容器NAME env

发表评论

表情:
评论列表 (有 0 条评论,64人围观)

还没有评论,来说两句吧...

相关阅读