Docker笔记:数据卷挂载的三种方式及物理机与容器内的环境变量的传递

本文主要是介绍Docker笔记:数据卷挂载的三种方式及物理机与容器内的环境变量的传递,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

容器数据挂载到物理机上的三种方式

1 ) 实名(指定路径)挂载数据卷

  • docker run -v 物理机目录:容器内目录 镜像id
  • 示例
    • docker run -it -d --name mynginx_p_v -p 82:80 -v /root/www:/usr/share/nginx/html nginx
    • 此时访问 会报 403 forbidden
    • 因为 物理机上的 root/www 中是没有东西的,所以403
    • touch root/www/index.html 并写一些东西进去
    • 再次访问就行了
  • 查看容器内信息:
    • docker inspect 容器Id | grep www
  • 这种用法的最多的,清晰方便的管理

2 )匿名(自动分配)挂载数据卷

  • docker run -v 容器内目录 镜像ID
  • docker volume ls 可以看到 数据卷的列表
  • docker inspect 容器ID | grep volume 可查看到当前数据卷在哪个目录中
  • 这种在具体项目中,也可以使用,也就是对存储位置要求不严格

3 )具名挂载数据卷

  • docker run -v 卷名称:容器内目录 镜像ID
    • 这个和匿名挂载非常相似
    • 这个卷名称是指定的
  • docker volume ls
    • 可看到具名挂载的数据卷信息
  • docker inspect 容器ID | grep volume
    • 可看到这个具名数据卷的具体信息
    • 这种基于卷名称自主设定的数据卷挂载比匿名挂载的好处是名称上的简洁和好认
    • 匿名挂载产生的是一长串的随机hash字符串

以上,三种方式挂载后,在物理机或容器内操作,都会互相同步数据

运行容器时传递的环境变量

  • docker run -e 变量名=变量值 镜像ID/镜像NAME
  • 举例
    • docker run -it centos printenv 这时候打印的都是系统变量
    • docker run -it -e TEST_ENV=sssss centos printenv 这样就多打印出了新加的这个变量
    • docker run -it -e TEST_ENV=sssss -e NNN_ENV=dddd centos printenv 这样可以传递多个环境变量
  • 习惯上,传递的变量名都是大写

这篇关于Docker笔记:数据卷挂载的三种方式及物理机与容器内的环境变量的传递的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/494935

相关文章

SpringBoot中@Value注入静态变量方式

《SpringBoot中@Value注入静态变量方式》SpringBoot中静态变量无法直接用@Value注入,需通过setter方法,@Value(${})从属性文件获取值,@Value(#{})用... 目录项目场景解决方案注解说明1、@Value("${}")使用示例2、@Value("#{}"php

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映