docker安装mysql、redis、tomcat、rabbitmq
1 tomcat安装2 mysql安装3 redis安装4 rabbitmq安装
docker安装mysql、redis、tomcat、rabbitmq
0 准备工作
# step 1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+g' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce-20.10.10-3.el7 docker-ce-cli-20.10.10-3.el7
# Step 4: 开启Docker服务
systemctl start docker
systemctl enable docker
搜索镜像
拉取镜像
查看镜像
启动镜像
停止容器
移除容器
1 tomcat安装
2 mysql安装
docker pull mysql:5.7
docker run -d \
-p 13306:3306 \
--restart=always \
--privileged=true \
-v /root/docker-data/mysql/log:/var/log/mysql \
-v /root/docker-data/mysql/data:/var/lib/mysql \
-v /root/docker-data/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql \
mysql:5.7
my.cnf
# my.cnf
[client]
# 客户端字符集
default_character_set=utf8
[mysqld]
# 服务端口
port=3306
# 服务端字符集
collation_server = utf8_general_ci
# 服务端字符集
character_set_server = utf8
lower-case-table-names=1
docker ps
docker restart mysql
docker exec -it mysql /bin/bash
# 本地登录mysql
mysql -uroot -p123456
SHOW VARIABLES LIKE 'character%';
use mysql;
select user,host,authentication_string from user;
# 授权root远程登录
GRANT ALL PRIVILEGES
ON *.*
TO 'root'@'%'
IDENTIFIED BY '123456'
WITH GRANT OPTION;
# 刷新权限
flush privileges;
啊哈成功了!!!
3 redis安装
可从GitHub仓库寻找合适版本的redis配置文件
https://github.com/redis/redis
需要先手动创建文件:/root/redis/redis.conf
# 拉取镜像
docker pull redis:6.0.8
# 查询镜像
docker images
# 运行容器
docker run \
--publish 16379:6379 \
--name myredis \
--privileged=true \
--volume /root/redis/redis.conf:/etc/redis/redis.conf \
-v /root/redis/data:/data \
-d redis:6.0.8 \
redis-server /etc/redis/redis.conf
===========================================================
docker update --restart=always 容器名或容器ID
docker container update --restart=【容器策略】 容器名称
no 容器退出时不重启容器
on-failure 只有在非零状态退出时才重新启动容器。--restart=on-failure:【重启次数】
always 无论退出状态如何都启动容器
--volume /root/redis/redis.conf:/etc/redis/redis.conf
表示将本地的 /root/redis/redis.conf
配置文件绑定到 Docker 容器中的 /etc/redis/redis.conf
。
查看 Redis 容器的信息(下面只贴出其中的一部分):
docker inspect redis
进入正在运行的 Redis 容器:
docker exec --interactive --tty redis /bin/sh
redis-server、redis-cli 等可执行文件位于容器中的 /usr/local/bin 目录中:
cd /usr/local/bin && ls -l
4 rabbitmq安装
1、进入docker hub镜像仓库地址:https://hub.docker.com/_/rabbitmq?tab=tags;
2、搜索rabbitmq,进入官方的镜像,选择带有“mangement”的版本(包含web管理页面);
4.1 安装rabbitmq
# 创建目录
mkdir -p /root/docker-data/rabbitmq/{data,conf,log}
# 设置授权777,否则在启动容器的时候容易失败
chmod -R 777 /root/docker-data/rabbitmq
# 拉取镜像,安装其他版本在rabbitmq后面跟上版本号即可
docker pull rabbitmq
# 查看镜像
docker images
# 启动rabbitMq
docker run -d \
--privileged=true \
-p 5672:5672 \
-p 15672:15672 \
--name rabbitmq \
-v /root/docker-data/rabbitmq/data:/var/lib/rabbitmq \
-v /root/docker-data/rabbitmq/conf:/etc/rabbitmq \
-v /root/docker-data/rabbitmq/log:/var/log/rabbitmq \
--restart=always \
--hostname=rabbitmqhost \
-e RABBITMQ_DEFAULT_VHOST=my_vhost \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
rabbitmq:3.9.12-management
# 启动rabbitmq_management, rabbitmq 为容器的名称,使用id也可以
docker exec -it rabbitmq rabbitmq-plugins enable rabbitmq_management
4.1 创建rabbitmq用户
默认账户密码: guest/guest;
默认用户guest访问报错User can only log in via localhost;
链接: http://192.168.0.188:15672
4.1.1 创建rabbitmq用户方案1:
若能通过localhost方式访问,则使用admin/admin登录:
Add a user 创建admin2用户,密码admin2
Add Virtual Hosts 点击添加虚拟主机
Set permission,点击用户名,设置权限
4.1.2 创建rabbitmq用户方案2:
1.首先进入容器
docker exec -it rabbitmq /bin/bash
2.查看所有用户
rabbitmqctl list_users
3.创建用户
# rabbitmqctl add_user 用户名 密码
rabbitmqctl add_user admin1 admin1
4.给用户授权角色(none、management、policymaker、monitoring、administrator)
# rabbitmqctl set_user_tags 用户名 角色
rabbitmqctl set_user_tags admin1 administrator
5.赋予用户权限(vhost configure write read)
rabbitmqctl set_permissions -p / admin1 ".*" ".*" ".*"
# 如果4操作失败,创建虚拟主机(Virtual host):
rabbitmqctl add_vhost /
6.查看当前用户所有的权限
rabbitmqctl list_user_permissions 用户名
7.启动RabbitMQ Web管理控制台:
rabbitmq-plugins enable rabbitmq_management
8.删除用户 rabbitmqctl delete_user 用户名
rabbitmqctl delete_user xxxx
更多推荐
所有评论(0)