Linux--Docker容器(1)

这里写目录标题

  • 简介
    • 名词解释
    • 作用
  • 指令
    • 在本地创建容器的过程:(这里以tomcat为例)
    • 访问容器
      • 端口映射
      • 目录挂载
      • 验证端口映射
      • 验证目录挂载
    • 删除镜像
    • 多小组访问容器
    • mysql容器

简介

名词解释

在这里插入图片描述
Docker镜像:可以将镜像理解为面向对象的类,或者说一个模版,用来创建应用或者说容器
Docker容器:镜像的实例化对象,也就是实实在在的应用,称为容器,相当于一个类的对象
Docker主机:运行Docker的虚拟机,也称为宿主机
Docker仓库:里面存放着许多镜像,属于一个类库

作用

我们在进行团队开发时,如果遇到有人使用的开发工具的版本不一致,那么会造成许多麻烦,而Docker就保证了应用版本的绝对一致,因为只要是同一个镜像实例化出来的容器,那么就一定是同一个版本

运行思路如下所示:
先从仓库(本地或者云)找到需要的镜像并拉取到宿主机、
之后创建该镜像的容器,给容器命名,该容器就是一个实实在在的应用了
在这里插入图片描述

指令

在本地创建容器的过程:(这里以tomcat为例)

在这里插入图片描述

1、首先查看本地是否有Docker库:(docker images)
在这里插入图片描述
2、之后搜索想要的镜像:
在这里插入图片描述
搜索时可以进行精确搜索对应的版本号,如果不加版本号,会列出所有,一般选择star最多的一个版本
在这里插入图片描述
3、拉取镜像到本地:(如果不加版本号,会拉取最新版本)
在这里插入图片描述
4、在本地创建docker容器:
在这里插入图片描述
在此之后,tomcat1就是一个tomcat应用的名字

5、启动tomcat进程:
在这里插入图片描述

访问容器

仅仅在本地创建并启动容器是不够的,当前是无法从其他终端访问到宿主机上的容器的,需要进行如下操作

首先这是一个指令:run
在这里插入图片描述
几个注意点:
对于-i选项,是创建容器
对于-d选项,是守护运行,其实就是运行容器,并且将日志隐藏到后台
对于-p选项,第一个是宿主机准备开放的端口号,第二个是容器的端口号,其中宿主机端口号容易修改,而容器的端口号轻易不改
对于-v选项,第一个是宿主机的文件目录,表示pc端向虚拟机传文件时,传到虚拟机的目录是哪里,可以更改
第二个是容器指定目录,一般是默认规定好的,不容易修改

且对于run命令,有如下规则:
在这里插入图片描述

端口映射

在这里插入图片描述
将容器的端口映射到宿主机的端口,这样当访问到宿主机的端口后,直接就访问到了容器

目录挂载

在这里插入图片描述
当传输文件时,如果不进行目录挂载,只能从pc端传入到宿主机,无法进入容器,这时进行目录挂载,可以将宿主机目录的内容同步到容器的指定目录中

验证端口映射

在这里插入图片描述
注意,如果本地没有对应的镜像,会自动拉取到本地
上图的命令要在最后加上一个镜像名,因为这里要进行容器的创建,与创建容器指令相似

运行完之后,再次到浏览器刷新端口号对应的网址,就可以进入了

验证目录挂载

之后我们进入到容器里面
在这里插入图片描述
注意,id号可以简写
进入到容器挂载的目录,ls命令查看当前目录有哪些内容,目前是空

然后我们向宿主机对应的目录中放入一个文件
在这里插入图片描述
再回到容器挂载的目录,ls查看,文件已经同步了
在这里插入图片描述

删除镜像

在这里插入图片描述
删除一个镜像时,可以先强制删除镜像目前的容器,之后再rmi 移除镜像

多小组访问容器

在这里插入图片描述
只需要修改容器名,宿主机端口号(该端口号很宽松,可以按照意愿进行修改),之后再更改容器名,实例化第二个容器即可

同时服务器还要开放端口5050,就可以互联网访问了

mysql容器

在这里插入图片描述
在这里插入图片描述
安装mysql时,与tomcat一样,
直接使用run命令
docker run -id --name mysql1(2、3、4、…) -p 宿主机准备开放的端口号:容器端口号 -v 宿主机目录:容器规定的目录 -e 数据库密码 最后是镜像(相当于类名)

安装好mysql之后,还要设置一下项目链接 这个链接是将一个项目与其数据库链接起来,如下,这就表示一个项目连上了mysql数据库,访问7070就可以打开项目页面
在这里插入图片描述

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

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

相关文章

CLIP 对比学习 源码理解快速学习

最快的学习方法,理清思路,找视频讲解,看源码逻辑: CLIP 源码讲解 唐宇 输入: 图像-文本成对配对的数据 训练模型的过程(自己理解): 怎么做的?:利用数据内部…

使用opencv的Laplacian算子实现图像边缘检测

1 边缘检测介绍 图像边缘检测技术是图像处理和计算机视觉等领域最基本的问题,也是经典的技术难题之一。如何快速、精确地提取图像边缘信息,一直是国内外的研究热点,同时边缘的检测也是图像处理中的一个难题。早期的经典算法包括边缘算子方法…

人工智能与星际旅程:技术前沿与未来展望

人工智能与星际旅程:技术前沿与未来展望 一、引言 随着科技的飞速发展,人工智能(AI)在各个领域的应用越来越广泛。在星际旅程领域,AI也发挥着越来越重要的作用。本文将探讨人工智能与星际旅程的结合,以及…

在开发微信小程序的时候,报错navigateBack:fail cannot navigate back at firstpage

这个错误的意思是:在这个页面已经是第一个页面了,没办法再返回了 报错原因 这个错误原因其实也简单,就是在跳转的时候使用了wx.redirectTo(),使用wx.redirectTo()相当于重定向,不算是从上一个页面跳转过来的&#xf…

【网络安全】HTTP Slowloris攻击原理解析

文章目录 Slowloris攻击的概念Slowloris攻击原理Slowloris攻击的步骤其他的DDoS攻击类型UDP FloodICMP (Ping) FloodSYN FloodPing of DeathNTP AmplificationHTTP FloodZero-day DDoS 攻击 推荐阅读 Slowloris攻击的概念 Slowloris是在2009年由著名Web安全专家RSnake提出的一…

C# WPF上位机开发(属性页面的设计)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 在软件开发中,属性或者参数设置是很重要的一个部分。这个时候如果不想通过动态添加控件的方法来处理的话,那么可以通过tab控…

ACT、NAT、NATPT和EASY-IP

目录 一、ACL 1.ACL 2.ACL的两种应用匹配机制 3.ACL的基本类型 4.ACL命令操作 5.ACL实验: 4.ACL的应用原则: 5.匹配原则: 二、NAT 1.NAT的原理及作用: 2.NAT分类 3.NAT配置 三、EASY-ip实验 四、NATPT 五、通配符 …

垃圾回收 (GC) 在 .NET Core 中是如何工作的?

提起GC大家肯定不陌生,但是让大家是说一下GC是怎么运行的,可能大多数人都不太清楚,这也很正常,因为GC这东西在.NET基本不用开发者关注,它是依靠程序自动判断来释放托管堆的,我们基本不需要主动调用Collect(…

抖音视频解析,无水印解析下载抖音视频

抖音视频解析,你是否经常遇到这样的情况,看到一些非常精彩的抖音视频,想要保存下来,但因为下载速度慢或者视频带有水印而感到困扰?那么,这款(抖音无水印解析工具)将是你的得力助手&a…

AcWing 1250. 格子游戏(并查集)

题目链接 活动 - AcWing本课程系统讲解常用算法与数据结构的应用方式与技巧。https://www.acwing.com/problem/content/1252/ 题解 当两个点已经是在同一个连通块中,再连一条边,就围成一个封闭的圈。一般用x * n y的形式将(x, y&#xff0…

zabbix批量添加端口监控

背景 以前做监控的时候,一台机器上就几个重要端口,手动添加一下监控就可以了。这次公司一个新业务上了很多服务器,每台服务器上的业务端口很多,而且还不一样。着手动添加会累死人的。所以想zabbix怎么批量添加端口监控。通过查了…

Unity inspector绘制按钮与Editor下生成与销毁物体的方法 反射 协程 Editor

应美术要求,实现一个在编辑环境下,不运行,可以实例化预制体的脚本 效果如上图所示 1.去实现一个简单的 行、列实例化物体脚本 2.在Inspector下提供按钮 3.将方法暴露出来(通过自定义标签实现) 需求一 using System.C…