docker安装各开发环境

docker安装

安装Docker

# 环境安装:
yum -y install gcc-c++# 第一步:安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2# 第二步:添加软件源信息
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 第三步:更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce# 第四步:开启Docker服务
service docker start
systemctl enable docker# 第五步:测试是否安装成功
docker -v# 第六步:配置镜像加速器
# 您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
mkdir -p /etc/docker
vim /etc/docker/daemon.json{"registry-mirrors": ["https://registry.docker-cn.com"]
}# 重启Docker生效
systemctl restart docker

安装MySQL

# 第一步:拉取镜像
docker pull mysql:5.7
docker pull mysql:8.0.28# 第二步:启动
docker run --name mysql5.7 --restart=always -v /home/mysql/mysql5.7:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker run --name mysql8 --restart=always -v /home/mysql/mysql8:/var/lib/mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.28# 第三步:测试mysql
# 进入容器:
docker exec -it sun_mysql /bin/bash# 登录mysql:mysql -u root -p 
root# 如果顺利进入,安装成功

安装RabbitMQ

# 第一步:拉取镜像
docker pull rabbitmq:management# 第二步:启动
docker run -d -p 5672:5672 -p 15672:15672 --restart=always --name rabbitmq rabbitmq:management

安装redis

# 第一步:拉取镜像
docker pull redis:latest# 第二步:启动
docker run -d -p 6379:6379  --restart=always redis:latest redis-server

安装nacos

# 第一步:拉取镜像
docker pull nacos/nacos-server# 第二步:启动
docker run --env MODE=standalone --name nacos --restart=always -d -p 8848:8848 -e JVM_XMS=128m -e JVM_XMX=128m nacos/nacos-server

安装elasticsearch + kibana + ik分词器

# 拉取镜像
docker pull elasticsearch:7.8.0
docker pull kibana:7.8.0

运行es(两种方式启动~)

1.如果你的linux系统运行内存比较小,那就自己指定jvm内存大小,因为es默认启动大小为1G左右
docker run -it  --name elasticsearch -d -p 9200:9200 -p 9300:9300 -p 5601:5601 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" elasticsearch:7.8.02.如果你的linux系统运行内存比较大,那就不用指定jvm内存了(我的内存是6个G 2核 我就不指定了)
docker run -it  --name elasticsearch -d -p 9200:9200 -p 9300:9300 -p 5601:5601  -e "discovery.type=single-node" elasticsearch:7.8.0

解决1:如果发现es启动到一半自动停止,请通过日志查看问题

docker logs 容器id或容器名称都行

解决2:分配给ES的内存太小了(无法复现错误信息,具体报错可以自行百度)

1.进入etc目录,编辑sysctl.conf文件:
vi /etc/sysctl.conf2.添加配置:
vm.max_map_count=2621443.执行:
sysctl -p4.启动es如果还是失败,修改limits.conf:
vi /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 40965.最后重启虚拟机

启动kibana

docker run -it -d -e ELASTICSEARCH_URL=http://127.0.0.1:9200 --name kibana --network=container:elasticsearch kibana:7.8.0

启动后发现报如下错误:

Kibana server is not ready yet

查看kibana日志

docker logs kibana

如果错误信息是无法连接es,进入kibana的容器中,找到它的配置改一下的他的默认连接地址试一试

docker exec -it 1db61b90388b /bin/bash    (中间是容器id)vi /usr/share/kibana/config/kibana.yml将elasticsearch.hosts ["http://elasticsearch:9200"]改为elasticsearch.hosts ["http://127.0.0.1:9200"]添加中文配置(选择)
i18n.locale: zh-CN 注意冒号后边有个空格保存,退出容器,重启容器
重新看日志,发现运行成功

安装ik分词器

注意:ik分词器的版本与es的版本一定要一致

分词器下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

下载源码包,并解压

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip创建目录
mkdir elasticsearch-analysis-ik-7.8.0解压到指定目录
unzip elasticsearch-analysis-ik-7.8.0.zip -d elasticsearch-analysis-ik-7.8.0查看ik官方分词库所有词,我们也可以在里面自定义词
cat elasticsearch-analysis-ik-7.8.0/config/extra_main.dic

接下来我们将ik分词器上传到es容器中

docker exec -it 370228c5af65  bash

进入我们es的插件目录中,查看是否有ik分词器,有的话看版本是否对应,不对应删掉重新上传即可

1.cd /usr/share/elasticsearch/plugins/
2.ll

复制文件到es容器

意思: 复制 服务器的ik文件(要绝对地址,通过pwd显示) 到 指定容器下 某个目录下
docker cp /usr/local/software/elasticsearch-analysis-ik-7.8.0 d23b5657b54a:/usr/share/elasticsearch/plugins/elasticsearch-analysis-ik-7.8.0

退出容器,重启es容器

安装mongodb

1、拉取镜像
docker pull mongo:latest2、创建mongo数据持久化目录
mkdir -p /home/mongodb/data3、运行容器
docker run -itd --name mongo -v /home/mongodb/data:/data/db -p 27017:27017 mongo --auth4、创建用户
docker exec -it mongo mongosh admin(5.0版本以上连接mongo使用命令mongosh)
db.createUser({ user:'root',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},'readWriteAnyDatabase']});5、测试连接
db.auth('root', '123456');

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

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

相关文章

没有哈希时间锁定合约的跨链原子交换

在上一篇文章中,我们介绍了使用哈希时间锁定合约(HTLC)的跨链原子交换实现。 今天,我们介绍一种无需 HTLC 即可实现的替代方法。 这将原子交换扩展到缺乏哈希锁和时间锁的区块链。 使用 SPV 证明交易已被挖掘 让我们按照商定的价…

windows10系统更新失败无法进入系统

用户反馈早上电脑重启,系统在更新卡好久好进去是否更新windows11,选否,重新就反复在更新中无法进入系统。我在测试的过程也是多次更新卡好久无法进入系统,而且出现下面提示 windows10系统更新失败无法进入系统,蓝屏提…

软件工程 课后题 acmakb 总结

让你一口气复习个爽! 具体的应用题参考 软件工程学科出现的主要原因是软件危机的出现 20世纪60年代提出了软件工程的概念 软件危机的主要原因是软件本身的特点及开发方法 软件工程的三要素是方法、工具和过程 与计算机硬件相比,计算机软件有哪些特点…

设备管理的方法与思路

阅读本文你将了解设备管理的思路与方法:一、制定全面的管理计划;二、标准化管理流程;三、设备维护与保养;四、风险管理与预防;五、引入数字化工具。 设备管理在生产制造领域是保障生产安全和效率的核心环节。通过引入…

java分布式锁分布式锁

java分布式&锁&分布式锁 锁 锁的作用:有限资源的情况下,控制同一时间段,只有某些线程(用户/服务器)能访问到资源。 锁在java中的实现: synchronized关键字并发包的类 缺点:只对单个的…

强化学习中的“agent“

在强化学习中,"agent"(智能体)是指一个在环境中执行动作以达到某个目标的实体。强化学习是一种机器学习范式,其中智能体通过与环境的交互来学习最优的行为策略,以最大化累积的奖励信号。 以下是强化学习中 …

【Flutter】graphic图表的快速上手

简介 graphic是一个数据可视化语法和Flutter图表库。 官方github示例 网上可用资源很少,只有作者的几篇文章,并且没有特别详细的文档,使用的话还是需要一定的时间去调研,在此简单记录。 示例 以折线图为例(因为我只用到了折线图,但其他的图大差不差) 创建一个两个文…

邦芒宝典:职场中最重要的16种竞争力

​​职场竞争力包括哪几个方面,职场竞争力,简单地说,就是在职场中与他人相比,你所具备的优势及长处。以下小邦精心为大家准备了职场竞争力包括哪几个方面,快来一起看看吧。 ​1、技能和知识:具备相关的技能和知识,尤其…

世微 舞台灯深度调光 大功率 dc-dc降压恒流驱动IC APS54083

产品描述 APS54083 是一款 PWM 工作模式,高效率、外围简单、外置功率 MOS 管,适用于 5-220V 输入高精度降压 LED 恒流驱动芯片。输出最大功率150W最大电流 6A。APS54083 可实现线性调光和 PWM 调光,线性调光脚有效电压范围 0.5-2.5V.PWM 调光频率范围 10…

C++ :静态成员

静态成员 静态成员就是在成员变量和成员函数前加上关键字 static ,称为静态成员 静态成员分为: 静态成员变量 1.所有对象共享同一份数据 2.在编译阶段分配内存 3.类内声明,类外初始化 静态成员函数 1.所有对象共享同一个函数 2.静态成…

HTTPS的安全问题及应对方案

HTTPS是一种在网络通信中广泛使用的安全协议,通过使用SSL/TLS加密来保护数据的传输。然而,即使在使用了HTTPS的情况下,仍然存在一些潜在的安全问题。本文将深入探讨HTTPS的安全问题,并提供一些有效的应对策略,以确保数…

CodeGeeX2模型安装

简介 CodeGeeX2 是多语言代码生成模型 CodeGeeX (KDD’23) 的第二代模型。不同于一代 CodeGeeX(完全在国产华为昇腾芯片平台训练) ,CodeGeeX2 是基于 ChatGLM2 架构加入代码预训练实现,得益于 ChatGLM2 的更优性能,Co…

第29期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大型语言模型(LLM)等安全领域应用的知识。在这里,您可以…

C# 实现微信退款及对帐

目录 需求 基础准备 关键代码 操作界面 ​编辑 退款订单类及方法 退款功能实现 对帐 支付商家后台相关要点 实时交易帐单查询 精确交易帐单查询 小结 需求 在招聘报名系统里,考务费支付是其中一个环节,支付方式很多种,比如银联、…

MySQL数据库 增删改查

目录 MySQL 数据插入 MySQL 数据删除 MySQL 数据更新 MySQL 数据查询 MySQL 联合查询 解决乱码问题 MySQL 数据插入 向MySQL数据表插入数据通用的 INSERT INTO SQL语法: INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...v…

操作系统CLOCK算法

操作系统时钟(CLOCK)置换算法_时钟置换算法-CSDN博客 前七步相同 第八步的时候 发现页面在内存中 标记位变成1 但是指针不需要移动。

什么软件可以去视频水印?分享3个超实用去水印工具

什么软件可以去视频水印?短视频已然成为了我们日常生活或工作的一部分,当我们遇到感兴趣的视频想保存发现无法保存,或者保存后留有水印,非常影响我们视频观看度和分享欲,为了解决这一问题,许多针对视频水印…

如何用CHAT写“科技探索者”视频号运营方案

问CHAT:生成一篇“科技探索者”视频号运营方案,要求内容: (1)视频号的定位、面向的人群、主要发布哪方面的内容 (2)视频号的内容设计(用什么样的方式来体现、最好有内容创意&#xf…

生产环境_sql获spark将课程与对应的选课人员以逗号分隔的形式存储

需求 将课程和人员列进行分组,然后将人员列聚合为逗号分隔的字符串。 数据 course | person Math | Alice Math | Bob Math | Charlie| Science| David Science| Emily Science| Frank sql代码: SELECT 课程, GROUP_CONCAT(人员 ORD…

学习笔记-瑞吉外卖项目实战(一)

软件开发整体介绍 软件开发流程 角色分工 软件环境 瑞吉外卖项目介绍 项目介绍 产品原型介绍 技术选型 功能架构 角色 开发环境搭建 数据 创建database reggie,在里面创建表: maven 创建springboot项目并导入相关依赖坐标: 我们可以在项目…