当前位置: 首页 > news >正文

Docker关于下载,镜像配置,容器启动,停止,查看等基础操作

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、安装Docker并配置镜像加速器
  • 二、下载系统镜像(Ubuntu、 centos)
  • 三、基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)
  • 四、容器的启动、 停止及重启操作
  • 五、查看正在运行的容器和所有容器
  • 六、怎么退出容器: 两种方法分别实现
  • 七、怎么连接到正在运行的容器内?
  • 八、.查看容器或镜像的内部信息
  • 九、如何查看所有镜像
  • 总结


前言

关于什么是Docker容器?我们该如何去简单化的将他理解?

  1. 虚拟化的革新发展,进而带动当代云原生等一些新概念的高速发展,进而docke体现了他的先进性、便捷性,操作简单性;
  2. Docker容器是基于linux容器的技术,在此基础上进一步的封装更正,让用户不用去担心容器的管理,用户操作更体现在一个Linux虚拟机上的操作一样简单;
  3. Docker是一个开源的应用容器引擎,可以轻松的为任何应用随时创造一个轻量级的,可移植的,自给自足的容器。开发者在本地编译测试后通过容器可以批量的在生产环境中部署,包括在一些其他的虚拟机,bare,metal,OpenStrack集群平台;
  4. 简单化来说,在一个docker码头,源源不断的收集容器货物存储在码头上,而码头的管理者就是Docker在运行,每一个人、每一个商家或者每一个公司都有属于自己的一个“货品”集装箱,一个个体的依赖关系软件,应用程序都在一个”货品“集装箱里,与其他个体互不干扰,都在docker码头由docker平台统一管理,简单方便的装载,复制,移除,非常适合软件弹性架构;
  5. 所以,对于开发人员和公司,当即时的需要一个容器或者一种依赖关系的部署的时候,就可以抓取一个容器进行少量修改,就可以进行部署到各自需要的对应的环境中,达到以前不能够短暂性达到的目的;
  6. Docker基本架构
    在这里插入图片描述
    (1)容器省去了操作系统,整个层级更简单化,可以在单台服务器上,运行更多的应用
    (2)容器本身是相互隔离的,大师没有包含操作系统,而是共用了宿主机的操作系统和运行时库

我们为什么要使用docker?

  1. Docker容器的启动可以实现秒速级别,相比于传统下的虚拟机更方便,省时省力,在IT分秒必争的大环境下,这着实能给足很大的安全感;
  2. Docker的资源利用率很高,一台主机上可以同时运用数千个docker容器;
  3. Docker除了运行中的应用以外,基本不消耗额外的系统资源,是的应用的性能很高,同时系统的开销尽量小;
  4. 更快的交付和部署,对Docker可以快速创建容器,快速迭代应用程序,并让整个过程可见,是的团队中的其他成员更容易理解应用程序是如何创建和工作的;
  5. 更高效的虚拟化,由于Docker时内核级别的虚拟化,原本就是提高性能和效率;
  6. 更轻松的迁移和扩展,Docker在物理机,虚拟机,公有云,私有云,个人电脑,服务器等,都可以运行,迁移数据更具有兼容时效性;
  7. 更简单的管理,根据不同的兼容性和匹配性,修改所需要的容器代码,就可以满足相应的条件。

对比传统虚拟机总结

特性容器虚拟机
启动秒级别分钟级别
硬盘使用一般为MB一般为GB
性能接近原生弱于
系统支持量单机支持上千个容器一般几十个

一、安装Docker并配置镜像加速器

  1. 安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的yum install -y yum-utils device-mapper-persistent-data lvm2;

  2. 设置yum源;

  3. 安装docker ,出现输入的界面都按y;

  4. 查看docker版本,验证是否验证

在这里插入图片描述

 1、yum install -y yum-utils device-mapper-persistent-data lvm22、yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo3、yum install -y docker-ce4、docker --version 

我这里配置的时阿里云的镜像加速器
在这里插入图片描述

[root@coco ~]# sudo mkdir -p /etc/docker
[root@coco ~]# sudo tee /etc/docker/daemon.json <<-'EOF'
> {
> "registry-mirrors": ["https://nm61f549.mirror.aliyuncs.com"]
> }
> EOF
{
"registry-mirrors": ["https://nm61f549.mirror.aliyuncs.com"]
}
[root@coco ~]# 
[root@coco ~]# sudo systemctl daemon-reload
[root@coco ~]# sudo systemctl restart docker
[root@coco ~]# 

清空防火墙配置规则,然后再启动Docker

1、systemctl stop firwalld && systemctl disable firwalld
2、systemctl stop firewalld && systemctl disable firewalld
3、systemctl status firewalld.service 
4、sudo systemctl daemon-reload
5、sudo systemctl start docker
6、sudo systemctl enable docker
7、docker version

查看docker版本,欧克!
在这里插入图片描述

二、下载系统镜像(Ubuntu、 centos)

在这里插入图片描述

1、centeos7
[root@coco ~]# docker pull centos:7
7: Pulling from library/centos
2d473b07cdd5: Pull complete 
Digest: sha256:9d4bcbbb213dfd745b58be38b13b996ebb5ac315fe75711bd618426a630e0987
Status: Downloaded newer image for centos:7
docker.io/library/centos:7
2、ubuntu安装
[root@coco ~]# docker pull ubuntu
Using default tag: latest
latest: Pulling from library/ubuntu
7b1a6ab2e44d: Pull complete 
Digest: sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f4781a50ae288f3322
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

三、基于下载的镜像创建两个容器 (容器名一个为自己名字全拼,一个为首名字字母)

1、容器名一个为自己名字全拼
[root@coco ~]# docker run --name xiangzhenzeng -it centos:7
[root@d4b6dd2d653d /]# exit
exit2、容器一个为首名字字母
[root@coco ~]# docker run --name xzz -it centos:7
[root@7f394dce45f8 /]# 
[root@7f394dce45f8 /]# exit
exit

四、容器的启动、 停止及重启操作

①docker start 容器名称 启动容器
②docker stop 容器名称 停止容器
③docker resart 容器名称 重启容器

[root@coco ~]# docker start xzz
xzz
[root@coco ~]# docker stop xzz
xzz
[root@coco ~]# docker restart xzz
xzz

五、查看正在运行的容器和所有容器

①docker ps 查看正在运行的容器
②docker ps -a 查看全部容器

一、
[root@coco ~]# docker ps
CONTAINER ID   IMAGE      COMMAND       CREATED         STATUS          PORTS     NAMES
7f394dce45f8   centos:7   "/bin/bash"   9 minutes ago   Up 23 seconds             xzz二、
[root@coco ~]# docker ps -a
CONTAINER ID   IMAGE      COMMAND       CREATED          STATUS                      PORTS     NAMES
7f394dce45f8   centos:7   "/bin/bash"   10 minutes ago   Up About a minute                     xzz
d4b6dd2d653d   centos:7   "/bin/bash"   10 minutes ago   Exited (0) 10 minutes ago             xiangzhenzeng

六、怎么退出容器: 两种方法分别实现

1、第一种 exit

[root@coco ~]# docker run --name xzz -it centos:7
[root@e1e80097db9c /]# read escape sequence
[root@e1e80097db9c /]# exit
exit

2、 第二种 Ctrl+P+Q

[root@coco ~]# docker exec -it xzz /bin/bash
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]#                     
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]# 
[root@e1e80097db9c /]# read escape sequence
[root@coco ~]# 

七、怎么连接到正在运行的容器内?

[root@coco ~]# docker stop xzz
xzz
[root@coco ~]# docker exec -it xzz /bin/bash
Error response from daemon: Container e1e80097db9c0c0e82404b7eb0542017561381e8f863150b1abc42355d7ceae7 is not running
[root@coco ~]# 
[root@coco ~]# 
[root@coco ~]# docker start xzz
xzz
[root@coco ~]# docker exec -it xzz /bin/bash
[root@e1e80097db9c /]# 

八、.查看容器或镜像的内部信息

docker inspect 容器名称 查看容器或镜像的内部信息命令

[root@coco ~]# docker inspect xzz

在这里插入图片描述

九、如何查看所有镜像

docker images ls 查看所有镜像

[root@coco ~]# docker image ls
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
ubuntu       latest    ba6acccedd29   22 months ago   72.8MB
centos       7         eeb6ee3f44bd   23 months ago   204MB
centos       latest    5d0da3dc9764   23 months ago   231MB

总结

以上就是最基本的一些容器的入门命令了解操作,容器这个东西是真的很好用,小伙伴们抓紧学习起来吧!

http://www.lryc.cn/news/135715.html

相关文章:

  • 穿越网络迷雾的神奇通道 - WebSocket详解
  • 无脑入门pytorch系列(五)—— nn.Dropout
  • Python土力学与基础工程计算.PDF-压水试验
  • Linux入门
  • 适合国内用户的五款ChatGPT插件
  • Dubbo Spring Boot Starter 开发微服务应用
  • linux中互斥锁,自旋锁,条件变量,信号量,与freeRTOS中的消息队列,信号量,互斥量,事件的区别
  • 安装docker服务,配置镜像加速器
  • CF 896 C Willem, Chtholly and Seniorious(珂朵莉树模板)
  • Android Jetpack组件的全方位分析
  • Prometheus+Grafana+AlertManager监控SpringBoot项目并发送邮件告警通知
  • 猿辅导Motiff亮相IXDC 2023国际体验设计大会,发布新功能获行业高度关注
  • 【QT】重写QAbstractLIstModel,使用ListView来显示多列数据
  • 【从零学习python 】64. Python正则表达式中re.compile方法的使用详解
  • 【FAQ】视频云存储/安防监控EasyCVR视频汇聚平台如何通过角色权限自行分配功能模块?
  • 基于Spring Boot的社区诊所就医管理系统的设计与实现(Java+spring boot+MySQL)
  • mysql从传统模式切到GTID模式后启动主从,主从异常报错1236
  • Qt+C++串口调试接收发送数据曲线图
  • 【从零学习python 】75. TCP协议:可靠的面向连接的传输层通信协议
  • IPv4 基础概念
  • stm32片内读写项目总结(多字节读写tongxindu)
  • ECMAScript6 简介及拓展
  • 可视化构建包分析报告
  • 统一git使用方法,git状态变迁图,git commit提交规范
  • react与vue的区别
  • 成功解决SQL 错误 [22000]: 第3 行附近出现错误: 试图修改自增列[ID](达梦数据库)
  • 【算法】活用双指针完成复写零操作
  • 【面试高频题】难度 3/5,字典树热门运用题
  • vue base64图片转file流 下载到本地 或者上传
  • 无涯教程-PHP - 简介