docker入门加实战—从部署MySQL入门docker

news2024/9/28 21:40:12

docker入门加实战—从部署MySQL入门docker

docker部署MySQL

输入如下命令:

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123 \
  mysql

部署成功截图如下:

部署成功截图

当执行命令后,Docker做的第一件事情,是去自动搜索并下载了MySQL,然后会自动部署MySQL。

而且,这种安装方式完全不用考虑运行的操作系统环境,它不仅仅在CentOS系统是这样,在Ubuntu系统、macOS系统等等,都可以使用这条命令来安装MySQL。

如果是手动安装,必须手动解决安装包不同、环境不同的、配置不同的问题!而使用Docker,这些完全就不用考虑了。原因就是Docker会自动搜索并下载MySQL。

注意:这里下载的不是安装包,而是镜像。镜像中不仅包含了MySQL本身,还包含了其运行所需要的环境、配置、系统级函数库。因此它在运行时就有自己独立的环境,就可以跨系统运行,也不需要手动再次配置环境了。这套独立运行的隔离环境我们称为容器

Docker是去哪里搜索和下载镜像的呢?这些镜像又是谁制作的呢?

Docker官方提供了一个专门管理、存储镜像的网站,并对外开放了镜像上传、下载的权利。这个网站就成了Docker镜像交流的社区:

https://hub.docker.com/

基本上我们常用的各种软件都能在这个网站上找到,我们甚至可以自己制作镜像上传上去。

像这种提供存储、管理Docker镜像的服务器,便被叫做DockerRegistry,可以翻译为镜像仓库。DockerHub网站是官方的仓库,阿里云、华为云等会提供一些第三方仓库,我们也可以搭建私有的镜像仓库。

Docker本身包含一个后台服务,我们可以利用Docker命令告诉Docker服务,帮助我们快速部署指定的应用。Docker服务部署应用时,首先要去搜索并下载应用对应的镜像,然后根据镜像创建并运行容器,应用就部署完成了。

一图以毙之:

讲解图

命令解读

我们使用了如下命令来部署MySQL:

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123 \
  mysql
  • docker run -d :创建并运行一个容器,-d是让容器以后台进程运行;
  • --name mysql : 给容器起个名字叫mysql,可以起其他的名字;
  • -p 3306:3306 : 设置端口映射。
    • 容器是隔离的环境,外界并不能访问。但是可以将宿主机端口映射容器内到端口,当访问宿主机指定端口时,就是在访问容器内的端口了。
    • 容器内端口往往是由容器内的进程决定,例如MySQL进程默认端口是3306,因此容器内端口一定是3306;而宿主机端口则可以任意指定,一般与容器内保持一致。
    • 格式: -p 宿主机端口:容器内端口,示例中就是将宿主机的3306映射到容器内的3306端口
  • -e TZ=Asia/Shanghai : 配置容器内进程运行时的一些参数
    • 格式:-e KEY=VALUE,KEY和VALUE都由容器内进程决定
    • 案例中,TZ=Asia/Shanghai是设置时区;MYSQL_ROOT_PASSWORD=123是设置MySQL默认密码
  • mysql : 设置镜像名称,Docker会根据这个名字搜索并下载镜像
    • 格式:REPOSITORY:TAG,例如mysql:8.0,其中REPOSITORY可以理解为镜像名,TAG是版本号
    • 在未指定TAG的情况下,默认是最新版本,也就是mysql:latest

镜像的名称是要到DockerRegistry中寻找的,镜像运行时的配置是要参考镜像的帮助文档的,这些在DockerHub网站或者软件的官方网站中都能找到。

如果我们要安装其它软件,也可以到DockerRegistry中寻找对应的镜像名称和版本,阅读相关配置即可。

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

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

相关文章

MAX插件CGMAGIC一键解决效果图在软包硬包上费时费力操作!

使用3dmax软件进行室内建模中的软包、硬包、欧式真皮沙发等家具建模这些的操作相对是比较多的,3dmax软包建模来说,进行手动建模一向都是非常头痛和耗时的事情。 CGMAGIC小编来和大家聊聊,如何一键解决效果图在软包硬包上费时费力操作&#xf…

mp4音视频分离技术

文章目录 问题描述一、分离MP3二、分离无声音的MP4三、结果 问题描述 MP4视频想拆分成一个MP3音频和一个无声音的MP4文件 一、分离MP3 ffmpeg -i C:\Users\Administrator\Desktop\一个文件夹\我在财神殿里长跪不起_完整版MV.mp4 -vn C:\Users\Administrator\Desktop\一个文件…

在XShell里Linux服务器创建和删除子用户

文章目录 在XShell里Linux服务器创建和删除子用户1、创建子用户2、删除子用户 在XShell里Linux服务器创建和删除子用户 1、创建子用户 注意:只有root用户下才能创建子用户 步骤: 首先打开XShell登录上root用户,然后输入useradd 要添加的用户…

SpringBoot-黑马程序员-学习笔记(三)

目录 30.springboot整合MyBatis-plus 32.SSM整合 38.MP中的条件查询 小知识:许多放在类前面的注解,比如Mapper,Service都是将该类定义成一个Bean,交给spring管理 39.Service模块 30.springboot整合MyBatis-plus 1.创建普通springboot项目…

简单大方的自我介绍 PPT 格式

自我介绍是展示自己的机会,同时也是展现自信和魅力的重要时刻。通过简单大方的PPT格式,可以更好地展示自己的个性和才华。下面是一些建议,帮助你在自我介绍中展现自信和魅力。 1. 打造简洁而有吸引力的PPT布局: - 选择简洁大方的背…

牛客 day2 - 7

9.25 day 2 1. 简述方法重写与方法重载的意义与区别: 方法重写: 1.参数列表必须完全与被重写方法相同 //参数列表(分为四种): (1)无参无返回值方法; (2&#xff0…

视频监控系统EasyCVR如何通过API接口获取国标GB28181协议接入的实时录像?

安防监控视频汇聚平台EasyCVR基于云边端一体化架构,具有强大的数据接入、处理及分发能力,可提供视频监控直播、云端录像、云存储、录像检索与回看、智能告警、平台级联、云台控制、语音对讲、智能分析等功能。平台也提供丰富的API接口供开发者集成、调用…

【吞噬星空4】又魔改,徐欣自杀殉情,变成被阿特金击杀,引发粉丝吐槽

Hello,小伙伴们,我是小郑继续为大家深度解析国漫资讯。 ​ 吞噬星空第四季动画已经更新了,虽然没有什么炸裂的打斗,都是一些过渡性的戏份,但是罗峰成功孕育出了人类分身,阿特金三人组又在为非作歹,这次他…

uCOSIII实时操作系统 四 任务管理

目录 uCOSIII启动过程: stm32的启动过程: uCOSIII的启动过程: 任务状态: 任务控制块: 任务堆栈: 任务就绪表: 优先级位映射表//OSPrioTbl[] 位映射表: 查找优先级&#xf…

GNN+RA 文献阅读

[1] X. Wang et al., ‘Scalable Resource Management for Dynamic MEC: An Unsupervised Link-Output Graph Neural Network Approach’. paper code:GitHub - UNIC-Lab/LOGNN: This is the code for paper "Scalable Resource Management for Dynamic MEC:…

Linux[find命令]-根据路径和条件搜索指定文件并删除

一、find命令简介 find命令:用于根据给定的路径和条件查找相关文件或目录,参数灵活方便,且支持正则表达式,结合管道符后能够实现更加复杂的功能。 基本语法格式:find pathname -options 搜索内容 [其他选项] pathname…

链表(2)——带头双向循环链表

🍁一、链表的分类 🌕1.单向或者双向 🌕2.带头或者不带头(有无哨兵) 🌕3.循环或者不循环 🌕4.无头单向非循环链表(常用) 🌕5.带头双向循环链表(常用…

SNMP报文与MIB Browser软件讲解

目录 SNMP报文结构 MIB Browser软件讲解 具体的操作步骤 MIB操作方式 SNMP报文结构 UDP端口读/写为161,Trap为162 版本号 版本号 名称 0 V1 1 V2c 2 V3 团体字 团体字相当于管理方和被管理方进行校验的密钥 读写团体字 两端需要配置为一致 PDU类型——标…

5项先进采购技术,帮助你的企业脱颖而出

持续的改进对保持每个企业的正常运转有着重要作用,采购部门也不例外。 以前,采购团队主要关注两个方面:降低成本和减少风险。随着自动化和云服务的兴起,如今他们还需要关注采购决策的效率、可访问性和可持续性。 技术与采购的融合…

python中pytorch的广播机制——Broadcasting

广播机制 numpy 在算术运算期间采用“广播”来处理具有不同形状的 array ,即将较小的阵列在较大的阵列上“广播”,以便它们具有兼容的形状。Broadcasting是一种没有copy数据的expand 不过两个维度不相同,在前面插入维度1扩张维度1到相同的维…

轻盈百搭头戴式耳机——umelody轻律 U1头戴式复古耳机分享

最近买了款热门的轻律U1头戴式耳机,今天和大家来分享一下,看看究竟效果怎样呢? UMELODY轻律品牌将复古潮流文化结合与音频设备之中,一直以来致力于音频领域的研究和创新。产品外观定位时下流行之‘Retro Futurism’ “ 复古未来主…

软件测试工程师岗位核心任务

最近转正,需要完成一个OA任务,其中有一项“你认为软件测试工程师岗位核心任务是什么?”要求写出三到五条,并简单地阐明。 这个问题似乎很好回答,软件测试工程师不就是做测试?仅仅这样吗?小酋抠…

进程相关介绍(一)

目录 进程标识符 查看进程的标识符 ps axj | head -1&& ps axj | grep 程序名 ls /proc/进程标识符 获得进程标识符 getpid()函数 getppid()函数 创建一个子进程 fork函数解析 fork函数返回子进程的pid给父进程的原因 fork函数有两个返回值的原因 一个进程实质上就是一…

【每日一记】OSPF中Hello报文详讲

个人名片: 🐼作者简介:一名大二在校生,喜欢编程🎋 🐻‍❄️个人主页🥇:小新爱学习. 🐼个人WeChat:hmmwx53 🕊️系列专栏:&#x1f5bc…

SpringBoot 实现EMQ设备的上下线告警

前言 上下线通知 我遇到了一个难题,即在使用EMQ X 4.4.10的开源版本时,我需要实现设备的上下线状态监控,但该4.4.10开源版本并未内置设备上下线提醒模块,只有企业版才内置了该模块。这为我带来了一些技术上的难题,迫…