windows版docker安装镜像

目录

安装mysql

安装redis


安装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

 

你可能感兴趣的:(运维,docker,mysql,数据库)