0
点赞
收藏
分享

微信扫一扫

Docker夺命连环15问,你能坚持第几问?

半夜放水 2022-07-12 阅读 45

文章目录

前言

本文总结了Docker常见的问题和坑,采用问答的形式,分享给大家

⛳️ 1.什么是Docker?

在这里插入图片描述

⛳️ 2.Docker的应用场景有哪些?

📢📢📢 在这里我重点介绍下Docker作为内部开发环境的场景

⛳️ 3.Docker的优点有哪些?

容器化越来越受欢迎,Docker的容器有点总结如下:
📖 灵活:即使是最复杂的应用也可以集装箱化。
📖 轻量级:容器利用并共享主机内核。
📖 可互换:可以即时部署更新和升级。
📖 便携式:可以在本地构建,部署到云,并在任何地方运行。
📖 可扩展:可以增加并白动分发容器副本。
📖 可堆叠:可以垂直和即时堆叠服务。

在这里插入图片描述

⛳️ 4.Docker与虚拟机的区别是什么?

在这里插入图片描述

⛳️ 5.Docker的三大核心是什么?

📢📢📢 镜像

📢📢📢 容器

📢📢📢 仓库

⛳️ 6.如何快速安装Docker?

在这里插入图片描述

⛳️ 7.如何修改Docker的存储位置?

📢📢📢 修改到其它目录

⛳️ 8.Docker镜像常用管理有哪些?

在这里插入图片描述

在这里插入图片描述

⛳️ 9.如何创建Docker容器?

#docker images   --镜像
docker run -d --name centos7.8 -h centos7.8 \
-p 220:22 -p 3387:3389 \
--privileged=true \
centos:7.8.2003 /usr/sbin/init

#我想拥有一个 linux 8.2 的环境
docker run -d --name centos8.2 -h centos8.2 \
-p 230:22 -p 3386:3389 \
--privileged=true \
daocloud.io/library/centos:8.2.2004 init

# 进入容器
docker exec -it centos7.8bash
docker exec -it centos8.2 bash
cat /etc/redhat-release    --查看系统版本

⛳️ 10.Docker在后台的标准运行过程是什么?

⛳️ 11.Docker网络模式有哪些?

📢📢📢 host模式

在这里插入图片描述
📢📢📢 container模式

📢📢📢 bridge 模式

在这里插入图片描述

⛳️ 12.什么是Docker的数据卷

⛳️ 13.如何搭建Docker私有仓库

1.拉取私有仓库镜像
[root@jeames ~]# docker pull registry
Using default tag: latest


2.启动私有仓库容器
docker run -di --name registry -p 5000:5000 registry
docker update --restart=always registry   --开机自启动
docker ps -a  --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"


 访问网址:http://192.168.1.54:5000/v2/_catalog
3.设置信任
[root@jeames ~]# vi /etc/docker/daemon.json
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"],
"insecure-registries":["192.168.1.54:5000"]
}

[root@jeames ~]# systemctl restart docker   --重启docker

4.上传本地镜像
[root@jeames ~]# docker images
[root@jeames ~]# docker tag postgres:11 192.168.1.54:5000/postgres



[root@jeames ~]# docker push 192.168.1.54:5000/postgres


5.重新拉取镜像
[root@jeames ~]# docker rmi 192.168.1.54:5000/postgres
[root@jeames ~]# docker images
[root@jeames ~]# docker pull 192.168.1.54:5000/postgres

⛳️ 14.Docker如何迁移备份?

1.容器保存为镜像
[root@jeames ~]# docker images
[root@jeames ~]# docker ps -a
docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
[root@jeames ~]# docker commit redis myredis
##使用新的镜像创建容器
docker run -di --name myredis myredis
2.镜像的备份
[root@jeames ~]# docker save -o myredis.tar myredis
默认放到当前目录
[root@jeames ~]# ll
[root@jeames ~]# pwd
3.恢复过程
##删除容器
docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}"
docker stop myredis
docker rm myredis
##删除镜像
docker images
docker rmi myredis
[root@jeames ~]# docker load -i myredis.tar

⛳️ 15. Docker如何部署MySQL?

1.下载镜像
https://hub.docker.com/ 中搜索mysql
[root@jeames ~]# docker pull mysql:5.7.30
[root@jeames ~]# docker pull mysql:8.0.20
2.安装部署
2.1 创建容器
mkdir -p /usr/local/mysql5730/
mkdir -p /usr/local/mysql8020/

docker run -d --name mysql5730 -h mysql5730 \
-p 3309:3306 \
-v /usr/local/mysql5730/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai \
mysql:5.7.30

docker run -d --name mysql8020 -h mysql8020 \
-p 3310:3306 \
-v /usr/local/mysql8020/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root -e TZ=Asia/Shanghai \
mysql:8.0.20

2.2 访问Mysql
##登陆容器
docker exec -it mysql5730 bash
mysql -uroot -proot
mysql> select user,host from mysql.user

##远程访问
mysql -uroot -proot -h192.168.59.220 -P3309
举报

相关推荐

0 条评论