Docker中安装常用的中间件全过程

这篇具有很好参考价值的文章主要介绍了Docker中安装常用的中间件全过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 防火墙端口开放命令:

开启端口命令  (--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent
### 重新载入
firewall-cmd --reload
### 查询端口
firewall-cmd --zone=public --query-port=80/tcp
### 删除端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
### 查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports

Docker安装Redis

docker search redis

docker pull redis:7.0

mkdir -p /docker/redis/conf
mkdir -p /docker/redis/data
cd /docker/redis/conf
touch redis.conf
vim redis.conf
输入 i 进入插入模式
添加redis.conf配置内容如下:
		# Redis 配置文件示例
		appendonly yes
		requirepass 479368
		maxclients 10000
ESC :wq ENTER   退出保存

docker run -d \
--name redis \
-p 6378:6379 \
redis:7.0

docker cp redis:/data /docker/redis

docker rm -f redis

docker run -d \
--name redis \
-p 6378:6379 \
-e JVM_XMS=64 \
-e JVM_XMX=256 \
-v /docker/redis/data:/data \
-v /docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf \
redis:7.0 redis-server /usr/local/etc/redis/redis.conf

--appendonly yes  是否持久化
--requirepass 479368   设置密码
redis-server /etc/redis/redis.conf 以指定路径的配置启动redis

最后使用redis连接客户端连接测试

Dockers安装Mysql

docker pull mysql:8.0.32

docker run -d \
--name mysql \
-p 3306:3306 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MYSQL_ROOT_PASSWORD=479368 \
mysql:8.0.32

mkdir -p /docker/mysql/conf
mkdir -p /docker/mysql/data

docker cp mysql:/etc/mysql/conf.d /docker/mysql/conf
docker cp mysql:/var/lib/mysql /docker/mysql/data

docker rm -f mysql

docker run -d \
--name mysql \
-p 3306:3306 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MYSQL_ROOT_PASSWORD=479368 \
-v /docker/mysql/conf/conf.d:/etc/mysql/conf.d \
-v /docker/mysql/data/mysql:/var/lib/mysql \
mysql:8.0.32

Docker安装Nacos

docker pull nacos/nacos-server:1.4.1
docker run -d \
--name nacos-1.4.1 \
-p 8848:8848 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MODE=standalone \
nacos/nacos-server:1.4.1

mkdir -p /docker/nacos/nacos-1.4.1/logs
mkdir -p /docker/nacos/nacos-1.4.1/conf
mkdir -p /docker/nacos/nacos-1.4.1/data

docker cp nacos-1.4.1:/home/nacos/logs /docker/nacos/nacos-1.4.1
docker cp nacos-1.4.1:/home/nacos/conf /docker/nacos/nacos-1.4.1
docker cp nacos-1.4.1:/home/nacos/data /docker/nacos/nacos-1.4.1

docker rm -f nacos-1.4.1

docker run -d \
--name nacos-1.4.1 \
-p 8848:8848 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MODE=standalone \
-v /docker/nacos/nacos-1.4.1/logs:/home/nacos/logs \
-v /docker/nacos/nacos-1.4.1/conf:/home/nacos/conf \
-v /docker/nacos/nacos-1.4.1/data:/home/nacos/data \
nacos/nacos-server:1.4.1

http://192.168.56.10:8848/nacos
docker pull nacos/nacos-server:v2.2.0
docker run -d \
--name nacos-2.2.0 \
-p 8849:8848 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MODE=standalone \
nacos/nacos-server:v2.2.0

mkdir -p /docker/nacos/nacos-2.2.0/logs
mkdir -p /docker/nacos/nacos-2.2.0/conf
mkdir -p /docker/nacos/nacos-2.2.0/data

docker cp nacos-2.2.0:/home/nacos/logs /docker/nacos/nacos-2.2.0
docker cp nacos-2.2.0:/home/nacos/conf /docker/nacos/nacos-2.2.0
docker cp nacos-2.2.0:/home/nacos/data /docker/nacos/nacos-2.2.0

docker rm -f nacos-2.2.0

docker run -d \
--name nacos-2.2.0 \
-p 8849:8848 \
-p 9848:9848 \
-p 9849:9849 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e MODE=standalone \
-v /docker/nacos/nacos-2.2.0/logs:/home/nacos/logs \
-v /docker/nacos/nacos-2.2.0/conf:/home/nacos/conf \
-v /docker/nacos/nacos-2.2.0/data:/home/nacos/data \
nacos/nacos-server:v2.2.0

http://192.168.56.10:8849/nacos

 从Nacos2.0.0开始,需要多开放两个个9848、9849端口,以应对gRPC的通信方式,如果不开放绑定,那么客户端微服务无法注册到Nacos,会直接报错。Client not connected, current status:STARTING

Nacos数据持久化

1、新建Nacos配置数据库,取名为nacos-config,并为该数据库设置允许远程访问权限

2、向nacos-config中导入官方提供的数据结构脚本

3、启动nacos

4、使用命令 docker exec -it nacos /bin/bash 进入nacos容器内部

5、执行如下命令:

docker exec -it nacos /bin/bash
cd conf
vim application.properties

进入编辑页面后,按下 i 键进入插入模式,修改指定配置项如下:

### 数据源持久化配置
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://192.168.56.10:3306/nacos-config?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
db.user=nacos
db.password=479368

修改完以上配置后,按下 ESC 键退出插入模式,然后输入 :wq  然后按 Enter 键

 Docker安装Sentinel

docker run -d \
--name sentinel-dashboard \
-p 8858:8858 \
-e port=8859 \
-e server=localhost:8080 \
-e name=sentinel-dashboard \
-e username=sentinel \
-e password=sentinel \
-v /opt/sentinel/logs:/root/logs/csp/aeert/sentinel-dashboard:latest

 Docker安装Elasticsearch

docker pull elasticsearch:8.6.1

#笔记 9200 用于所有通过HTTP协议进行的API调用,客户端和服务端的通信端口,9300 用于集群中各节点之间的通信

#启动镜像
docker run -d \
--name=es8 \
-p 9200:9200 \
-p 9300:9300 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e "discovery.type=single-node" \
elasticsearch:8.6.1

#创建挂在目录
mkdir -p /docker/elasticsearch

#文件拷贝
docker cp es8:/usr/share/elasticsearch/logs /docker/elasticsearch
docker cp es8:/usr/share/elasticsearch/config /docker/elasticsearch
docker cp es8:/usr/share/elasticsearch/data /docker/elasticsearch
docker cp es8:/usr/share/elasticsearch/plugins /docker/elasticsearch

docker rm -f es8

docker run -d \
--name=es8 \
-p 9200:9200 \
-p 9300:9300 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e "discovery.type=single-node" \
-v /docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /docker/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /docker/elasticsearch/config:/usr/share/elasticsearch/config \
-v /docker/elasticsearch/data:/usr/share/elasticsearch/data \
elasticsearch:8.6.1

#验证安装是否成功
http://192.168.56.10:9200

Docker安装Kibana

docker pull kibana:8.6.1

#运行kibana 注意IP一定不要写错
docker run -d \
--name kibana8 \
-p 5601:5601 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e ELASTICSEARCH_HOSTS=http://192.168.56.10:9200 \
kibana:8.6.1

mkdir -p /docker/kibana

docker cp kibana:/usr/share/kibana/config /docker/kibana
docker rm -f kibana8

docker run -d \
--name kibana8 \
-p 5601:5601 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e ELASTICSEARCH_HOSTS=http://192.168.56.10:9200 \
-v /docker/kibana/config:/usr/share/kibana/config \
kibana:8.6.1

#验证是否成功
http://192.168.56.10:5601

Kibana界面汉化

在kibana.yml配置文件中添加 i18n.locale: "zh-CN" 配置项后重载服务即可

vim /docker/kibana/config/kibana.yml 

如果遇到kibana一直显示server is not ready yet,可参考此博客文章来源地址https://www.toymoban.com/news/detail-499955.html

Docker安装SkyWalking

docker pull apache/skywalking-oap-server:latest

docker run -d \
--name skywalking-oap \
-p 11800:11800 \
-p 12800:12800 \
apache/skywalking-oap-server:latest

mkdir -p /docker/skywalking/oap-server/config
docker cp skywalking-oap:/skywalking/config /docker/skywalking/oap-server
docker rm -f skywalking-oap

docker run -d \
--name skywalking-oap \
-p 11800:11800 \
-p 12800:12800 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e TZ=Asia/Shanghai \
-e SW_STORAGE=elasticsearch7 \
-e SW_STORAGE_ES_CLUSTER_NODES=192.168.56.10:9200 \
-v /docker/skywalking/oap-server/config:/skywalking/config \
--link es:es \
apache/skywalking-oap-server:8.7.0-es7


# 安装可视化界面
docker pull apache/skywalking-ui:latest

docker run -d \
--name skywalking-ui \
--privileged=true \
-p 8092:8080 \
-e TZ=Asia/Shanghai \
-e SW_OAP_ADDRESS=http://192.168.56.10:12800 \
--link skywalking-oap:skywalking-oap \
apache/skywalking-ui:latest

docker rm -f skywalking-ui

docker run -d \
--name skywalking-ui \
--privileged=true \
-p 8092:8080 \
-e JVM_XMS=128m \
-e JVM_XMX=512m \
-e TZ=Asia/Shanghai \
-e SW_OAP_ADDRESS=http://192.168.56.10:12800 \
--link skywalking-oap:skywalking-oap \
apache/skywalking-ui:latest

访问地址:http://192.168.56.10:8092

到了这里,关于Docker中安装常用的中间件全过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 常用中间件redis,kafka及其测试方法

    一、中间件的使用场景 引入中间件的目的一般有两个: 1、提升性能 产品架构中的性能设计: 常用的中间件: 1) 高速缓存:redis 基于内存,所以比mysql块(存在磁盘io) 为什么查询速度快? 单进程+IO多路复用去提高性能 基于内存 做缓存,极大缓解了数据库压力 非常适合

    2024年04月11日
    浏览(37)
  • Docker安装消息中间件

    docker pull rocketmqinc/rocketmq mkdir -p /docker/rocketmq/data/namesrv/logs /docker/rocketmq/data/namesrv/store docker run -d --restart=always --name rmqnamesrv --privileged=true -p 9876:9876 -v /docker/rocketmq/data/namesrv/logs:/root/logs -v /docker/rocketmq/data/namesrv/store:/root/store -e “MAX_POSSIBLE_HEAP=100000000” rocketmqinc/rocketmq sh mqname

    2024年02月10日
    浏览(45)
  • 【中间件】docker数据卷

            📝个人主页: 五敷有你         🔥系列专栏: 中间件 ⛺️稳中求进,晒太阳 修改nginx的html页面时,需要进入nginx内部。并且因为内部没有编辑器,修改文件也很麻烦。 这就是因为容器与数据(容器内文件)耦合带来的后果。要解决这个问题,必须将数据与容

    2024年03月27日
    浏览(29)
  • 常用的消息队列和中间件都有哪些

    常用的消息队列和中间件有以下几种: RabbitMQ:RabbitMQ是一个开源的消息队列中间件,使用Erlang语言编写。它具有可靠性、灵活性和易用性的特点,支持多种消息协议。 Kafka:Kafka是一个高吞吐量的分布式发布订阅消息系统,由Apache开发。它主要用于处理大规模的实时数据流,

    2024年01月17日
    浏览(37)
  • Windows安装Docker运行中间件(详细)

    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。 Docker容器是一个轻量级的沙箱环境,每个容

    2024年01月20日
    浏览(33)
  • Docker的安装及其常见中间件的部署

    基于centos7安装docker(Docker要求CentOS系统的内核版本高于3.10 uname -r 查看内核版本) 最好安装7.5以上版本支持k8s (1) 如果之前下载过需要运行命令卸载 (2)安装 Docker-CE 基本环境 (3)设置 docker repo 的 yum 位置 (4)安装 docker,以及 docker-cli (5)启动docker (6)停止docker (7)重启docker (8)查看

    2024年02月19日
    浏览(27)
  • docker 离线安装中间件应用--nacos

    由于很多项目的部署环境是内网环境,中间件安装部署起来比较麻烦,故采用docker 进行离线部署。本文以docker离线安装部署nacos 为例,其他的中间件也是相同的部署步骤。 1、离线安装docker 和 docker-compose 具体请参考一下链接进行安装 docker docker-compose离线部署 2、下载nacos镜像

    2024年02月11日
    浏览(35)
  • Ubuntu配置基本环境以及docker安装基本中间件

    提示:ip地址请改为自己的本地ip 为了安全性,建议都给一些中间件设置密码(本文也会教大家如何设置密码) 此处如果安装失败,apt要换源。 docker版本为24.0.2 首先,更新软件包索引,并且安装必要的依赖软件,来添加一个新的 HTTPS 软件源: 使用下面的 curl 导入源仓库的

    2024年02月01日
    浏览(43)
  • 消息队列中间件 - Docker安装RabbitMQ、AMQP协议、和主要角色

    不管是微服务还是分布式的系统架构中,消息队列中间件都是不可缺少的一个重要环节,主流的消息队列中间件有RabbitMQ、RocketMQ等等,从这篇开始详细介绍以RabbitMQ为代表的消息队列中间件。 AMQP协议 AMQP协议是一个提供统一消息服务的应用层标准协议,基于此协议的客户端与

    2024年02月03日
    浏览(38)
  • 【中间件】通过 docker-compose 快速部署 Kafka 保姆级教程

    Kafka是由Apache基金会开发的分布式流处理平台,采用发布-订阅模式,支持高吞吐量、低延迟的数据传输。主要用于处理实时数据管道、数据存储和数据分析等大数据应用场景。Kafka采用高效的数据压缩算法,可以在集群中存储大量的数据,并通过分区机制来实现数据的高可靠

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包