docker03docker基础知识docker实战(代码片段)

neverctrl-c neverctrl-c     2023-01-17     655

关键词:

 

1 Docker基础知识

  1.1 什么是Docker

    Docker是一个可以装应用的容器,就像杯子可以装水、书包可以装书一样;docker官网

    Docker是Docker公司开发的,并开源到GitHub上;

    Docker是跨平台的,支持windows、linux、Macos

  1.2 Docker思想

    1.2.1 集装箱

      需要运行的程序放到一个集装箱中

    1.2.2 标准化

      运输方式

      存储方式

      API接口

    1.2.3 隔离

  1.3 Docker解决了什么问题

    1.3.1 解决运行环境不一致问题

       解决了本地可以运行但是上线就出现问题

    1.3.2 应用之间的隔离

      当一台服务器同时运行多个应用时,有可能会因为一个应用出现问题而牵扯到其他应用的运行;docker化的应用会给每个应用进行隔离,某个应用出现问题后不会影响其他的应用

    1.3.3 简化应用的扩展

      当需要大量扩展应用程序的部署时,利用docker可以轻松实现;例如:双十一应用的扩展

  1.4 Docker核心技术

    Docker运行程序的过程:利用命令从仓库拉取一个镜像到本地 -> 利用命令将镜像变成容器 -> 利用命令运行容器

    build : 构建镜像

    ship : 运输镜像,从仓库把需要的镜像运输到某台服务器(即:从仓库中获取镜像)

    run : 运行的进行(就是一个正在运行的容器)

技术分享图片

    1.4.1 镜像(集装箱)

      就行就是一系列的文件,可以是应用文件,也可以是运行应用需要的环境文件;Docker会把这些文件保存到本地,存储方式采用Linux中的联合文件系统的分层概念方式(即:将不同目录下的文件挂载到同一个目录下)。

      镜像可以用来创建Docker容器的。一个镜像可以包含一个完整的操作系统环境和用户需要的其它应用程序。在docker hub 里面有大量现成的镜像提供下载。docker的镜像是只可读的,一个镜像可以创建多个容器,每个容器之间相互不干扰。

技术分享图片

      镜像由下到上每层的具体说明为:

        操作系统的引导

        具体的Linux操作系统

        相关软件:tomcat、jdk等

        应用代码

        顶层为可写层(属于容器)   

      说明:docker加载完每层后,所有文件都会被视为放在同一个目录【相当于所有文件都放在一个文件系统中,docker的这个文件系统就叫作容器】

    1.4.2 仓库(超级码头)   

      就是存放镜像的远程仓库

      官方仓库国内仓库

技术分享图片

技术分享图片

 

    1.4.3 容器(运行程序的地方)      

      Docker利用容器来开发、运行应用容器是镜像创建的实例。它可以被启动、开始、停止、删除。每个容器都是 相互隔离的、保证安全的平台。

  电风扇

 

2 安装

  2.1 windows安装

    2.1.1 下载Docker for Developers

技术分享图片

技术分享图片

    2.1.2 启动Docker Quickstart Termina时遇到的坑

      说明01:非windows10用户需要下载docker toolbox 来安装docker

      说明02:安装完 docker toolbox 后会在桌面出现三个图标

技术分享图片

      坑01:启动Docker Quickstart Terminal时会提示找不到git执行路径

      解坑02:右键Docker Quickstart Terminal -> 属性 -> 快捷方式 -> 目标 -> D:PToolGitinash.exe --login -i "H:dockerDocker Toolboxstart.sh"

      坑02:第一启动Docker Quickstart Terminal时需要下载一个boot2docker文件,非常慢

      解坑02:利用迅雷下载(从第一次启动Docker Quickstart Terminal时可以获取到boot2docker文件的下载url),并将下载好的文件放到 C:Usersa.dockermachinecache 下即可;然后再次启动

      说明03:启动 Docker Quickstart Terminal 成功后,可以利用Docker Version来查看docker的客户端和服务端信息

技术分享图片

 

3 Docker实战

  3.1 Docker的Hello World

    docker pull  -> 拉取镜像

    docker images -> 查看镜像列表信息

    docker ps -> 查看正在运行的容器信息

    docker run -> 运行镜像

技术分享图片

 

  3.2 Nginx

    3.2.1 nginx容器的特点

      是一个持久运行的容器

      最好选择后台运行

      进入容器内部

    3.2.2 具体步骤

      》到镜像中心去查看nginx

技术分享图片

      》拉取nginx镜像

docker pull hub.c.163.com/library/nginx:latest

      》前台运行nginx容器(前台启动直接利用ctrl + c就可以停掉)

 docker run hub.c.163.com/library/nginx

      》后台运行nginx容器  

 docker run -d hub.c.163.com/library/nginx

技术分享图片

      》关闭nginx容器

docker stop 244c59f1c7f7

技术分享图片

      》进入nginx容器内部

        使用命令 dokcer exec 

        可以通过 docker exec --help 查看该命令的一些信息

docker exec -i -t b42516a87c12 bash

技术分享图片

        说明:进入容器后就相当于进入了一个linux系统,可以通过exit命令退出

      》访问容器中的nginx

        网络类型:Bridge(docker的默认模式)、Host、None

        端口映射

技术分享图片

$ docker run -d -p 8088:80 hub.c.163.com/library/nginx

技术分享图片

      坑01:IP问题

     

 未完待续...2018年11月11日16:59:14

    

      

 

docker03docker基础知识docker实战(代码片段)

 1Docker基础知识  1.1什么是Docker    Docker是一个可以装应用的容器,就像杯子可以装水、书包可以装书一样;docker官网    Docker是Docker公司开发的,并开源到GitHub上;    Docker是跨平台的,支持windows、linux、Maco... 查看详情

docker03基础操作(代码片段)

 【Docker 本体操作相关】检查Docker版本:docker-v 检查Docker当前状态:systemctlstatusdocker 停止Docker与开启Dockersystemctlstopdockersystemctlstartdocker 设置Linux开机自启动Dockersystemctlenabledocker【镜像操作Mir 查看详情

docker学习笔记docker相关概念,基本操作

计划:Docker学习笔记【2】Docker基础操作实操记录,Docker仓库、数据卷,网络基础学习---40注:所有操作在root下执行--1--概念:1、Docker镜像:镜像就是一个只读的模板,用于创建docker容器。Docker提供了简单的机制创建或者更新现... 查看详情

虚拟化容器docker基础-应用-实战全套课程

视频课程包含:10G01.第一阶段:Docker基础篇、02.第二阶段:Docker应用篇、03.第三阶段:Docker实战篇;目录01.第一阶段:Docker基础篇02.第二阶段:Docker应用篇03.第三阶段:Docker实战篇获取方式:关注公众微信号:博涵大数据或者扫... 查看详情

docker基础及命令

1.启动dockersudosystemctlstartdockersudosystemctlrestartdockersudosystemctlstopdockersudosystemctlstatusdocker2.查看docker信息sudodockerinfoContainers:1Running:0Paused:0Stopped:1Images:2ServerVersion:17.03. 查看详情

docker学习--基础命令

...http://www.cnblogs.com/lighten/p/6875355.html1.基本命令  搭建好docker环境之后,使用dockerhelp命令查看docker的基本用法:dockerCOMMAND.        目前我们较为常使用的是commands下面的指令,如果使用swarm相关功能会用到managementcommands... 查看详情

[docker]03aufs(代码片段)

1.基础知识1.1Linux的rootfs和bootfs  一个典型的Linux系统要能运行的话,它至少需要两个文件系统:bootfilesystem(bootfs):包含bootloader和kernel。用户不会修改这个文件系统。实际上,在启动(boot)过程完成后,整个内核都会... 查看详情

Java Spring Boot 的 Docker 基础镜像(`FROM`)是啥?

】JavaSpringBoot的Docker基础镜像(`FROM`)是啥?【英文标题】:WhatDockerbaseimage(`FROM`)forJavaSpringBoot?JavaSpringBoot的Docker基础镜像(`FROM`)是什么?【发布时间】:2017-06-0720:12:03【问题描述】:JavaSpringBoot应用程序的Docker基础映像(FROM)是... 查看详情

docker基础入门安装以及常见命令(代码片段)

1、docker常见命令以及安装知识详解1、docker安装1、安装版本统一:Dockerversion18.03.0-ce,build0520e242、安装方式:使用dockerrepository安装3、sudoapt-getupdate4、InstallpackagestoallowapttousearepositoryoverHTTPSsudoapt-getinstallapt-trans 查看详情

docker基础(代码片段)

目录Docker基础一docker容器介绍1.1docker的理念1.2docker的组成1.3docker能干什么1.4docker改变了什么1.5基于docker的不可变基础设施二Docker镜像和容器管理2.1相关站点2.2Docker部署与实践三Docker的网络访问和数据管理3.1Docker网络3.2Docker数据数... 查看详情

3.docker容器的常用命令(代码片段)

1.docker的主要内容(1).docker是一个cs架构(2).docker主要:镜像容器仓库网络存储监控(3).docker是一个软件的打包技术2.docker镜像基础命令1.dockersearchNginx(搜索镜像)[root@docker03~]#dockersearchnginxNAMEDESCRIPTIONSTARSOFFICIALAUTOMATEDnginxOffici... 查看详情

docker基础知识!(代码片段)

dockerDocker概述Docker与传统虚拟化的区别Docker原理Docker三大组件Docker网络模式DockerfileDocker镜像的分层Docker安装部署Docker命令管理镜像容器操作网络管理Docker数据卷Docker概述Docker是Linux中运行应用的开源工具,是一种轻量级的虚... 查看详情

docker基础知识!(代码片段)

dockerDocker概述Docker与传统虚拟化的区别Docker原理Docker三大组件Docker网络模式DockerfileDocker镜像的分层Docker安装部署Docker命令管理镜像容器操作网络管理Docker数据卷Docker概述Docker是Linux中运行应用的开源工具,是一种轻量级的虚... 查看详情

docker基础知识!(代码片段)

dockerDocker概述Docker与传统虚拟化的区别Docker原理Docker三大组件Docker网络模式DockerfileDocker镜像的分层Docker安装部署Docker命令管理镜像容器操作网络管理Docker数据卷Docker概述Docker是Linux中运行应用的开源工具,是一种轻量级的虚... 查看详情

docker基础:docker运行原理笔记

​今天给大家继续分享Docker相关的知识,今天主要介绍Docker运行原理以及生命周期,希望对大家能有所帮助!1、Docker底层运行原理Docker基于客户端(容器)-服务器(Docker引擎)结构的系统,Docker的守护进程运行在宿主主机上,... 查看详情

docker实践之03-dockerfile指令详解(代码片段)

目录FROM,指定基础镜像RUN,执行命令COPY,复制文件ADD,复制并解压文件CMD,容器启动命令ENTRYPOINT,入口点ENV,设置环境变量ARG,构建参数VOLUME,定义匿名卷EXPOSE,声明端口WORKDIR,指定工作目录USER,指定当前用户HEALTHCHECK,健... 查看详情

docker学习总结(56)——docker-compose基础知识温习

一、Docker-compose简介Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。Docker-Compose运行目录下的所有... 查看详情

docker入门基础(代码片段)

目录一、简介1、docker架构2、docker的概念二、docker的安装和管理1、docker安装2、docker配置阿里云镜像加速3、基础命令一、简介参考https://www.cnblogs.com/linuxk/p/8984242.html1、docker架构Docker使用客户端-服务器(C/S)架构模式,使用远程API来... 查看详情