docker

一、概述

1.什么是docker

docker是一个应用容器引擎,基于 Go 语言,将应用程序装箱打包成独立的容器,确保应用程序在不同的环境下都能运行。Docker的主要目标是‘build ,ship and run any app,anywhere’,也就是说通过对应用程序组件的封装,分发,部署,运行等生命周期的管理。容器之间不会有交互接口,并且开销极低。

2.docker有什么优势

有时候开发过程中没问题,运维时换个环境就出错了。

docker直接将该springboot项目制作成一个镜像文件,直接部署linux即可,减少依赖冲突概率。

Docker最终解决了运行环境配置中的问题。----镜像文件底层封装好了

二、名词介绍

镜像:类似于安装包,有运行的文件和配置信息文件。

容器:镜像运行的实例

仓库:存放镜像的地方

容器和虚拟机的区别:

虚拟机:虚拟硬件。在虚拟机上我们安装操作系统linux镜像。然后在操作系统上安装软件。

docker:操作系统层面的虚拟化。可以看做容器的管理器,依赖和应用都被打包在镜像中了,实际上docker中的镜像大小肯定会大于直接安装时候的大小。因为镜像中打包的还有他的依赖。容器和容器之间是隔离的。

特性

容器

虚拟机

启动速度

秒级

分钟级别

硬盘使用

一般为MB

一般GB

性能

接近原生

弱于

系统支持量

单机支持上千个容器

一般几十个

隔离性

完全隔离

完全隔离

三、安装

查看安装成功的三种方法:查看版本号、查看进程、查看服务(守护进程)

  1. 1.通过 uname -r 命令查看你当前的内核版本

uname -r

2.使用 root 权限登录 Centos。确保 yum 包更新到最新。

yum -y updat

该过程大概需要维持10分钟左右

3.卸载旧版本(如果安装过旧版本的话)

yum remove docker docker-common docker-selinux docker-engine

4.安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

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

5.设置yum源

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

6.可以查看所有仓库中所有docker版本,并选择特定版本安装

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

7.安装docker

sudo yum install -y docker-ce     #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.1

8.启动并加入开机启动

systemctl start docker

systemctl enable docker

9.验证安装是否成功(有client和service两部分表示docker安装启动都成功了)

docker version

四、原理

1.下载镜像原理

2.阿里云加速镜像

每个人的镜像地址都是不一样的。

https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

依次执行给的代码。

五、常用命令

获取docker版本:

docker -version

查看镜像:

docker images

 查看镜像(只显示镜像id)

docker images -q

下载镜像、删除镜像: 

docker pull nginx
docker images
docker rmi nginx

查看容器

docker ps

查看容器的详情 

docker inspect 428175106d92

 运行容器

 docker run -i(保持容器一直运行)-t(给容器一个伪终端)-d(后台运行,不直接进入容器) --name=tomcat9.2(给启动容器起名字)-p 8080:8080(宿主:docker容器)tomcat:9.2(启动的容器)

docker run -itd --name=test_tomcat -p 8081:8080 tomcat

查看运行着的和停止的大容器:

docker ps -a
docker stop 428175106d92

删除容器: 

docker rm b4a5982f1adf

 启动容器并进入内部bash

 docker start 428175106d92
 docker exec -it 428175106d92 bash

我们可以看到容器也类似于一个小的linux系统,我们在这个上面运行镜像。


 

相关推荐

  1. <span style='color:red;'>docker</span>

    docker

    2024-04-30 15:08:02      44 阅读
  2. <span style='color:red;'>Docker</span>

    Docker

    2024-04-30 15:08:02      39 阅读
  3. <span style='color:red;'>docker</span>

    docker

    2024-04-30 15:08:02      56 阅读
  4. <span style='color:red;'>Docker</span>

    Docker

    2024-04-30 15:08:02      63 阅读
  5. <span style='color:red;'>Docker</span>

    Docker

    2024-04-30 15:08:02      65 阅读
  6. Docker

    2024-04-30 15:08:02       40 阅读
  7. Docker

    2024-04-30 15:08:02       58 阅读
  8. <span style='color:red;'>Docker</span>

    Docker

    2024-04-30 15:08:02      53 阅读
  9. docker

    2024-04-30 15:08:02       50 阅读
  10. <span style='color:red;'>Docker</span>

    Docker

    2024-04-30 15:08:02      50 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-30 15:08:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-30 15:08:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-30 15:08:02       82 阅读
  4. Python语言-面向对象

    2024-04-30 15:08:02       91 阅读

热门阅读

  1. Ubuntu/Linux Anaconda 命令行终端安装

    2024-04-30 15:08:02       37 阅读
  2. bind、call和apply

    2024-04-30 15:08:02       37 阅读
  3. Agent AI智能体的未来

    2024-04-30 15:08:02       35 阅读
  4. 2024-04-30 区块链-timi.net-大陆员工办公规定-记录

    2024-04-30 15:08:02       35 阅读
  5. 前端开发中可能出现内存泄漏的情况总结

    2024-04-30 15:08:02       36 阅读
  6. OceanBase的SQL 优化实践: NOT IN 子查询

    2024-04-30 15:08:02       25 阅读
  7. 微信小程序 图片上传到文件服务器

    2024-04-30 15:08:02       28 阅读
  8. 吐槽某为的招聘是最恶心的招聘,没有之一

    2024-04-30 15:08:02       32 阅读
  9. 使用 Lua 协程模拟 Golang 的 go defer 编程模式

    2024-04-30 15:08:02       34 阅读
  10. React 模板选择标准

    2024-04-30 15:08:02       32 阅读