Docker安装&常用命令

发布于:2024-05-18 ⋅ 阅读:(281) ⋅ 点赞:(0)

文章目录

1.docker是什么?

image-20240517144948418

image-20240517144845160

2.docker基本介绍

1.官网

https://docs.docker.com/

https://hub.docker.com/

2.环境准备
1.centOS7x

image-20240517152132133

3.docker基本组成
1.docker三要素
镜像

image-20240517152429539

容器

image-20240517152509652

仓库

image-20240517152658131

4.docker平台架构图

image-20240517153051402

3.docker的安装和基本配置

1.首先找到官网 https://docs.docker.com/get-docker/

image-20240517154236015

2.docker引擎安装,CentOS

image-20240517154313002

3.安装步骤
1.卸载旧版本的docker
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

image-20240517154553368

2.安装 gcc相关
yum -y install gcc && yum -y install gcc-c++

image-20240517154910783

3.安装yum-utils软件包
yum install -y yum-utils

image-20240517155524244

4.docker设置阿里云的镜像仓库,最好不要设置国外的

image-20240517155332913

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

image-20240517155823043

5.更新yum包的索引(linux基础,以后使用yum会快一些)
yum makecache fast

image-20240517155949744

6.安装最新版的docker
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

image-20240517160300623

7.启动docker进程并查看docker是否成功启动
systemctl start docker && ps -aux | grep docker

image-20240517160628449

8.运行docker

在本地找不到,会到远程仓库查找镜像

docker run hello-world

image-20240517160742958

9.停止docker
systemctl stop docker && ps -aux | grep docker

image-20240517161145268

10.设置docker自启动并确认是否设置成功!
systemctl enable docker && systemctl is-enabled docker

image-20240517161257256

11.卸载docker
1.首先停止docker服务
systemctl stop docker && ps -aux | grep docker
2.卸载 Docker 引擎
yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
rm -rf /var/lib/docker && rm -rf /var/lib/containerd
12.阿里云镜像加速器配置
1.找到容器镜像服务

https://cr.console.aliyun.com/cn-beijing/instances

image-20240517161923588

2.得到镜像加速器地址

image-20240517162247947

3.创建目录
mkdir -p /etc/docker
4.通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://s0qrw5u9.mirror.aliyuncs.com"]
}
5.重启daemon
systemctl daemon-reload
6.重启docker
systemctl restart docker && ps -aux | grep docker

4.docker基本分析

1.查找镜像的方式

image-20240517162842465

2.为什么Docker比VM虚拟机快?

image-20240517163045408

5.Docker常用命令

1.帮助启动类命令
1.启动Docker服务
systemctl start docker && systemctl status docker
2.停止Docker服务
systemctl stop docker && systemctl status docker
3.重启Docker服务
systemctl restart docker && systemctl status docker
4.查看Docker服务状态
systemctl status docker
5.启用Docker服务自启并查看是否设置成功
systemctl enable docker && systemctl is-enabled docker
6.禁用Docker服务自启
systemctl disable docker && systemctl is-enabled docker
7.重新加载Docker服务配置
systemctl reload docker
8.查看Docker服务的启动日志
journalctl -u docker.service
9.查看Docker状态
systemctl status docker
2.镜像命令
1.查看本地镜像列表
docker images

image-20240517164205618

image-20240517164309798

2.查找镜像 hello-world
docker search hello-world

image-20240517164529381

image-20240517164911518

3.拉取镜像 redis:6.0.2

image-20240517165138382

docker pull redis:6.0.2

image-20240517165711139

4.查看惊喜镜像/容器/数据卷所占的空间
docker system df

image-20240517165944319

5.删除镜像(使用名字或者id都可以),这里删除 hello-world
docker rmi hello-world

image-20240517170144159

强制删除加 -f 参数

docker rmi -f hello-world

image-20240517170432032

6.容器常用命令

1.拉取ubuntu镜像
docker pull ubuntu

image-20240517171304852

2.使用镜像生成一个容器并启动(跟java的new一个对象类似)
1.基本介绍

image-20240517171435058

2.三组选项说明

image-20240517171601027

3.关于-it参数,是启动交互式容器,比如ubuntu容器需要交互的命令行,exit退出终端
docker run -it ubuntu  /bin/bash

image-20240517172320174

4.关于–name参数,指定名字启动容器
docker run -it --name=nihao ubuntu  /bin/bash

image-20240517173111254

3.查看运行中的容器
1.查看当前正在运行的容器
docker ps

image-20240517172735303

2.显示所有运行过的容器(包括关闭的)
docker ps -a

image-20240517172809190

3.选项说明

image-20240517173527264

4.容器启动停止删除操作
1.两种退出方式(命令行下)
1.exit退出

image-20240517173829491

image-20240517173846725

2.ctrl+p+q 退出

image-20240517173917086

image-20240517174009633

2.启动容器 6dc538824b9c
docker start 6dc538824b9c

image-20240517174501236

3.关闭容器 f96ea088ea82
docker stop f96ea088ea82

image-20240517174607368

4.重启容器 6dc538824b9c
docker restart 6dc538824b9c

image-20240517174704341

5.强制停止容器 6dc538824b9c
docker kill 6dc538824b9c

image-20240517174759570

6.删除容器 53edab4feb7f 和 f96ea088ea82 (删除之前需要先停止)强制删除需要加 -f
docker rm 53edab4feb7f f96ea088ea82

image-20240517174949778

5.启动容器的两种方式
1.前台启动
docker run -it redis:6.0.8

image-20240517180030096

2.后台守护进程启动
docker run -d redis:6.0.8

image-20240517180158280

3.进入容器(exec方式)
docker exec -it 88973da4c23b /bin/bash

image-20240517192601774

4.进入容器(attach方式)
docker attach 1c648abf0e2a

image-20240517193110825

5.两种方式进入的区别

image-20240517192753183

6.查看容器信息
1.查看容器88973da4c23b的日志
docker logs 88973da4c23b

image-20240517191210080

2.查看容器内运行的进程
docker top 88973da4c23b

image-20240517191642123

3.查看容器内部细节
docker inspect 88973da4c23b

image-20240517191849000

7.容器内容备份到主机
docker cp 1c648abf0e2a:/temp/test.txt /test

image-20240517193456594

image-20240517194509013

8.导入和导出容器
1.将6dc538824b9c导出到当前目录
docker export 6dc538824b9c > testredis.tar
2.将容器导入并放到镜像
cat testredis.tar | docker import - user/name:4.1

image-20240517195215506