DOCKER03_快速安装docker、数据库mysql、缓存redis

2024-05-02 01:32

本文主要是介绍DOCKER03_快速安装docker、数据库mysql、缓存redis,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • ①. 快速安装docker
  • ②. 阿里云镜像加速
  • ③. 数据库mysql5.7安装
  • ④. 缓存redis安装

①. 快速安装docker

  • ①. 官网中文安装参考手册
    (https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/#prerequisites)

  • ②. 确定你是CentOS7及以上版本(cat /etc/redhat-release)

  • ③. yum安装gcc相关
    yum -y install gcc
    yum -y install gcc-c++

  • ④. 卸载旧版本
    sudo yum remove docker*

yum -y remove docker docker-common docker-selinux docker-engine
# 2018.3官网版本
yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine
  • ⑤. 安装需要的软件包 (yum install -y yum-utils device-mapper-persistent-data lvm2)

  • ⑥. 设置stable镜像仓库

# 大坑:如下的可能会报错
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 推荐
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • ⑦. 更新yum软件包索引(yum makecache fast)

  • ⑧. 安装DOCKER CE(yum -y install docker-ce)

  • ⑨. 启动docker

systemctl start docker
  • ⑩. 测试
docker version
docker run hello-world
  • ⑩①. 配置镜像加速
    (注意:daemon.json是docker的核心文件)
mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'
# 自己的阿里云镜像
{"registry-mirrors": ["https://opvvjpc5.mirror.aliyuncs.com"]
}
EOF#网易云
{"registry-mirrors": ["http://hub-mirror.c.163.com"] }#阿里云
{"registry-mirrors": ["https://{自已的编码}.mirror.aliyuncs.com"]
}
{"registry-mirrors": ["https://opvvjpc5.mirror.aliyuncs.com"]
}systemctl daemon-reload
systemctl restart docker

在这里插入图片描述

  • ⑩②. 卸载
systemctl stop docker 
yum -y remove docker-ce
rm -rf /var/lib/docker
  • ⑩③. 安装指定版本,用上面的版本号替换<VERSION_STRING>
    在这里插入图片描述

②. 阿里云镜像加速

  • ①. 网址:https://dev.aliyun.com/search.html

  • ②. 注册一个属于自己的阿里云账户(可复用淘宝账号)

  • ③. 获得加速器地址连接
    在这里插入图片描述

  • ④. 配置本机Docker运行镜像加速器
    鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是阿里云的本人自己账号的镜像地址(需要自己注册有一个属于你自己的): https://xxxx.mirror.aliyuncs.com

*  vim /etc/sysconfig/docker将获得的自己账户下的阿里云加速地址配置进
other_args="--registry-mirror=https://你自己的账号加速信息.mirror.aliyuncs.com"

在这里插入图片描述

  • ⑤. 重新启动Docker后台服务:servicectl restart docker

  • ⑥. Linux 系统下配置完加速器需要检查是否生效
    如果从结果中看到了配置的–registry-mirror参数说明配置成功,如下所示:

在这里插入图片描述

③. 数据库mysql5.7安装

  • ①. 用docker安装上mysql,去docker仓库里搜索mysql
sudo docker pull mysql:5.7# --name指定容器名字 -v目录挂载 -p指定端口映射  -e设置mysql参数 -d后台运行
# -e后面参数:初始化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

在这里插入图片描述

[root@localhost vagrant]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
6a685a33103f        mysql:5.7           "docker-entrypoint.s…"   32 seconds ago      Up 30 seconds       0.0.0.0:3306->3306/tcp, 33060/tcp   mysql# 使用所护进程查看
docker exec -it mysql bin/bash 
exit;
  • ②. 修改mysql的统一编码为utf-8
vi /mydata/mysql/conf/my.conf [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# 重新启动mysql
docker restart mysql
  • ③. 测试连接(在linux下找到ip,去navicat中进行连接)
    在这里插入图片描述

在这里插入图片描述

  • ④. 设置mysql开机自启动:sudo docker update mysql --restart=always

④. 缓存redis安装

  • ①. 有坑如果直接挂载的话docker会以为挂载的是一个目录(/mydata/redis/conf/redis.conf,把redis.conf当成一个目录),所以我们先创建一个文件然后再挂载,在虚拟机中
# 在虚拟机中
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.confdocker pull redisdocker 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# 直接进去redis客户端。
docker exec -it redis redis-cli
  • ②. 默认是不持久化的。在配置文件中输入appendonly yes,就可以aof持久化了。修改完docker restart redis,
vim /mydata/redis/conf/redis.conf
# 插入下面内容
appendonly yes# 重启redis
docker restart redis
# 进入redis容器内
docker exec -it redis redis-cli
set name xiaozhi
get name

在这里插入图片描述

  • ③. 测试
    在这里插入图片描述
  • ④. 设置redis开机自启动:sudo docker update redis --restart=always

这篇关于DOCKER03_快速安装docker、数据库mysql、缓存redis的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/953126

相关文章

MySQL中删除重复数据SQL的三种写法

《MySQL中删除重复数据SQL的三种写法》:本文主要介绍MySQL中删除重复数据SQL的三种写法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录方法一:使用 left join + 子查询删除重复数据(推荐)方法二:创建临时表(需分多步执行,逻辑清晰,但会

Redis连接失败:客户端IP不在白名单中的问题分析与解决方案

《Redis连接失败:客户端IP不在白名单中的问题分析与解决方案》在现代分布式系统中,Redis作为一种高性能的内存数据库,被广泛应用于缓存、消息队列、会话存储等场景,然而,在实际使用过程中,我们可能... 目录一、问题背景二、错误分析1. 错误信息解读2. 根本原因三、解决方案1. 将客户端IP添加到Re

详谈redis跟数据库的数据同步问题

《详谈redis跟数据库的数据同步问题》文章讨论了在Redis和数据库数据一致性问题上的解决方案,主要比较了先更新Redis缓存再更新数据库和先更新数据库再更新Redis缓存两种方案,文章指出,删除R... 目录一、Redis 数据库数据一致性的解决方案1.1、更新Redis缓存、删除Redis缓存的区别二

oracle数据库索引失效的问题及解决

《oracle数据库索引失效的问题及解决》本文总结了在Oracle数据库中索引失效的一些常见场景,包括使用isnull、isnotnull、!=、、、函数处理、like前置%查询以及范围索引和等值索引... 目录oracle数据库索引失效问题场景环境索引失效情况及验证结论一结论二结论三结论四结论五总结ora

Redis与缓存解读

《Redis与缓存解读》文章介绍了Redis作为缓存层的优势和缺点,并分析了六种缓存更新策略,包括超时剔除、先删缓存再更新数据库、旁路缓存、先更新数据库再删缓存、先更新数据库再更新缓存、读写穿透和异步... 目录缓存缓存优缺点缓存更新策略超时剔除先删缓存再更新数据库旁路缓存(先更新数据库,再删缓存)先更新数

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

Redis事务与数据持久化方式

《Redis事务与数据持久化方式》该文档主要介绍了Redis事务和持久化机制,事务通过将多个命令打包执行,而持久化则通过快照(RDB)和追加式文件(AOF)两种方式将内存数据保存到磁盘,以防止数据丢失... 目录一、Redis 事务1.1 事务本质1.2 数据库事务与redis事务1.2.1 数据库事务1.

el-select下拉选择缓存的实现

《el-select下拉选择缓存的实现》本文主要介绍了在使用el-select实现下拉选择缓存时遇到的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录项目场景:问题描述解决方案:项目场景:从左侧列表中选取字段填入右侧下拉多选框,用户可以对右侧

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT