不外传秘诀| docker 快速搭建常用的服务环境

本文主要给大家介绍如何使用 docker 搭建常用的服务环境,
包括mysql,reedis,nginx,jenkins 等常用的环境,下面直接进入主题。
1、MySQL 部署
①搜索 MySQL 镜像
docker search mysql
②拉取 MySQL 镜像
docker pull mysql:5.7
③创建容器,设置端口映射,目录映射
●在宿主机中创建一个 MySQL 目录,用来存储数据库信息
-
mkdir ~/mysql -
cd mysql:5.7
●启动容器
docker run -id \
-p 3306:3306 \
--name db \
-v /mysql/conf:/etc/mysql/conf.d \
-v /mysql/logs:/logs \
-v /mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7
○ -p 3307:3306 :宿主机的 3307 端口映射到容器的 3306 端口
○ --name c_mysql: 指定容器名称
○ -v /mysql/conf:/etc/mysql/conf.d : 挂载 MySQL 配置文件的路径到容器
○ -v /mysql/logs:/logs :将 MySQL 日志文件的路径挂载到容器
○ -v /mysql/data:/var/lib/mysql:将主机 MySQL 的数据文件目录挂载到容器
④数据库操作
●进入容器操作数据库
# 进入容器
docker exec -it c_mysql /bin/bash
# 进入mysql
mysql -uroot -p123456
# 创建一个远程连接账号> use mysql> grant all privileges on * to 'test'@'%' identified by 'mysql';
# 刷新权限> flush privileges
●客户端远程连接数据库
# 数据库host为:宿主机的IP
# 数据库端口为:3306
# 数据库账号密码:自己上面设置的账号密码
2、nginx 部署
①搜索镜像
docker search nginx
②拉取镜像
docker pull nginx
③创建容器,映射端口
●本地创建 nginx 数据存储文件
# 创建nginx目录
mkdir /nginx
cd /nginx
mkdir conf
cd conf
# 编辑nginx配置文件
vi nginx.conf
●nginx 配置文件内容
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;events {worker_connections 768;
}http {sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 65;types_hash_max_size 2048;include /etc/nginx/mime.types;default_type application/octet-stream;ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLEssl_prefer_server_ciphers on;access_log /var/log/nginx/access.log;error_log /var/log/nginx/error.log;gzip on;include /etc/nginx/conf.d/*.conf;include /etc/nginx/sites-enabled/*;}
●运行容器
docker run -id \
--name nginx-test \
-p 8000:80 \
-v /nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /nginx/logs:/var/log/nginx \
nginx
●验证是否安装成功
通过访问 http://ip:8000,验证是否可以访问 nginx 服务。
3、Redis 部署
①搜索镜像
docker search redis
②拉取镜像
docker pull redis
③运行容器
docker run -id --name redis-test -p 6379:6379 redis
●设置密码
docker run -id --name redis-test -p 6379:6379 redis --requirepass 123456
到此为止 Redis 就安装成功啦。
4、jenkins 部署
①下载 jenkins 镜像
docker pull jenkins/jenkins
②启动容器,并映射出端口和挂在目录
docker run --name jenkins -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts-jdk11
③进入容器获取 jenkins 的密码
# 进入容器
docker exec -it jenkins /bin/bash
# 容器内执行,获取jenkins初始密码
cat /var/jenkins_home/secrets/initialAdminPassword
④访问 jenkins 服务 http://ip:8080,输入上面设置的密码,然后按页面提示流程进行初始化操作,设置账号密码,选择安装插件,即可进入到 jenkins 的主页面啦。
5、私有仓库的搭建
如果你想搭建一个自己的私有 Docker 仓库,也很简单,只需要几个步骤即可实现,
①搭建仓库
Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露 5000 端口,就可以使用了。
docker pull registry:2
docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2
Registry 服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry 目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry 目录了。
②推送镜像到私有仓库
要通过 docker tag 将该镜像标志为要推送到私有仓库:
docker tag nginx:latest localhost:5000/nginx:latest
通过 docker push 命令将 nginx 镜像 push 到私有仓库中:
docker push localhost:5000/nginx:latest
③拉取私有仓库的镜像
拉取私有仓库的镜像,使用如下命令:
docker pull localhost:5000/镜像名:版本号
例如
docker pull localhost:5000/nginx:latest
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关文章:
不外传秘诀| docker 快速搭建常用的服务环境
本文主要给大家介绍如何使用 docker 搭建常用的服务环境, 包括mysql,reedis,nginx,jenkins 等常用的环境,下面直接进入主题。 1、MySQL 部署 ①搜索 MySQL 镜像 docker search mysql ②拉取 MySQL 镜像 docker pull mysql:5.7 ③创建容器…...
OrcaTerm AI
🙈作者简介:练习时长两年半的Java up主 🙉个人主页:程序员老茶 🙊 ps:点赞👍是免费的,却可以让写博客的作者开心好久好久😎 📚系列专栏:Java全栈,…...
为什么我说国内大模型都是渣渣?
先看看我的小破站实现了哪些功能? 2023-10-10 实现图床功能,图床链接。 2023-10-05 实现短视频文(本)案提取,并与GPT进行交互,暂不开放。至此,从文本到视频,再从视频到文本&#…...
B端产品需求分析的思路和方法 4大方面
需求分析对产品成功和客户满意度至关重要,它帮助团队深入了解用户需求,优化用户体验,减少开发中的需求变更,降低开发风险。如果缺乏产品分析,容易造成产品定位不准确,用户体验不佳,不能满足用户…...
2018架构真题案例(四十九)
某文件采用多级索引结构,磁盘大小4K字节,每个块号4字节,那么二级索引结果时,文件最大。 A、1024 B、1024*1024 C、2048*2048 D、4096*4096 答案:B 霍尔三维结构以时间堆、()堆、知识堆组成…...
日常学习收获之----react的ref和wrappedComponentRef的区别
react获取子组件的方式,有ref和wrappedComponentRef。那这两者有什么区别呢? 区别在于是否用了高阶组件!!!!!!!!!!!&#…...
LONGLORA: EFFICIENT FINE-TUNING OF LONGCONTEXT LARGE LANGUAGE MODELS
本文是LLM系列文章,针对《LONGLORA: EFFICIENT FINE-TUNING OF LONGCONTEXT LARGE LANGUAGE MODELS》的翻译。 Longlora:长上下文大型语言模型的高效微调 摘要1 引言2 相关工作3 LongLoRA4 实验5 结论 摘要 我们提出了LongLoRA,一种有效的微调方法&…...
CF1186B
给定两个点,原点和p点,现在需要从原点走到p点,有两个光源,a点和b点,这两个光源的半径相等,我们需要输出最小的半径的数值 代码 #include<bits/stdc.h> using namespace std;double dist(double x1,…...
【Redis】Set集合内部编码方式
内部编码 集合类型的内部编码有两种: intset(整数集合):当集合中的元素都是整数并且元素的个数⼩于set-max-intset-entries配置(默认512个)时,Redis会选⽤intset来作为集合的内部实现…...
2023美团外卖商家含月销量均价
外卖商家含商家基本信息、电话、月销量、均价、评分等信息...
实施运维02
一.网线制作 1.所需材料 网线,水晶头,网线钳,水晶头, 路由器或者网络测速仪 网线钳 网线制作标准 T568A标准(交叉线):适用链接场合:电脑-电脑、交换机-交换机、集线器-集线器 接线顺序&…...
MySQL数据生成工具mysql_random_data_load
在看MySQL文章的时候偶然发现生成数据的工具,此处直接将软件作者的文档贴了过来,说明了使用方式及下载地址 Random data generator for MySQL Many times in my job I need to generate random data for a specific table in order to reproduce an is…...
iPhone 15分辨率,屏幕尺寸,PPI 详细数据对比 iPhone 15 Plus、iPhone 15 Pro、iPhone 15 Pro Max
史上最全iPhone 机型分辨率,屏幕尺寸,PPI详细数据!已更新到iPhone 15系列! 点击放大查看高清图 !...
Java实验一 Java语言基础(12题)
文章目录: 1、我国历法中的天干、地支和生肖的排列是有规律的。天干的顺序是“甲乙丙丁戊己庚辛壬癸”,地支的顺序是“子丑寅卯辰巳午未申酉戌亥”,生肖的顺序是“鼠牛虎兔龙蛇马羊猴鸡狗猪”。天干、地支、生肖的计算方法非常简单ÿ…...
Unity可视化Shader工具ASE介绍——5、ASE快捷键和常用节点介绍
大家好,我是阿赵。 继续介绍Unity可视化Shader插件ASE。这次来说一些常用节点的快捷键,顺便介绍一些常用的节点。 用过UE引擎的朋友可能会发现,ASE的整体用法和UE的材质节点编辑器非常的像,甚至连很多节点的快捷键都和UE的…...
【axmol-2.1 vs cocos2dx性能备忘】
axmol-2.1-08c0605 cocos2d-x-4.0 cocos2d-x-3.17.1 结论 从多边形Sprite渲染性能测试用例看,axmol相对于cocos2d-x-4.0提升42%, 相对于cocos2d-x-3.17.1提升30.8%...
idea compile项目正常,启动项目的时候build失败,报“找不到符号”等问题
1、首先往上找,看能不能找到如下报错信息 You aren’t using a compiler supported by lombok, so lombok will not work and has been disabled. 2、这种问题属于lombok编译失败导致,可能原因是依赖jar包没有更新到最新版本 3、解决方案 1)…...
从零开始:深入理解Kubernetes架构及安装过程
K8s环境搭建 文章目录 K8s环境搭建集群类型安装方式环境规划克隆三台虚拟机系统环境配置集群搭建初始化集群(仅在master节点)配置环境变量(仅在master节点)工作节点加入集群(knode1节点及knode2节点)安装ca…...
混淆技术研究笔记(五)混淆后如何反篡改?
有了上一节的基础工具后,接下来要考虑如何反篡改。 本文采用的是对混淆后的代码,针对某些关键包的字节码数据计算md5值,对所有类计算完成后对md5值进行排序,排序后拼接字符串再次计算md5值,最后通过私钥对md5进行RSA对…...
QTableWidget 表格部件
QTableWidget是QT中的表格组件类。一般用来展示多行多列的数据,是QT中使用较多的控件之一。1、QTableWidgetItem对象 QTableWidget中的每一个单元格都是一个QTableWidgetItem对象,因此先介绍下QTableWidgetItem的常用方法。 1.1、设置文本内容 void QT…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
面向无人机海岸带生态系统监测的语义分割基准数据集
描述:海岸带生态系统的监测是维护生态平衡和可持续发展的重要任务。语义分割技术在遥感影像中的应用为海岸带生态系统的精准监测提供了有效手段。然而,目前该领域仍面临一个挑战,即缺乏公开的专门面向海岸带生态系统的语义分割基准数据集。受…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践
作者:吴岐诗,杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言:融合数据湖与数仓的创新之路 在数字金融时代,数据已成为金融机构的核心竞争力。杭银消费金…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...
软件工程 期末复习
瀑布模型:计划 螺旋模型:风险低 原型模型: 用户反馈 喷泉模型:代码复用 高内聚 低耦合:模块内部功能紧密 模块之间依赖程度小 高内聚:指的是一个模块内部的功能应该紧密相关。换句话说,一个模块应当只实现单一的功能…...
【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...
高防服务器价格高原因分析
高防服务器的价格较高,主要是由于其特殊的防御机制、硬件配置、运营维护等多方面的综合成本。以下从技术、资源和服务三个维度详细解析高防服务器昂贵的原因: 一、硬件与技术投入 大带宽需求 DDoS攻击通过占用大量带宽资源瘫痪目标服务器,因此…...
【深尚想】TPS54618CQRTERQ1汽车级同步降压转换器电源芯片全面解析
1. 元器件定义与技术特点 TPS54618CQRTERQ1 是德州仪器(TI)推出的一款 汽车级同步降压转换器(DC-DC开关稳压器),属于高性能电源管理芯片。核心特性包括: 输入电压范围:2.95V–6V,输…...

