Docker安装mysql、redis、rabbitmq

2024-03-03 8805阅读

【docker 安装mysql】

docker pull mysql:latest
docker images
docker run -p 3306:3306 --name mysql --restart=always --privileged=true \
-v /usr/local/mysql/log:/var/log/mysql \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/conf:/etc/mysql \
-v /etc/localtime:/etc/localtime:ro \
-e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
#-p 3306:3306:指定宿主机端口与容器端口映射关系
#--name mysql:创建的容器名称
#--restart=always:总是跟随docker启动
#--privileged=true:获取宿主机root权限
#-v /usr/local/mysql/log:/var/log/mysql:映射日志目录,宿主机:容器
#-v /usr/local/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器
#-v /usr/local/mysql/conf:/etc/mysql:映射配置目录,宿主机:容器
#-v /etc/localtime:/etc/localtime:ro:让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read only的意思,就是只读。
#-e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456
#-d mysql:latest:后台运行mysql容器,版本是latest。
#如果启动失败,查看日志
docker logs -f mysql
#报错信息为:mysqld: Can't read dir of '/etc/mysql/conf.d/' (OS errno 2 - No such file or directory)
#解决方案为
cd /usr/local/mysql/conf
mkdir conf.d
mkdir mysql.conf.d
#然后删除容器重新创建即可。
docker exec -it your-mysql-container mysql -u root -p 可进入mysql

【docker安装redis】 

docker run -p 6379:6379 --name redis --restart=always --privileged=true \
-v /usr/local/redis/conf:/etc/redis \
-v /usr/local/redis/data:/data \
-v /usr/local/redis/redis.log:/var/log/redis.log \
-d redis:latest \
redis-server /etc/redis/redis.conf \
--appendonly yes --requirepass "123456"  
#如果启动失败,查看日志
docker logs -f redis
#指定redis-server /etc/redis/redis.conf的目的是让redis带配置文件启动,如果没有配置文件会报错
#添加配置文件,vim /usr/local/redis/conf/redis.conf,添加行信息:
bind 0.0.0.0
#为redis设置登录密码,如果在云上建议开启
requirepass 123456
#开启持久化
appendonly yes
docker exec -it your-redis-container redis-cli  可进入redis命令行界面

【docker安装rabbitmq】

docker run -p 5672:5672 -p 15672:15672 --name rabbitmq  --cpus 1 --memory 512M --restart=always --privileged=true -d rabbitmq:latest
# 如果成功运行了RabbitMQ,但是无法通过http://IP:15672/访问后台管理界面,这是因为默认情况下他是没有启用管理插件和管理页面的
# 进入容器
docker exec -it 容器名 /bin/bash
# 启用RabbitMQ的管理插件
rabbitmq-plugins enable rabbitmq_management

【常用命令】

# 进入容器
docker exec -it b41069c782e8   /bin/bash
docker run -it nginx /bin/bash  进入容器
# 查看docker状态
docker stats
# 查看日志
docker logs b41069c782e8
# 指定cpus和memory参数
docker run -p 5672:5672 -p 15672:15672 --name rabbitmq  --cpus 1 --memory 512M --restart=always --privileged=true -d rabbitmq:latest
# 从容器内拷贝文件
docker run -p 3306:3306 --name  sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.40
sudo docker cp sample-mysql:/etc/mysql/. /usr/local/mysql82/conf
# 参数配置
--cpus 1
--memory 2G
--ulimit nofile=1024
# 共享网络空间(注意端口冲突的问题),解决docker内部localhost 127.0.0.1等问题。
--network host 
# 构建镜像
docker build -f Dockerfile -t  .
# 登录远程仓库
docker login -u  -p  
# 关联 本地->远程
docker tag :latest :latest
# 推送 本地->远程
docker push :
Docker安装mysql、redis、rabbitmq 第1张
()
Docker安装mysql、redis、rabbitmq 第2张
()

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]