目录
安装docker desktop
安装mysql
安装redis
安装zookeeper
安装kafka
安装rabbitmq
安装elasticsearch
安装kibana
安装docker desktop
1.创建软连接,不安装在c盘
cmd /c mklink /j "C:\Program Files\Docker" "D:\Program Files\Docker"
cmd /c mklink /j "C:\Users\jiangyong\AppData\Local\Docker" "D:\Program Data\Docker"
2.创建D:\Program Files\Docker和D:\Program Data\Docker文件夹
3.安装docker desktop
安装mysql
1. 下载mysql镜像
docker pull mysql:8.0
2. 下载完之后,使用管理员打开cmd
docker run -itd -p 3306:3306 --privileged=true -v D:/docker_data/mysql8.0/mysql/log:/var/log/mysql -v D:/docker_data/mysql8.0/mysql/data":"/var/lib/mysql -v D:/docker_data/mysql8.0/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:8.0 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci
安装redis
- docker pull redis:5.0.3
- mkdir -p redis
- mkdir -p redis/data
- docker run -p 6379:6379 --name redis5.0.3 -v redis/redis.conf:/etc/redis/redis.conf -v redis/data:/data -d redis:5.0.3 redis-server /etc/redis/redis.conf --appendonly yes
安装zookeeper
查找镜像:
1
docker search zookeeper
拉取镜像:
1
docker pull wurstmeister
/
zookeeper
创建并启动zookeeper容器
1
docker run -d --name zookeeper -p 2181
:
2181 wurstmeister/zookeeper
设置zk 开机自启动
1
docker ps
2
docker
update
zookeeper
--restart=always
安装kafka
查找镜像
1
docker search kafka
拉取镜像:
1
docker pull wurstmeister
/
kafka
创建并启动kafka容器,连接到上一步创建的zookeeper
1
docker run -d --name kafka --publish 9092
:
9092 --link zookeeper --env
KAFKA_ZOOKEEPER_CONNECT=
zookeeper
:
2181 --env KAFKA_ADVERTISED_HOST_NAME=localhost --env
KAFKA_ADVERTISED_PORT=9092 wurstmeister/kafka
设置kafka开机自启动
1
docker ps
2
docker
update
kafka
--restart=always
安装rabbitmq
1.查看镜像
1
docker search rabbitmq
2.拉取镜像
1
#rabbitmq:management
这个是带
web
管理台的
2
docker pull rabbitmq
3.
启动RabbitMQ
1
#
方式一:默认
guest
用户,密码也是
guest
2
docker run -d --hostname my-rabbit --name rabbit -p 15672
:
15672 -p 5672
:
5672
rabbitmq
:
management
3
#
方式二:设置用户名和密码
4
docker run -dit --name rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e
RABBITMQ_DEFAULT_PASS=admin -p 15672
:
15672 -p 5672
:
5672
rabbitmq
:
management
4.登录页面:
http://localhost:15672/#/
5.
设置
rabbitMq
开机启动
1
docker ps
2
docker update
容器
names
(我本地容器
names rabbitmq
)
--
restart
=
always
增加用户:
1
2
#
进入容器
3
docker
exec
-
it
{
rabbitmq
容器名称或者
id
}
/
bin
/
bash
4
5
6
#
新增用户 账号
admin
密码
123456
7
rabbitmqctl add_user admin
123456
8
9
#
设置用户操作权限
10
rabbitmqctl set_user_tags admin administrator
11
12
#
权限说明:
13
#administrator
超级管理员
14
#monitoring
监控者
15
#policymaker
策略制定者
16
#managment
普通管理员
17
18
#
退出
19
20
#
重新启动
21
docker
-
compose restart dockerlnmp_rabbitmq_1
22
#
或者
23
docker
-
compose restart
安装elasticsearch
1
$ es
版本
7.9.3
2
#
拉镜像
3
$ docker pull elasticsearch
:
7.9.3
4
#
创建目录
5
# 1. data
空白目录
6
# 2. es
的
node
配置文件 具体内容在下方贴出来了
7
# 3.
中文分词器
如果不需要可以不用挂载 我用的分词器是
ik
8
9
#
开始运行
docker
10
#
节点
1
的启动命令
11
#
下面命令一次复制 全部执行
12
13
docker run
-
itd
--
name es
-
node
-
one
-
p
9200
:
9200
-
p
9300
:
9300
14
-
e
ES_JAVA_OPTS
=
"-Xms512m -Xmx512m"
15
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
-
one
/
data
:/
usr
/
share
/
elasticsearch
/
data
16
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
one
/
config
/
elasticsearch
.
yml
:/
usr
/
share
/
elasticsearch
/
config
/
elasticsearch
.
yml
17
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
one
/
config
/
plugins
:/
usr
/
share
/
elasticsearch
/
plugins
18
-
d elasticsearch
:
7.9.3
19
#
解释:
20
# 1. -v
挂载了三个目录
21
#
其一为
data
目录 其二为
yml
配置文件 其三是中文分词插件
22
# 2. 1ab13f928dc8
为
es
的镜像
id / docker images
查看
pull
下来的镜像
id
然后替换即可
23
24
#
节点
2
的启动命令
25
docker run
-
itd
--
name es
-
node
-
two
-
p
9220
:
9220
-
p
9320
:
9320
26
-
e
ES_JAVA_OPTS
=
"-Xms512m -Xmx512m"
27
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
-
two
/
data
:/
usr
/
share
/
elasticsearch
/
data
28
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
two
/
config
/
elasticsearch
.
yml
:/
usr
/
share
/
elasticsearch
/
config
/
elasticsearch
.
yml
29
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
two
/
config
/
plugins
:/
usr
/
share
/
elasticsearch
/
plugins
30
-
d elasticsearch
:
7.9.3
31
32
#
节点
3
的启动命令
33
docker run
-
itd
--
name es
-
node
-
three
-
p
9230
:
9230
-
p
9330
:
9330
-
e
ES_JAVA_OPTS
=
"-Xms512m -Xmx512m"
35
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
three
/
data
:/
usr
/
share
/
elasticsearch
/
data
36
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
three
/
config
/
elasticsearch
.
yml
:/
usr
/
share
/
elasticsearch
/
config
/
elasticsearch
.
yml
37
-
v
D
:/
software
/
docker
/
elasticsearch
/
cluster
/
node
three
/
config
/
plugins
:/
usr
/
share
/
elasticsearch
/
plugins
38
-
d elasticsearch
:
7.9.3
39
40
41
#
可以使用
kibana
查看集群的状态
42
# es
版本
7.9.3
43
# kibana
版本
7.9.3
44
#
具体操作在最下方
node1.yml
cluster
.
name
:
elasticsearch
-
cluster
2
node
.
name
:
es
-
node
-
one
3
cluster
.
initial_master_nodes
:
[
"es-node-one"
]
4
network
.
host
:
0.0
.
0.0
5
network
.
publish_host
:
127.0
.
0.1
6
http
.
port
:
9200
7
transport
.
tcp
.
port
:
9300
8
http
.
cors
.
enabled
:
true
9
http
.
cors
.
allow
-
origin
:
"*"
10
node
.
master
:
true
11
node
.
data
:
true
12
discovery
.
zen
.
ping
.
unicast
.
hosts
:
[
"127.0.0.1:9300"
,
"127.0.0.1:9320"
,
"127.0.0.1:9330"
]
13
discovery
.
zen
.
minimum_master_nodes
:
2
node2.yml
1
http
.
host
:
0.0.0.0
2
3
# Uncomment the following lines for a production cluster deployment
4
#transport.host: 0.0.0.0
5
#discovery.zen.minimum_master_nodes: 1
6
7
cluster
.
name
:
elasticsearch
-
cluster
8
node
.
name
:
es
-
node
-
two
9
network
.
host
:
0.0.0.0
10
network
.
publish_host
:
127.0.0.1
11
http
.
port
:
9220
12
transport
.
tcp
.
port
:
9320
13
http
.
cors
.
enabled
:
true
14
http
.
cors
.
allow
-
origin
:
"*"
15
node
.
master
:
true
16
node
.
data
:
true
17
discovery
.
zen
.
ping
.
unicast
.
hosts
: [
"127.0.0.1:9300"
,
"127.0.0.1:9320"
,
"127.0.0.1:9330"
]
18
discovery
.
zen
.
minimum_master_nodes
:
2
node3.yml
http
.
host
:
0.0.0.0
2
3
# Uncomment the following lines for a production cluster deployment
4
#transport.host: 0.0.0.0
5
#discovery.zen.minimum_master_nodes: 1
6
7
cluster
.
name
:
elasticsearch
-
cluster
8
node
.
name
:
es
-
node
-
three
9
network
.
host
:
0.0.0.0
10
network
.
publish_host
:
127.0.0.1
11
http
.
port
:
9230
12
transport
.
tcp
.
port
:
9330
13
http
.
cors
.
enabled
:
true
14
http
.
cors
.
allow
-
origin
:
"*"
15
node
.
master
:
true
16
node
.
data
:
true
17
discovery
.
zen
.
ping
.
unicast
.
hosts
: [
"127.0.0.1:9300"
,
"127.0.0.1:9320"
,
"127.0.0.1:9330"
]
18
discovery
.
zen
.
minimum_master_nodes
:
2
执行启动命令后 发现es-node-one 启动后有down掉了
执行 docker logs es-node-one 后:
重点报错信息:
m.max_map_count [65530] is too low
解决办法:
1
wsl
-
d docker
-
desktop
2
sysctl
-
w vm
.
max_map_count
=
262144
安装kibana
1
#
版本
7.9.3
2
docker pull kibana
:
7.9.3
3
4
#
下面命令一次复制 全部执行
5
docker run
--
name kibana
6
-
e
ELASTICSEARCH_HOSTS
=
http
:
//172.17.0.1:9200
7
-
e
SERVER_PORT
=
5601
8
-
e
SERVER_HOST
=
0.0.0.0
-
p
5601
:
5601
9
-
v
D
:
/
software
/
docker
/
elasticsearch
/
kibana
/
config
/
kibana
.
yml
:
/
usr
/
share
/
kibana
/
config
/
kiban
a
.
yml
10
"f9f7fac59a10"
11
12
13
14
15
#
挂载
yml
是适配 中文
需要在
yml
中加
i18n.locale: zh-CN
16
#
全
yml
如下
17
18
#################
开始
19
#
20
# ** THIS IS AN AUTO-GENERATED FILE **
21
#
22
23
# Default Kibana configuration for docker target
24
server
.
name
:
kibana
25
server
.
host
:
"0"
26
elasticsearch
.
hosts
: [
"http://elasticsearch:9200"
]
27
monitoring
.
ui
.
container
.
elasticsearch
.
enabled
:
true
28
29
i18n
.
locale
:
zh
-
CN
30
################
结束
查看
es
容器内部的
ip
地址,如
172.17.0.3
;然后 把
kibana
容器内的
kibana.yml
配置改成
elasticsearch.hosts: “
http://172.17.0.3:9200
开机自动启动:
1
docker ps
2
docker
update
es
-
node
-
one
--restart=always
3
docker
update
es
-
node
-
two
--restart=always
4
docker
update
es
-
node
-
three
--restart=always
5
docker
update
kibana
--restart=always
发现还是因为内存大小问题导致的 es起不来
经过查看资料才发现 之前执行的
https://blog.csdn.net/qq_41094351/article/details/
1
wsl
-
d docker
-
desktop
2
sysctl
-
w vm
.
max_map_count
=
262144
这个命令
只在当前会话有效,重启
Windows
和
WSL
都要重新设置 。
解决办法:
新建文件
[
wsl2
]
2
kernelCommandLine
=
"sysctl.vm.max_map_count=262144"
重启docker
1
wsl
-
d docker
-
desktop
2
sysctl vm
.
max_map_count