Docker安装常用软件(mysql、elasticsearch、redis、nacos、MongoDB)

本文详细介绍了如何使用Docker安装MySQL5.7,包括设置数据卷、配置字符集以及启动容器。接着讲解了Elasticsearch7.12.1的安装过程,包括安装ik分词器。还涵盖了Kibana的安装和中文设置。此外,还阐述了MongoDB和Redis的Docker安装步骤,包括配置和数据持久化。
摘要由CSDN通过智能技术生成

1、docker安装MySQL5.7

1.1拉取MySQL5.7镜像

docker pull mysql:5.7.41

1.2创建数据卷,用于挂载数据

docker volume create mysqlconf
docker volume create mysqldata
docker volume create mysqllog

1.3创建容器
docker run -d --name mysql -p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
-e TZ=Asia/Shanghai \
-v mysqlconf:/etc/mysql/conf.d \
-v mysqllog:/var/log/mysql \
-v mysqldata:/var/lib/mysql \
mysql:5.7.41 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --default-time_zone='+8:00' 

MYSQL_ROOT_PASSWORD为MySQL的root密码,请酌情设置;TZ为时区,这里设置为Asia/Shanghai

1.4修改MySQL默认的字符编码为utf8mb4

输入命令查看MySQL的配置路径:docker volume inspect mysqlconf
image.png
看到Mountpoint挂载点为:/var/lib/docker/volumes/mysqlconf/_data
进入此目录并新建一个名为my.cnf的文件。
在my.cnf中输入以下内容,:wq保存并退出

[client]
default_character_set=utf8mb4
[mysqld]
collation_server = utf8mb4_general_ci
character_set_server = utf8mb4

image.png

1.5查看MySQL的字符集编码是否修改成功

完成第4步中的新建my.cnf文件后,重启MySQL使配置生效:docker restart mysql
重启后进入MySQL中

docker exec -it mysql bash

mysql -u root -p
输入root密码后回车,输入如下命令,结果如下,说明修改字符集编码成功
image.png

2、docker安装Elasticsearch和kibana

2.1拉取elasticsearch镜像
docker pull elasticsearch:7.12.1
2.2运行elasticsearch
#创建docker网络
docker network create es-net
#如果es-net已经存在,则会报: Error response from daemon: network with name es-net already exists 忽略它即可

#创建数据卷
docker volume create es-data
docker volume create es-plugins

docker run -d \
--name elasticsearch \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
-v es-data:/usr/share/elasticsearch/data \
-v es-plugins:/usr/share/elasticsearch/plugins \
--privileged \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
elasticsearch:7.12.1
2.3安装elasticsearch的ik分词器

https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.12.1
点击链接下载ik分词器7.12.1版本的。
image.png
安装ik分词器
查看插件所在目录:docker volume inspect es-plugins

“Mountpoint”: “/var/lib/docker/volumes/es-plugins/_data”,

把下载的 ik分词器解压缩后的得到文件放入一个新建的ik文件夹中,最后把整个ik文件夹拖到/var/lib/docker/volumes/es-plugins/_data这个目录下
image.png
重启elasticsearch

docker restart elasticsearch

2.4安装kibana
#拉取kibana镜像
docker pull kibana:7.12.1

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 \
--network=es-net \
-p 5601:5601  \
kibana:7.12.1

把kibana修改为中文简体

#进入容器
docker exec -it kibana bash
# 进入config 目录下
cd config/

编辑 kibana.yml 文件
vi kibana.yml
添加一行配置即可
i18n.locale: “zh-CN”
保存并退出
image.png
重启kibana

docker restart kibana

访问kibana http://你的linux主机的IP地址:5601
image.png

3、docker安装MongoDB

#  拉取镜像
docker pull mongo:4.4
# 创建数据卷
docker volume create mongo-data

docker run -di --name mongodb -p 27017:27017 \
-v mongo-data:/data --restart=always mongo:4.4

4、docker安装redis

4.1 拉取redis镜像

docker pull redis:6.2.11

4.2 新建两个文件夹用于挂载数据

mkdir -p /usr/local/redis/redisconf
mkdir -p /usr/local/redis/redisdata
修改两个目录d权限
sudo chmod 777 /usr/local/redis/redisconf/
sudo chmod 777 /usr/local/redis/redisdata/

4.3创建redis.conf配置文件

在/usr/local/redis/redisconf目录下新建一个名为redis.conf的文件并填入如下内容:(直接复制粘贴即可)

########### redis.conf配置文件
#仅允许本地连接redis,开启远程访问请注释掉这一行,在bind前面加上#
#bind 127.0.0.1 

#设置redis的密码,如果需要远程访问redis,请设置密码
requirepass 123456

#开启redis数据持久化AOF
appendonly yes

#关闭保护模式。protected-mode 修改为no
protected-mode no

#将daemonize yes注释起来或者设置为daemonize no,因为该配置和docker run中-d参数冲突,会导致容器一直启动失败。最好是设置为daemonize no
daemonize no 

#默认数据库数量
databases 16

请按需修改,然后保存并退出,其他配置项请自行百度解决。官方的redis.conf配置文件请到此链接下载http://download.redis.io/redis-stable/redis.conf
注意不要直接上传官方的redis.conf文件到/usr/local/redis/redisconf中,必须先修改好,直接上传会导致redis容器启动失败,修改配置文件错误也会导致redis启动失败,我以上的配置基本上满足学习需求了(redis单机模式的学习)

4.2 启动redis
docker run --restart=always \
-p 6379:6379 --name redis -d --privileged=true \
-v /usr/local/redis/redisconf/redis.conf:/etc/redis/redis.conf \
-v /usr/local/redis/redisdata:/data \
redis:6.2.11 redis-server /etc/redis/redis.conf

进入redis容器
在这里插入图片描述
如图所示,只有用密码登录才能进入redis,说明redis配置设置成功

5、docker安装nacos

5.1 拉取nacos

docker pull nacos/nacos-server:v2.1.0

5.2 运行nacos,单例模式
docker run -d --restart=always --name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849 \
-e MODE=standalone -e NACOS_SERVER_IP=192.168.192.182 \
-e JVM_XMS=256m -e JVM_XMX=256m -e JVM_XMN=256m nacos/nacos-server:v2.1.0

NACOS_SERVER_IP填你自己的主机IP地址,JVM_XMS,JVM_XM,JVM_XMN为配置内存大小,请按需配置。

如果我的文章对您有帮助,还请您多多支持我。支付宝帮忙扫一下吧
在这里插入图片描述

你可以使用 Docker Compose 来实现一键部署 MySQLRedisNacosDocker Compose 是一个用于定义和运行多个容器的工具。下面是一个示例的 `docker-compose.yml` 文件,其中包含了 MySQLRedisNacos 的配置: ```yaml version: '3' services: mysql: image: mysql:latest restart: always ports: - 3306:3306 environment: - MYSQL_ROOT_PASSWORD=your_password volumes: - ./mysql_data:/var/lib/mysql redis: image: redis:latest restart: always ports: - 6379:6379 nacos: image: nacos/nacos-server:latest restart: always ports: - 8848:8848 ``` 在以上示例中,MySQL 使用了最新版本的镜像,并将容器内的 3306 端口映射到主机的 3306 端口。你需要将 `your_password` 替换为你的 MySQL root 密码。此外,MySQL 的数据将被挂载到主机的 `./mysql_data` 目录下,这样即使容器被删除,数据也能得到保留。 Redis 使用了最新版本的镜像,并将容器内的 6379 端口映射到主机的 6379 端口。 Nacos 使用了最新版本的镜像,并将容器内的 8848 端口映射到主机的 8848 端口。 在安装 DockerDocker Compose 后,你可以通过 `docker-compose up -d` 命令来启动这些容器。使用 `-d` 参数可以在后台运行容器。 一旦容器启动成功,你就可以通过相应的端口访问 MySQLRedisNacos 了。例如,使用 `localhost:3306` 访问 MySQL,`localhost:6379` 访问 Redis,`localhost:8848` 访问 Nacos。 希望这对你有帮助!如果还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pengkai火火火

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值