首页 > 数据库 >Linux安装Docker并搭建MySql、Redis、RabbitMQ

Linux安装Docker并搭建MySql、Redis、RabbitMQ

时间:2024-03-03 17:35:31浏览次数:25  
标签:容器 sudo Redis Linux redis RabbitMQ conf mysql docker

1.1 安装docker

(1)删除老版本

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

(2) 安装工具包并设置存储库

sudo yum install -y yum-utils

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

(3)安装docker引擎

sudo yum install docker-ce docker-ce-cli containerd.io

(4)docker基本使用命令

启动docker

sudo systemctl start docker

检查docker版本

docker -v

查看docker已有镜像

sudo docker images

设置docker开机启动

sudo systemctl enable docker

(5)设置阿里云镜像仓库

创建文件

sudo mkdir -p /etc/docker

修改配置, 设置镜像

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://vw9qapdy.mirror.aliyuncs.com"]
}
EOF

重启后台线程

sudo systemctl daemon-reload

重启docker

sudo systemctl restart docker

docker查错

sudo dockerd --debug

1.2 docker安装mysql

(1)docker安装mysql

sudo docker pull mysql:5.7

(2)docker启动mysql

参数:

  • -p 3306:3306:将容器的3306端口映射到主机的3306端口

  • --name:给容器命名

  • -v /mydata/mysql/log:/var/log/mysql:将配置文件挂载到主机/mydata/..

  • -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码为root

sudo docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

(3)查看docker启动的容器:

sudo docker ps

(4)配置mysql

进入挂载的mysql配置目录

cd /mydata/mysql/conf

修改配置文件 my.cnf

vi my.cnf

输入以下内容

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

# Esc
# :wq

docker重启mysql使配置生效

docker restart mysql

(5)容器随docker启动自动运行

# mysql
docker update mysql --restart=always

1.3 docker安装redis

(1)docker拉取redis镜像

docker pull redis

(2)docker启动redis

mkdir -p /mydata/redis/conf

touch /mydata/redis/conf/redis.conf

(3)启动redis容器

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

(4)配置redis持久化

echo "appendonly yes"  >> /mydata/redis/conf/redis.conf

#重启生效
docker restart redis

(5)容器随docker启动自动运行

# redis
docker update redis --restart=always

1.4 docker安装RabbitMQ

这里使用docker安装RabbitMQ

(1)切换root用户

sudo -i 

(2)安装命令

#查询rabbitMQ镜像
docker search rabbitmq

#拉取rabbitMQ镜像
docker pull rabbitmq

#运行rabbitMQ
docker run -d --name rabbitmq -p 15672:15672 -p 5672:5672 rabbitmq

#进入容器
docker exec -it 容器id/容器名称 /bin/bash

#安装安装插件
rabbitmq-plugins enable rabbitmq_management

#退出当前容器
exit

(3)访问:http://192.168.56.10:15672/# 用户密码都是guest

image-20220319184413626

#常用命令
#停止容器
docker stop 容器id/容器名称

#删除容器
docker rm 容器id/容器名称

(4)Stats in management UI are disabled on this [node]

docker exec -it {rabbitmq容器名称或者id} /bin/bash

#进入容器后,cd到以下路径
cd /etc/rabbitmq/conf.d/

#修改 management_agent.disable_metrics_collector = false
echo management_agent.disable_metrics_collector = false > management_agent.disable_metrics_collector.conf

#退出容器
exit

#重启rabbitmq容器
docker retart {rabbitmq容器id}

(5)容器随docker启动自动运行

#容器随docker启动自动运行
docker update rabbitmq --restart=always

标签:容器,sudo,Redis,Linux,redis,RabbitMQ,conf,mysql,docker
From: https://www.cnblogs.com/ueme/p/18050331

相关文章

  • linux基于STM32CUBE IDE搭建stm32开发环境
    1.安装STM32CUBEMX安装地址https://www.st.com/zh/development-tools/stm32cubemx.html2.安装STM32CUBEIDE安装地址https://www.st.com/zh/development-tools/stm32cubeide.html3.安装烧写相关软件3.1安装openocd方法1:命令安装(不推荐,因为默认安装的是0.10.0,不支持......
  • linux基于clion搭建stm32开发环境
    1.安装开发工具1.1安装stm32cubemx下载地址https://www.st.com/zh/development-tools/stm32cubemx.html1.2安装clion方法1:直接下载clion,下载地址https://www.jetbrains.com/clion/download方法2:通过JetBrainsToolBox下载,JetBrainsToolBox下载地址https://www.j......
  • Redis的常用数据类型与操作
    Redis简介Redis是一个基于内存的key-value结构数据库(内存存储)(键值对)Mysql是将数据,是通过数据文件的方式存放在磁盘上(磁盘存储)(二维表)Redis特点抢购秒杀,或者新闻热点,大量的用户去访问的数据,就适合存放在Redis中,是对mysql的补充,往往项目中是和mysql共存的状态redis进行cmd命令......
  • Linux学习-day7
    Linux文件操作篇1vim编辑器vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。Vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。简单的来说,vi是老式的字处理器,不过功能已经很齐全了......
  • redis和memcached的区别
    观点一:1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等;2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储;3、虚拟内存--Redis当物理内存用完时,可以将一些很久没用到的value交换到磁......
  • RabbitMQ、RocketMQ、Kafka区别
    引言1、队列应用场景:MQ(MessageQueue,消息队列)消息队列在实际应用中常用的使用场景(优点):异步处理,应用解耦,流量削锋和消息通讯四个场景。2、目前使用较多的消息队列:有老牌的ActiveMQ、RabbitMQ,ZeroMQ,炙手可热的Kafka,MetaMQ,阿里巴巴的RocketMQ。3、如何选型(目前现状):......
  • 5-Redis十大关系之集合Set
    redis十大关系之集合Set(value不重复)添加元素:SADDkeymember[member...]遍历集合中所有元素:SMEMBERSkey判断元素是否在集合中:SISMEMBERkeymember删除元素:SREMkeymember[member...]获取集合里面元素的个数:SCARDkey从集合中随机展现设置的数字个数元素,元素不删除......
  • Redis HashTag
    hashTag用于redis集群中。其实现方式为在key中加个{},例如test{1}。使用hashtag后客户端在计算key的crc16时,只计算{}中数据。如果没使用hashtag,客户端会对整个key进行crc16计算。下面演示下hashtag使用。127.0.0.1:6380>clusterkeyslotuser:case(integer)9491127.0.0.1:63......
  • redis 工具类
    一、Redis工具类一、RedisUtil​直接用RedisTemplate操作Redis,需要很多行代码,因此直接封装好一个RedisUtils,这样写代码更方便点。这个RedisUtils交给Spring容器实例化,使用时直接注解注入。packagecom.jin.util;importjava.util.List;importjava.util.Map;importjava.......
  • ElasticSearch系列---【linux离线安装elasticsearch7.8集群】
    linux离线安装elasticsearch7.81.官网下载地址https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-8-02.上传到服务器指定目录例如这里我上传到/opt/app/middles/目录下3.解压软件#解压缩tar-zxvfelasticsearch-7.8.0-linux-x86_64.tar.gz4.创建用户......