一. 认识Docker

  我们写的代码会接触好几个环境:开发环境,测试环境以及生产环境

开发环境:程序员开发代码的环境

测试环境:开发完的代码部署到测试环境 给测试人员进行测试

生产环境:测试完成后有运维人员部署到生产环境

整个项目写代码和部署的过程:首相程序员在自己的电脑安装开发所需的环境并编写代码在本地测试 ,测试完后会把jar包部署到测试环境,由测试人员测试,然后运维部署到生产环境

以上过程会有个问题:如果开发环境安装了jdk8 但是测试环境安装的是jdk7 就会因为环境不一样导致代码运行出现bug

要解决以上问题那就把环境和代码装到一个容器里发送到测试环境 这样就解决了因为环境不一致导致的运行出现bug ,这个容器就是Docker

Docker是完全使用沙箱机制,互相隔离。也就是说可以在服务器上安装多个容器 容器之间的环境可以不一样,互不影响,

二. 安装Docker

Docker可以运行在MAC, Windows, Centos, Ubuntu 等操作系统,本文章基于Centos7安装

Docker的官网 :https://www.docker.com

#  1. yum 包更新到最新
yum update
# 2. 安装需要的软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动以来的
yum install -y yum-utils device-mapper-persistent-data lvm2
# 3. 设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 4. 安装docker,出现输入的界面都按 y
yum install -y docker-ce
# 5. 查看docker版本,验证是否按照成功
docker -v

三. Docker架构

Client: docker的客户端,通过在客户端操作一些命令来发送给守护进程

Hosts:docker的核心

  local host :   本地机器

  remote host: 远程机器

  daemon:docker安装启动后会以daemon守护进程的形式存在

    container:  根据镜像所创建出来的实例

    image: 镜像,来源于远程仓库Registries

Registries:远程仓库

  Docker hub:官方提供的仓库,服务器在国外

  private registry: 自己搭建的私有仓库(私服)

四. 配置Docker镜像加速器

默认情况在,从docker hub ( https://hub.docker.com/) 下载docker镜像太慢,一般会配置镜像加速器

  • USTC: 中科大镜像加速器( https://docker.mirrors.ustc.edu.cn)
  • 阿里云
  • 网易云
  • 腾讯云

一下以阿里云为例安装镜像加速器

1.登录阿里云

2. 点击右上角的控制台进入一下界面

3. 点击左上角的面包按钮 ,在产品与服务的搜索框里搜索 <镜像>,点击容器镜像服务

4. 在左侧菜单栏点击镜像加速器,右边的就是加速器的地址和操作文档 ,

5. 选择你得服务器系统 并按照文档按照镜像加速器。

五. Docker服务相关命令

#  启动docker服务
systemctl start docker
# 查看docker服务状态
systemctl status docker
# 停止docker服务
systemctl stop docker
# 重启docker服务
systemctl restart docker
# 开机自动启动docker服务
systemctl enable docker

六. Docker镜像相关命令

#  查看本地镜像
docker images

REPOSITORY: 镜像名称

TAG: 镜像版本号

IMAGE ID:  镜像id 如果要删除某个镜像就是根据这个id删除的

CREATE:  镜像的创建时间

SIZE:镜像的大小

#  搜所镜像,比如搜所redis镜像
docker search redis

#  下载redis镜像,如果redis后面不跟上版本号 那下载的就是 latest
docker pull redis
# 下载指定版本的redis镜像
docker pull redis:5.0

如果我想下载指定版本的redis镜像 ,但是又不知道redis有哪些版本怎么办呢,

1. 进入docker的官方网站  hub.docker.com,所有redis

2,   选择官方镜像

3.  点击redis 后就可以看到 支持的版本

#  删除镜像,例如删除redis 5.0
docker rmi 02fee89f17ad
#根据镜像名+版本号删除
docker rmi redis:5.0
#删除本地所有镜像
docker rmi `docker images -q`

docker的安装和命令的更多相关文章

  1. docker 启动安装等命令

    确认是否安装url whereis curl 启动docker服务: sudo service docker start sudo service docker stop 安装curl sudo ap ...

  2. Docker简易安装及命令实例

    docker ~ ~ ~ Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中, ...

  3. linux中docker容器安装vi命令详解

    在使用docker容器时,同时你docker里的系统正好是debian或ubuntu的时候,有时候里边没有安装vim,敲vim命令时提示说:vim: command not found,这个时候就需要 ...

  4. docker中安装ps命令

    apt-get update && apt-get install -y procps

  5. centos7安装docker并安装jdk和tomcat(常用命令)

    阿里专属的镜像加速 在宿主机器编辑文件:vi /etc/docker/daemon.json 阿里专属的镜像加速地址,类似于"https://91cntlkt.mirror.aliyuncs ...

  6. docker下centos安装ping命令

    https://blog.csdn.net/king_gun/article/details/78423115 [问题] 从docker hub上拉取到则镜像centos:6.7在执行ping命令是报 ...

  7. windows下docker的安装及常用命令学习

    docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...

  8. 在Docker中安装.NET Core(使用命令行工具)

    在Docker中安装.NET Core目前共有两种方法:1,使用命令行工具安装2,使用VS2017来安装 本文主要介绍使用命令行工具来安装: 1,安装Docker(如果本机已经有Docker环境,可以 ...

  9. docker的基本安装和命令详解

    docker的安装 yum install docker-io docker的启动 /bin/systemctl start docker.service docker查找镜像 docker sear ...

  10. docker的安装及常用命令

    一:概述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用 ...

随机推荐

  1. uniapp 自定义 picker

    前言 我们在开发的过程中经常会遇到现有插件无法满足需求的情况,毕竟不是组件库不能满足项目所有需求,这时就需要我们自己去构建组件. 写这篇博文也是记录我平时开发的,以后可能会用得到的东西.希望大家看到本 ...

  2. Mybatis-概览地图

    思考: "为什么在使用 Mybatis 的时候,只需定义一个接口,不用写实现类就能使用XML中或者注解上配置好的SQL语句,就能完成对数据库 CRUD 的操作呢?" 这是因为用到了 ...

  3. 【HTML】HTML特殊字符大全

    使用方法:这些字符属于unicode字符集,所以,你的文档需要声明为UTF-8:下面符号列表的后面有两列编号,它们并不太一样,第一列是用于html的,你需要在前面加上&#符号:第二列可以用于C ...

  4. Date时间API

    JDK8之前时间API   1. java.lang.System类     System类提供的public static long currentTimeMillis()用来返回当前时间与1970 ...

  5. 分时问候——时间类、if语句

    import java.time.LocalTime; public class Hello { public static void main(String[] args) { LocalTime ...

  6. Solidity8.0-03

    对应崔棉大师 41-50课程https://www.bilibili.com/video/BV1yS4y1N7yu/?spm_id_from=333.788&vd_source=c81b130 ...

  7. Qt控制台输出显示乱码

    Qt控制台输出显示乱码 https://jingyan.baidu.com/article/ab69b2709aab0b2ca7189f3d.html

  8. VS 生成事件 xcopy 报错的解决方法

    出现这种情况有可能原因有2种可能: 1.目标文件夹设为只读:此时报错:MSB3073 代码4 ,输出显示:访问遭到拒绝. 解决:去掉文件夹只读属性. 2.缺少环境变量:报错为::MSB3073 代码9 ...

  9. vim自动输入P的问题

    最近新租的centos8云服务器默认用的vim8.0,发现一个bug,就是每次打开文件,自动输入了一个P,原来是8.0的一个bug,升级版本可以解决 参考https://www.jianshu.com ...

  10. AR设备使用Vuforia的优化

    主要是设置识别的范围,在应用内检测当前识别图和我的距离,以及识别图和我的角度,当进入了规定的范围和角度后, 在进行定位功能.我目前用的是距离在两米内 摄像机和识别图的角度正负不超过30度的范围 Vuf ...