【Docker篇】Linux安装Docker、docker安装mysql、redis、rabbitmq

1.Linux安装docker

官方帮助文档:Install Docker Engine on CentOS | Docker Docs

1.1安装命令

# 1. 卸载之前的docker
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
                  
# 2.需要的安装包
yum install -y yum-utils
​
# 3.设置镜像的仓库(国内/国外)
# 默认是从国外的,不推荐,linux命令直接报错:连接docker官网超时 ​
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo


# 推荐使用国内的
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum软件包索引
yum makecache 
​
# 4.安装docker相关的 docker-ce 社区版 而ee是企业版
yum install docker-ce docker-ce-cli containerd.io
# 5、启动docker
service docker start
​
# 6、查看docker状态
service docker status
​
​
# 7、 使用docker version查看是否按照成功
docker version
​
# 补充:设置docker开机自启动
systemctl enable docker.service
​
#查看docker是否开机自启动成功
systemctl is-enabled docker
​

1.2配置阿里云镜像加速

  • 命令列表

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://svctvo40.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

1.3删除镜像、容器

参考链接:

删除Docker镜像时image is being used by stopped container-CSDN博客

#1、停止容器
docker stop 容器id/容器名称

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

#3、删除镜像
docker rmi 镜像名称

2.docker配置mysql

2.1安装以及运行、远程连接

(1)安装,以及运行mysql5.7容器
#安装镜像命令,注意不能少了冒号
docker pull mysql:5.7
​
#注意:新建容器之前,先关闭之前安装的mysql8.0,因为mysql默认端口号为3306
命令:service mysql stop
​
# 新建容器;名称为mysql5.7
sudo docker run -p 3312:3306 --name mysql5.7 \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=a19720603A \
-d mysql:5.7
# 参数说明 -p 3312:3306 将容器的3306端口映射到主机的3312端口
# -v 宿主机文件目录:容器内目录  将容器内文件挂载到宿主机上
# -e MYSQL_ROOT_PASSWORD=root 设置mysql密码为
# -d 后台启动
# --name 给启动容器起名字

# 补充,设置容器自启动
# 首先需要确保mysql5.7是关闭的状态
docker update --restart=always mysql5.7
(2)运行mysql5.7
 docker start mysql5.7
  • 进入mysql5.7容器

docker exec -it mysql5.7 bash
  • 进入mysql环境

mysql -u root -p

输入密码:默认为root,若创建容器有指定密码,则输入指定密码

  • 创建用户admin并开启远程登录

# 创建用户
CREATE USER 'admin'@'%' IDENTIFIED BY 'aaaa19720603AAAA!!!!';

# 给账号授权数据库
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';

# 刷新权限
FLUSH PRIVILEGES;
(3)远程连接

使用navicat等数据库软件连接即可

2.2修改mysql配置文件

# 进入配置文件挂载的目录下
cd /mydata/mysql/conf
​
# 新增配置文件my.cnf
vim 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
# 修改配置文件之后,重启容器
docker restart mysql5.7

进入mysql5.7容器,并查看/etc/mysql目录下的my.conf配置文件是否存在

3.docker配置redis

3.1安装、运行redis

# 1、创建配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
​
# 2、下载镜像
docker pull redis
​
# 3、启动容器
# 云服务器一定要修改端口或配置密码,否则会被拉去挖矿
docker run -p 6124: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客户端
docker exec -it redis redis-cli

3.2修改配置文件

(1)修改参数说明

修改redis.conf,使其支持远程连接

#以下为各个参数解释,不是加入到配置文件的内容

#127.0.0.1 取消指定网卡的redis请求,可以接受来自任意一个主机的redis请求
protected-mode no   关闭保护模式
appendonly yes      将数据持久化
requirepass 123456  设置密码
vim /mydata/redis/conf/redis.conf
​
# 插入下面内容
#bind 127.0.0.1
protected-mode no
appendonly yes   
requirepass 123456  
​
注意,注意:不要有中文注释,否则会运行不了redis容器,原因为配置文件redis.conf中有注释中文,亲自踩了两天的坑
​
# 保存并重启
docker restart redis
​
# 进入redis客户端
docker exec -it redis redis-cli
​
# 输入密码
auth 123456
(2)远程连接相关参数配置


4.docker配置rabbitmq

# 安装命令
docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 rabbitmq:management

#设置开机随docker启动
docker update rabbitmq --restart=always


#端口解释
4369, 25672 (Erlang发现&集群端口)
5672, 5671 (AMQP端口)
15672 (web管理后台端口)
61613, 61614 (STOMP协议端口)
1883, 8883 (MQTT协议端口)


#浏览器输入,虚拟机地址:15672,即为rabbitmq的管理界面
#账号和密码均为guest

5.docker常见命令

#1、docker设置容器开机自启动
docker update 容器名称 --restart=always

#2、查看正在运行的容器
docker ps

#3、查看所有安装的容器
docker ps -a

#4、运行/停止/删除容器
docker start/stop/rm 容器名称/容器id

#5、查看所有安装的镜像
docker images

#6、删除镜像
docker rmi 镜像名称

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/368083.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

编程实例分享,眼镜店电脑系统软件,配件验光管理顾客信息记录查询系统软件教程

编程实例分享&#xff0c;眼镜店电脑系统软件&#xff0c;配件验光管理顾客信息记录查询系统软件教程 一、前言 以下教程以 佳易王眼镜店顾客档案管理系统软件V16.0为例说明 如上图&#xff0c; 点击顾客档案&#xff0c;在这里可以对顾客档案信息记录保存查询&#xff0c;…

Windows Server 2025 Active Directory 新变化

自 Windows Server 2016 以来&#xff0c;AD DS 尚未收到任何重大更新&#xff0c;并且 Server 2019/2022 中的功能级别没有增加。随着长期服务渠道 (LTSC) 中操作系统的下一个版本的发布&#xff0c;该版本暂且被称为 Windows Server 2025。 Windows Server 2025 新功能级别 …

C++ 日期类的实现

目录 前言 日期类中的成员函数和成员变量 日期类中成员函数的详解和实现 1.天数前后的判断 2.天数加减的实现 3.前置 && 后置 4.计算天数差值 前言 日期类的实现将综合前面所学的&#xff08;类的6个默认成员函数&#xff09;&#xff0c;进一步理解和掌握类的…

SOME/IP SD 协议介绍(四)服务发现通信行为

服务发现通信行为 启动行为 服务发现将根据服务实例处于以下三个阶段之一&#xff1a; • 初始等待阶段 • 重复阶段 • 主要阶段 一旦系统启动并且用于服务实例的接口连接已建立&#xff0c;服务发现将进入该服务实例的初始等待阶段。 在进入初始等待阶段并在发送第一条服…

【C++栈和队列:数据结构中的经典组合,高效处理先进先出与后进先出问题的最佳方案】

[本节目标] 1. stack的介绍和使用 2. queue的介绍和使用 3. priority_queue的介绍和使用 4. 容器适配器 1. stack的介绍和使用 1.1 stack的介绍 1. stack是一种容器适配器&#xff0c;专门用在具有后进先出操作的上下文环境中&#xff0c;其删除只能从容器的一端进行元素的…

c语言--求第n个斐波那契数列(递归、迭代)

目录 一、概念二、用迭代求第n个斐波那契数1.分析2.完整代码3.运行结果4.如果求第50个斐波那契数呢&#xff1f;看看会怎么样。4.1运行结果&#xff1a;4.2画图解释 三、用迭代的方式求第n个斐波那契数列1.分析2.完整代码3.运行结果4.求第50个斐波那契数4.1运行结果4.2运行结果…

2024/2/3 牛客寒假算法基础集训营1

目录 why买外卖 G-why买外卖_2024牛客寒假算法基础集训营1 (nowcoder.com) 要有光 L-要有光_2024牛客寒假算法基础集训营1 (nowcoder.com) why买外卖 G-why买外卖_2024牛客寒假算法基础集训营1 (nowcoder.com) 题目要求&#xff1a;这道题要求计算鸡排最贵为多少 思路&a…

C语言经典面试题——翻转单词顺序VS左旋转字符串

目录 1. 翻转单词顺序1.1 题目描述1.2 解法1.3 完整代码 2. 左旋转字符串2.1 题目描述2.1.1 解法一&#xff1a;2.1.2 解法二&#xff1a;2.1.2.1 strcpy2.1.2.2 strcat2.1.2.3 完整代码 2.1.3 解法三&#xff1a; 1. 翻转单词顺序 1.1 题目描述 输入一个英文句子&#xff0c;…

AI专题:2023年AI和标准化网络安全报告

今天分享的是AI系列深度研究报告&#xff1a;《AI专题&#xff1a;2023年AI和标准化网络安全报告》。 &#xff08;报告出品方&#xff1a;enisa&#xff09; 报告共计&#xff1a;37页 文件目的和目标 本文件的总体目标是概述与人工智能(AI)网络安全有关的标准(现有的、正在…

作业2024/2/3

第二章 引用内联重载 一&#xff0e;选择题 1、适宜采用inline定义函数情况是&#xff08;C&#xff09; A. 函数体含有循环语句 B. 函数体含有递归语句 C. 函数代码少、频繁调用 D. 函数代码多、不常调用 2、假定一个函数为A(int i4, int j0) {;}, 则执行“A (1);”语句…

三路快排解决TopK问题

前言&#xff1a; 我们首先要明白什么是三路快排&#xff0c;什么是topk问题。 三路快排&#xff1a; 思想&#xff1a; 三路快排就是数组分3块&#xff0c;三个指针&#xff0c;先随机取一个基准值key&#xff0c;然后将数组划分为3个部分&#xff1a; 【小于key】【等于…

【八大排序】冒泡排序 | 快速排序 + 图文详解!!

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅C语言进阶之路 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 交换排序一、冒泡排序1.1 算法步骤 动图演示1.2 冒泡排序的效率分析1.3 代码实现1.4 …

【Vue】组件间通信的7种方法(全)

目录 组件之前的通信方法 1. props/$emit 2.parent/children 3.ref 4.v-model 5.sync 6.attrs,attrs,attrs,listeners 7.provide/inject 7.eventBus 组件之前的通信方法 1. props/$emit 父传子 props 这个只能够接收父组件传来的数据 不能进行修改 可以静态传递 也可…

【计算机视觉】目标检测 |滑动窗口算法、YOLO、RCNN系列算法

一、概述 首先通过前面对计算机视觉领域中的卷积神经网络进行了解和学习&#xff0c;我们知道&#xff0c;可以通过卷积神经网络对图像进行分类。 如果还想继续深入&#xff0c;会涉及到目标定位(object location)的问题。在图像分类的基础上(Image classification)的基础上…

Maven快速入门——基础篇

本篇对Maven基础进行总结&#xff0c;主要对Maven的定义、作用、Maven坐标、依赖管理、依赖配置、依赖传递特性以及Maven的生命周期进行总结&#xff0c;后面会对springboot以及Maven高级进行总结。 文章目录 目录 一、Maven是什么&#xff1f; 二、Maven的作用&#xff1a; 三…

基于YOLOv8深度学习的水稻叶片病害智能诊断系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

openGauss学习笔记-213 openGauss 性能调优-总体调优思路

文章目录 openGauss学习笔记-213 openGauss 性能调优-总体调优思路213.1 调优思路概述213.2 调优流程 openGauss学习笔记-213 openGauss 性能调优-总体调优思路 213.1 调优思路概述 openGauss的总体性能调优思路为性能瓶颈点分析、关键参数调整以及SQL调优。在调优过程中&…

python使用两个栈实现队列

这里主要是使用两个栈来实现一个队列,并实现队列的入队和出队函数。 对于一个单词hello,如果正常情况下按照队列中先进先出的特点,会按照hello的顺序入队,同样也会按照hello的顺序出队。 添加图片注释,不超过 140 字(可选) 因此如果想要利用两个栈来形成队列,就要将后…

基于SpringBoot+Vue的高校在线答疑管理系统

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML墨韵 学如逆水行舟&#xff0c;不进则退。学习如赶路&#xff0c;不能慢一步。 目录 一、项目简介 二、开发技术与环…

前端学习笔记 | 响应式网页+Boostrap

一、响应式网页 一套代码适应多端 1、媒体查询media(条件){css} max-width 小于等于max-width生效min-width 【案例】左侧隐藏 因为CSS的层叠性&#xff0c;书写顺序&#xff1a;max-width从大到小&#xff1b;min-width从小到大。 【媒体查询完整写法】 在html中link用于不同…