Docker入门笔记

2023-11-15

Docker 技术的三大核心概念

  • 镜像 Image

  • 容器 Container

  • 仓库 Repository

    在线练习docker https://labs.play-with-docker.com/
    URL 工具 curl 的用法指南 https://www.ruanyifeng.com/blog/2019/09/curl-reference.html
    Docker部署一个web项目并打包成镜像文件 https://www.jb51.net/article/146308.htm
    Kubernetes能做什么 一般来讲Kubernates是针对容器提供部署、维护、扩展机制等功能,更方便地管理跨机器运行容器化的应用

    使用场景

    1. 解决环境不一致
    2. 多用户操作系统,会相互影响
    3. 运维成本过高
    4. 安装软件成本过高

    docker的思想

    1. 集装箱 放着所有的需要的内容
    2. 标准化
      1.运输的标准化
      2.命令的标准化
      3.提供rest的api

    3 . 隔离性

    • 在内核中开辟独立空间
    • 三个基本概念
    • 注册中心

    抽象理解

    ​ 镜像 == 类
    ​ 容器 == 对象
    ​ 容器与镜像的关系类似于面向对象编程中的对象与类

docker的基本操作

一、安装docker

1.下载docker的依赖环境

yum -y install yum-utils device-mapper-persistent-data 1vm2

2.设置镜像源

yum-cofig-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.安装docker

yum makacache fast   
命令行工具
yum -y install docker-ce

4.启动并设置为开机自启

  • systemctl start docker
  • systemctl enable docker
  • docker run hello-world 测试

二、 docker的中央仓库

1.  官方的中央仓库:安全 速度慢  hub.docker.com
2.  国内 网易蜂巢 c.163yun.com/hub#/home daoCloud hub.daocloud.io(推荐) 
3.  公司内部会采用私服的方式拉取镜像 需要配置

需要在/etc/docker/daemon.json 加上

{

  "registry-mirrors":["https://registry.docker-cn.com"],

  "insecure-registries":["ip:port"]

 }

重启两个服务

  • systemctl daemon-reload
  • systemctl restart docker

三、 镜像的操作

  1. 拉取镜像到本地 docker pull 镜像路径:版本号
  2. 查看本地所有镜像 docker images
  3. 删除镜像 docker rmi 容器ID ID不必全部
  4. 镜像的导入导出
    • 导出 docker save -o 导出路径 镜像ID
    • 导入 docker load -i 文件路径
    • 修改镜像名称 docker tag 镜像ID 新镜像名称:版本

四、 容器的操作

  1. docker run 镜像的标识|镜像[:tag]
    常用的参数
    docker run -d -p 宿主端口:容器端口 --name 容器名称 镜像的标识|镜像[:tag]
    -d 代表后台运行的容器
    -p 宿主端口:容器端口 为了映射当前linux的端口和容器的端口
    –name 容器名称:指定的容器的名称
  2. 查看正在运行的容器
    docker ps [-qa]
    -a 查看全部 包括没有运行的
    -q 只查看容器的标识
  3. 查看容器的日志
    docker logs -f 容器ID
    -f 可以滚动查看日志的最后几行
  4. 进入容器内部
    docker exec -it 容器id bash
  5. 删除容器
    docker stop 容器ID
    docker stop $(docker ps -qa) 停止全部容器
    docker rm 容器ID
    docker rm $(docker ps -qa) 删除全部容器

五、Docker的应用

  1. 准备项目包
  2. 准备mysql容器
    docker run -d -p 3306:3306 --name mysql -e MYSQL_PASSWORD=root daocloud.io/library/mysql:5.7.4
  3. 准备php容器
    –同上
  4. 准备nginx容器
    –同上
    把项目包复制到网站根目录下
    docker cp 文件名称 容器id:容器内部路径

六、数据卷
概念:将宿主机的一个目录映射到容器的一个目录中

  1. 创建数据卷
    docker volume create 数据卷名称
    创建之后,默认会存放在一个目录下 /var/lib/docker/volumes/数据卷名称/_data
  2. 查看数据卷的详细信息
    docker volume inspect 数据卷名称
  3. 查看全部数据卷
    docker volume ls
  4. 删除数据卷
    docker volume rm 数据卷名称
  5. 应用数据卷
    当你映射数据卷时,如果不存在会自动创建
    docker run -v 数据卷名称:容器内部的路径 镜像ID
    直接指定一个路径为数据卷的存放位置
    docker run -v 路径:容器内部的路径 镜像ID
  6. docker自定义镜像
    • 创建一个Dockerfile文件,并且指定自定义镜像信息
      Dockerfile常用的内容
      from 指定当前自定义的依赖环境
      copy 将相对路径下的内容复制到自定义镜像中
      workdir 声明镜像的默认工作目录
      cmd 需要执行的命令 在workdir下执行 cmd写多个 以最后一个为准
      举个栗子
      from daocloud.io/library/tomcat:8.5.15-jre8
      copy ssm.war /usr/local/tomcat/webapps
    • 将准备好的Dockerfile相应的文件拖拽到Linux中,通过docker命令制作镜像
      docker build -t 镜像名称[:tag] .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker入门笔记 的相关文章

随机推荐

  • Tomcat的JDBC数据源之一(如何使用配置JDBC数据源)

    JDBC数据源是什么 许多 Web 应用程序需要通过 JDBC 驱动程序访问数据库 以支持该应用程序所需的功能 Java EE 平台规范要求 Java EE 应用服务器为此目的提供DataSource实现 即用于 JDBC 连接的连接池 注
  • 独自封装windows 10系统教程(全)

    目录 作者语录 一 封装前准备工具 二 安装Windows系统 1 创建虚拟机环境 2 更改BIOS启动顺序 3 安装windows系统 三 调整系统设置 1 切换管理员账号 2 添加英文输入法 3 关闭windows自动更新 4 取消任务
  • Ubuntu FTP客户端NcFTP 安装教程

    本篇文章主要介绍在Ubuntu 如何使用功能强大的FTP客户端软件NcFTP Ubuntu的源里为我们提供了FTP客户端软件NcFTP 可这款工具对新手来说不是很方便 本文介绍的是一种大家广泛使用的ftp命令行客户 端软件NcFTP 它提供
  • 如何在阿里云linux服务器查看应用日志--部署在tomcat

    1 首先要进入tomcat的目录有一个log目录 2 直接输入 tail f 文件名进行查看日志 例如 tail f catalina out tail f jsvc outfile out
  • Spring注入service为null另类解决办法 工具类 一般类 静态 非controller

    本文转载自 http www cnblogs com allforone p 4108862 html 系统为SpringMVC框架 在开发的过程中有一些工具类需要调用下由spring管理的service层 但是一进注入不进来 报null异
  • 高德地图获取行政区一直报no_data

    代码 let that this this map new AMap Map container zoom 20 级别 center 120 26 30 18 中心点坐标 mapStyle amap styles darkblue 设置地图
  • 【复习笔记】Java基础理论知识,Android小程序开发实例

    lib目录 存放Java的类库文件 src rar文件 构成Java平台核心API的所有类的源文件 5 main 方法 main 方法是Java程序的入口 一个程序只能有一个main 方法 6 转义字符 n 换行 t 制表位 一个制表位等于
  • tshark在流量分析中的绝佳应用(超详细)

    目录 简介 参数 tshark与wireshark对比 基本命令 获取数据包摘要信息 显示时间格式 捕获过滤器 捕获并保存数据包 显示过滤器 区分显示过滤器和读取过滤器 一些好用的显示过滤器 e参数的应用 HTTP中的应用案例 mysql中
  • 在keil开发平台中,常用的Debug菜单命令

    在keil开发平台中 常用的Debug菜单命令如下 start stop debugsession 开始或者停止调试操作 run 一直运行到下一个活动的断点 停止点 如果没有断点 则一直循环运行 step 以行为单位 单步执行代码 step
  • FreeMarker由浅入深之一 FreeMarker简单介绍

    一 什么是FreeMarker FreeMarker是一个用Java语言编写的模板引擎 它基于模板来生成文本输出 所谓模板 就是一份已经写好了基本内容 有着固定格式的文档 其中空出或者用占位符标识的内容 由使用者来填充 不同的使用者给出的数
  • 设置访问权限_一项一项教你测等保2.0——Windows访问控制

    一 前言 随着社会的进步和科技的发展 新技术 新业务下的产品与服务不断创新与升级 云服务 大数据 物联网 移动互联及工业控制等新技术广泛应用 使用多年的等保1 0相关系列标准在适用性 时效性 易用性 可操作性上已经无法满足新时代的要求 并且
  • 注册adobe账号成功访问被拒绝

    安装photoshop2020后需要登录adobe账号 登录adobe账号成功但提示访问被拒绝 出现这种情况建议换个邮箱重新注册 而且国家注意不要选中国
  • XO

    时钟信号是处理器电路开始工作的基本条件之一 在电路中有着非常重要的作用 当智能手机接上电源之后 电源电路两端就会产生3 7V的电压 这个电压直接为处理器内部的振荡器供电 随即时钟电路开始工作 为处理器芯片内部的微处理器电路中的开机模块提供所
  • SpringBoot项目创建报:java.lang.ClassNotFoundException: org.springframework.boot.SpringApplication错误的解决方案

    第一次创建SpringBoot项目结果出现了不少错误 其他错误都通过百度的方式得到解决 唯独这个错误困扰我很久了 而且百度上没有对于这种错误的解决方案 所以给出这种错误的解决方案 虽然明显知道是jar包问题 不管怎么clean怎么的还是没能
  • 数据结构 - 队列 && 环形队列(循环队列)

    文章目录 队列介绍 数组模拟队列设计思路 数组模拟队列代码实现 环形队列相关知识说明 队列长度公式推导 数组模拟环形队列代码实现 队列介绍 队列是一个有序列表 可以用数组或是链表来实现 遵循先入先出的原则 即 先存入队列的数据 要先取出 后
  • yum安装 ssh:Failed to download metadata for repo ‘AppStream‘

    通过yum安装ssh执行命令 yun install openssh openssh server openssh clients 会报错 Failed to download metadata for repo AppStream 各种尝
  • 升压稳压原理

    文章目录 降压稳压 升压稳压 芯片的作用 储能公式 降压稳压 降压稳压原理相对简单 将芯片当成一个 自动可变电阻 即可 这样就可以保证输出为恒定的电压值 不过需要注意的是 这块 自动可变电阻 有极限值 比如对于7805来说 降压差不可少于2
  • 基于mnist数据库的CNN卷积神经网络手写数字识别MATLAB仿真

    目录 一 理论基础 二 核心程序 三 仿真结论 一 理论基础 手写数字识别是计算机视觉领域的一个重要问题 它在很多应用中都有广泛的应用 如自动化识别 自然语言处理 人机交互等 基于MNIST数据库的CNN卷积神经网络手写数字识别是其中一种常
  • 谷歌开源图片压缩算法Guetzli实测体验报告

    作者 王亚军 编辑 宋秉金 王亚军 腾讯工程师 负责OMG无线新闻 腾讯视频图片服务等的业务运维工作 阅读原文 更多技术干货 请访问腾云阁 谷歌大神又出开源新技术啦 这次是对JPEG格式的图片采用全新算法重新编码 输出的图片还是JPEG但是
  • Docker入门笔记

    Docker 技术的三大核心概念 镜像 Image 容器 Container 仓库 Repository 在线练习docker https labs play with docker com URL 工具 curl 的用法指南 https