Multipass-Docker部署Redis、Mysql8和RabbitMQ

一、multipass创建实例

multipass launch --name primary -cpus 2 --disk 30G --memory 3G

注释:
--name, -n, 指出虚拟机实例的名称, 默认为primary
--cpus, -c, 使用的CPU核数, 默认为1
--memory, -m, 虚拟机所用的物理内存, 默认为1GB
--disk, -d, 磁盘大小, 默认为5GB

二、Ubuntu安装Docker

注:root用户下不需要sudo,官方和阿里的源选择其一,建议使用阿里源,速度快。

1、安装必要的系统工具
sudo apt install apt-transport-https ca-certificates curl software-properties-common
2、将Docker存储库添加到APT源:
①. 官方源
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
②. 阿里源
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
3、将Docker存储库的GPG密钥添加到系统:
①. 官方的GPG证书
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
②. 阿里的GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
4、确保从Docker repo 安装docker
sudo apt-cache policy docker-ce
5、安装Docker
sudo apt-get install -y docker-ce
6、查看docker版本
sudo docker -v
7、启动Docker
sudo systemctl status docker

三、Docker部署redis

1、拉取镜像
sudo docker pull redis
2、创建文件夹(位置随意)
mkdir -p /home/ubuntu/redis/data
mkdir -p /home/ubuntu/redis/conf
3、新增配置文件:redis.conf
sudo touch /home/ubuntu/redis/conf/redis.conf
4、创建/启动Redis容器(创建镜像实例)
docker run -p 6379:6379 --name redis --restart=always -v /home/ubuntu/redis/conf/redis.conf:/etc/redis/redis.conf -v /home/ubuntu/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

注释:
--name:给容器起一个名
--restartalways开机
-p:端口映射 宿主机:容器
-v:挂载自定义配置 自定义配置:容器内部配置
-d:后台运行
redis-server --appendonly yes: 容器执行redis-server启动命令,并打开redis持久化配置

5、运行redis-cli 查看redis-server是否运行
docker exec -it container-id redis-cli	
6、更改配置文件, 让宿主机可以访问redis-server
vim /home/ubuntu/redis/conf/redis.conf

注释掉bind 127.0.0.1, 修改protected-mode no

7、然后重启容器, 让修改的配置文件生效, 执行命令:
docker restart %container-id%

四、docker 安装mysql8.0

1、下载镜像
docker pull mysql:8.0
2、创建映射文件夹
mkdir -p /home/ubuntu/mysql8/conf  
mkdir -p /home/ubuntu/mysql8/logs  
mkdir -p /home/ubuntu/mysql8/data
3、创建容器
docker run  --privileged=true -p 3306:3306  --name mysql8 --restart=always -v /home/ubuntu/mysql8/conf:/etc/mysql/conf.d  -v /home/ubuntu/mysql8/logs:/var/log/mysql  -v /home/ubuntu/mysql8/data:/var/lib/mysql  -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0

注释:
-p 3306:3306: 主机端口跟容器端口映射
--name mysql :设置容器名字
--restartalways开机
-v /docker/mysql/conf:/etc/mysql/conf.d: 挂载配置文件
-v /docker/mysql/logs:/var/log/mysql :挂载日志
-v /docker/mysql/data:/var/lib/mysql :挂载数据文件,持久化到主机
-e MYSQL_ROOT_PASSWORD=root:设置密码
-d mysql:5.8: 后台启动,使用的镜像为mysql:5.8

4、设置root账户外网可访问
进入容器
docker exec -it mysql8 bash
进入mysql终端
mysql -uroot -p
修改密码
alter user 'root'@'%' identified by '新密码';
设置root账户外网可访问
use mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
flush privileges;
5、配置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
6、重启mysql
docker restart mysql8

五、docker安装RabbitMQ

1、拉取镜像
docker pull rabbitmq:management
2、启动镜像
docker run -d --name rabbitmq --publish 5671:5671  --publish 5672:5672 --publish 4369:4369 --publish 25672:25672 --publish 15671:15671 --publish 15672:15672 rabbitmq:management
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值