docker run 命令详解

一、前言

Docker容器是一个开源的应用容器引擎,让开发者可以以统一的方式打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上(包括流行的Linux机器、Windows机器),也可以实现虚拟化。以下是Docker容器的特点:

  1. 沙箱机制:容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app)。
  2. 性能开销小:几乎没有性能开销,可以很容易地在机器和数据中心中运行。
  3. 语言、框架、系统无关:最重要的是,容器不依赖于任何语言、框架包括系统。所以,需要通过设计和部署把这些服务拆分成为它们自己的容器。
  4. 扩展性:如果一个应用程序能够被拆分成为越多的分布式组件,那么应用程序扩展的选择则越多。
  5. 配置管理:企业用户可以把这些配置部署在容器中或使用环境变量。为了积极主动地关注基于容器的应用程序的运行状况,可考虑实施必要的监控和管理机制,确保打开日志记录功能。
  6. 命令行工具和API:Docker提供了一个命令行工具Docker以及一整套RESTful API。
  7. 架构:Docker采用C/S架构,Docker daemon作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。客户端和服务端既可以运行在一个机器上,也可通过socket或者RESTful API来进行通信

二、nginx docker run 命令详解

docker run -d \--name nginx \--net=host \-v /home/docker/apps/nginx/www:/usr/share/nginx/html \-v /home/docker/apps/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \-v /home/docker/apps/nginx/logs:/var/log/nginx \-v /home/docker/apps/nginx/conf.d:/etc/nginx/conf.d \-v /home/docker/apps/nginx/cert:/etc/nginx/cert \nginx

-d: 在后台以守护进程模式运行容器。
--name nginx: 为容器指定一个名称,可以进行自定义名称。
 
 -v /home/docker/apps/nginx/www:/usr/share/nginx/html \: 将主机上的 NGINX 配置文件目录挂载到容器中的usr/share/nginx/html目录,以便使用自定义的 NGINX 配置。

所以在nginx  location中只需要指向容器的路径,实际访问的就是主机的路径,他们是个映射关系,或者说是个代理关系

如:配合的是  /usr/share/nginx/html/member-plat  实际主机上 /home/docker/apps/nginx/wwwmember-plat 

   #静态资源location /icon/ {root /usr/share/nginx/html/member-plat;try_files $uri $uri/ /index.html;}


 docker run --name eureka_docker  -d -p 8861:8861 eureka_host

docker run --name eureka_docker  -d -p 8861:8861 eureka_host

所以这一段的意思是 运行主机上的 eureka_host  在容器中叫 eureka_docker  主机的  8861 映射 容器的 8861 ,通过主机的8861 实际访问的就是容器的 8861

三、DockerFile的使用

Dockerfile是一个用来构建镜像的文本文件,其中包含了一系列的指令和说明,这些指令和说明告诉Docker如何构建镜像。

Docker通过阅读Dockerfile中的指令代码来构建镜像文件。在Dockerfile中,可以使用多种指令来定义如何构建镜像,例如:

  1. FROM:指定基础镜像;
  2. RUN:在容器中执行命令;
  3. COPY:将文件从主机复制到容器中;
  4. ENV:设置环境变量;
  5. EXPOSE:声明容器将监听的端口;
  6. CMD:定义容器启动时执行的命令。

要创建一个Dockerfile,需要在项目目录中创建一个名为Dockerfile的文件,并在其中编写指令。编写Dockerfile的指令将按照文件中的顺序逐一执行。使用docker build命令可以构建镜像。

FROM java:8
VOLUME /tmp
ADD eureka.jar eureka.jar
EXPOSE 8861

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/605379.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据聚合、自动补全、数据同步、es集群

目录 数据聚合 聚合的分类 DSL实现bucket聚合 DSL实现Metrics聚合 RestAPI实现聚合 多条件聚合 带过滤条件的聚合 自动补全 安装拼音分词器 自定义分词器 completion suggester查询 修改索引库数据结构 RestAPI实现自动补全查询 实现搜索框自动补全 数据同步 数…

华为OD机试会遇到原题吗?

答案是:会遇到。 OD机试是有题库的,每半年刷新一次题库,题库题目在100-200到题之间,2024年考的是统一考试C卷,题库我基本已经收集全了。 学生们反馈,最近的考试基本会遇到2-3道原题,高分比较简…

【2024系统架构设计】 系统架构设计师第二版-层次式架构设计理论与实践

目录 一 表现层框架设计 二 中间层架构设计 三 数据访问层设计 四

RabbitMQ(九)死信队列

目录 一、简介1.1 定义1.2 何时进入死信队列?1.3 死信消息的变化1.4 死信队列的应用场景1.5 死信消息的生命周期 二、代码实现2.1 死信队列的配置步骤2.2 配置类2.3 配置文件2.4 生产者2.5 业务消费者2.6 死信消费者2.7 测试结果 三、总结 RabbitMQ 是流行的开源消息…

MySQL数据库进阶-索引

索引 索引是帮助 MySQL 高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级…

【Spring Boot 3】【数据源】自定义JDBC数据源

【Spring Boot 3】【数据源】自定义JDBC数据源 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术总…

CSS3渐变属性详解

渐变属性 线性渐变 概念:线性渐变,指的是在一条直线上进行的渐变。在线性渐变过程中,起始颜色会沿着一条直线按顺序过渡到结束颜色 语法: background:linear-gradient(渐变角度,开始颜色,结束颜色);渐变…

https配置证书

HTTPS 基本原理 https 介绍 HTTPS(全称:HyperText Transfer Protocol over Secure Socket Layer),其实 HTTPS 并不是一个新鲜协议,Google 很早就开始启用了,初衷是为了保证数据安全。 国内外的大型互联网…

SQL 基础知识点

1. 数据库相关术语 数据库(database):保存有组织的数据的容器(通常是一个文件或一组文件)。数据表(table) :某种特定类型数据的结构化清单。模式(schema)&am…

springboot 房屋租赁系统

spring boot mysql mybatis 前台后端

开心自走棋:使用 Laf 云开发支撑数百万玩家

先介绍一下开心自走棋 开心自走棋是一款剑与魔法的烧脑自走棋游戏。以著名的魔幻世界观为蓝本,采用了轻松可爱的画面风格,精致细腻的动画和特效来还原魔兽之战。 现在市面上自走棋游戏多是 PvP 玩法为主,而开心自走棋是以 PvE 玩法为主的&a…

C语言光速入门笔记

C语言是一门面向过程的编译型语言,它的运行速度极快,仅次于汇编语言。C语言是计算机产业的核心语言,操作系统、硬件驱动、关键组件、数据库等都离不开C语言;不学习C语言,就不能了解计算机底层。 目录 C语言介绍C语言特…

相机成像之图像传感器与ISP【四】

文章目录 1、图像传感器基础1.1 基础原理——光电效应1.2 基础的图像传感器设计1.3 衡量传感器效率的一个关键指标:光量子效率(QE)1.4 感光单元的响应1.5 像素的满阱容量1.6 像素尺寸和填充比例1.7 微透镜的作用1.8 光学低通滤波器简介1.9 传…

机器学习周报第27周

目录 摘要Abstract一、文献阅读 摘要 本周阅读了一篇混沌时间序列预测的论文,论文模型主要使用的是时间卷积网络(Temporal Convolutional Network,TCN)、LSTM以及GRU。在数据集方面除了使用现实的时间序列数据外,还通…

uni-app页面数据传参方式

uni-app 是一个使用 Vue.js 开发所有前端应用的框架,可以编译到 iOS、Android、H5、小程序等多个平台。当你在多个页面间传递参数时,通常有多种方法,例如通过 uni.navigateTo、路由参数、本地存储等方式。下面是一些方法的说明和示例代码。 …

SAP_PP_理解工作中心的定义与作用和一些使用的参考规则

1.1 工作中心的定义 工作中心是用于生产产品的生产资源,包括机器、人和设备,是各种生产或能力加工单元的总称。工作中心属于能力的范畴即计划的范畴,而不属于固定资产或者设备管理的范畴。一个工作中心可以是一台设备、一组功能相同的…

计算机毕业设计 | SpringBoot+vue农产品商城 买菜购物网站(附源码)

1,绪论 1.1 项目背景 随着社会发展,网上购物已经成为我们日常生活的一部分。但是,至今为止大部分电商平台都是从人们日常生活出发,出售都是一些日常用品比如:食物、服装等等,并未发现一个专注于菜品的电商…

LeetCode 2353. 设计食物评分系统【设计,哈希表,有序集合;堆+懒删除】1781

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章…

map升序和降序

1.升序排序&#xff08;TreeMap&#xff08;默认是升序排列的&#xff09;&#xff09; Map<String, Integer> map new HashMap<>(); // 使用Stream API对Map进行升序排序 Map<String, Integer> sortedMap new LinkedHashMap<>(); map.entrySet().st…

【力扣每日一题】力扣447回旋镖的数量

题目来源 力扣447回旋镖的数量 题目描述 给定平面上 n 对 互不相同 的点 points &#xff0c;其中 points[i] [xi, yi] 。回旋镖 是由点 (i, j, k) 表示的元组 &#xff0c;其中 i 和 j 之间的距离和 i 和 k 之间的欧式距离相等&#xff08;需要考虑元组的吮吸&#xff09;…