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');