基于centos的linux上docker安装,及mysql、redis等应用在docker容器中的安装

news2024/12/22 23:00:50

Docker环境安装

  • 安装yum-utils:

yum install ‐y yum‐utils device‐mapper‐persistent‐data lvm2
  • 为yum源添加docker仓库位置:

yum‐config‐manager ‐‐add‐repo https://download.docker.com/linux/centos/docker‐ce.repo

如果上面执行命令后返回

-bash: yum‐config‐manager: command not found

先查询yum-utils有没有安装成功:

rpm -q yum-utils

如果返回yum-utils的版本号,则安装成功,没有返回再重新安装:

yum install -y yum-utils

然后,查看yum-config-manager的安装位置:

which yum-config-manager

这个可能是path没有配置成功,可以直接通过其所在地址直接执行:

/usr/bin/yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

详见下图:
在这里插入图片描述

  • 安装Docker:

yum install -y docker-ce
  • 启动Docker:

systemctl start docker
  • 查看Docker是否启动成功:

systemctl status docker
  • 启动后的状态如下:
    在这里插入图片描述

MYSQL安装

  • 下载MySQL5.7的docker镜像,你也可以安装MySQL8.0:
docker pull mysql:5.7

可能会出现以下命令,这是网络超时导致的,你可以多执行几次该命令:

Error response from daemon: Get "https://registry-1.docker.io/v2/library/mysql/manifests/sha256:4bc6bc963e6d8443453676cae56536f4b8156d78bae03c0145cbe47c2aad73bb": net/http: TLS handshake timeout

在这里插入图片描述

  • 使用如下命令启动MySQL服务(直接复制不要修改):
docker run -p 3306:3306 --name mysql --restart=always --privileged=true -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

#上述命令的含义
-p 3306:3306:将容器的3306端口映射到主机的3306端口
–name mysql5.7:容器起别名
–restart=always :当 Docker 重启时,容器自动启动
-­v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-­v /mydata/mysql/data:/var/lib/mysql:将数据文件夹挂载到主机
-­v /mydata/mysql/conf:/etc/mysql/conf.d:将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码
-d mysql:5.7 :指定运行版本

在这里插入图片描述

  • 切换到上述命令配置的主机/mydata/mysql/conf目录下
cd /mydata/mysql/conf
  • 创建 myconf.cnf文件
touch my.cnf
  • 使用vim命令对 my.cnf文件添加如下内容,在docker中安装的mysql默认字符集是latin1,需要改成utf8:
[client]
default_character_set=utf8
[mysqld]
collation_server = utf8_general_ci
character_set_server = utf8

在这里插入图片描述

  • 重启mysql容器,使配置文件生效:
docker restart  mysql
  • 查看是否启动成功
docker ps

在linux上操作mysql

  • 进入运行MySQL的docker容器(注意全角半角):
docker exec -it mysql /bin/bash
  • 使用mysql客户端连接mysql服务器,密码登录:
mysql -u root -p
  • 进入mysql命令行,创建一个数据库mall(别忘记加;):
create database mall character set utf8;
  • 显示当前数据库
SHOW DATABASES;

在这里插入图片描述

redis安装

看我以前的文章:轻松搞定Docker环境下Redis安装

如果你在使用上述方式安装过程中有问题(上面有在自定义redis.conf),可以通过下面这种方式快速实现。

  • 下载Redis5.0的docker镜像:
 docker pull redis:5
  • 使用如下命令启动Redis服务:
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data -d redis:5 redis-server --appendonly yes
  • 进入Redis容器使用redis-cli命令进行连接:
docker exec -it redis redis-cli

在这里插入图片描述

Nginx安装

  • 下载Nginx1.10的docker镜像:

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Laravel Octane 和 Swoole 协程的使用分析

之前在工作中使用 Laravel Octane 的 concurrently 处理并发时,发现在队列和定时任务中不会触发并发效果。经过分析,作了如下猜测:队列和定时任务都属于一个独立的进程,与 Octane 服务无关,而 Octane concurrently 恰恰…

OpenLayers线性渐变和中心渐变(径向渐变)

目录 1.前言2.添加一个面要素3.线性渐变3.1 第一个注意点3.2 第二个注意点 4.中心渐变(径向渐变)5.总结 1.前言 OpenLayers官网有整个图层的渐变示例,但是没有单个要素的渐变示例,我们这里来补充一下。OpenLayers中的渐变是通过fi…

(C语言)函数详解上

(C语言)函数详解上 目录: 1. 函数的概念 2. 库函数 2.1 标准库和头文件 2.2 库函数的使用方法 2.2.1 sqrt 功能 2.2.2 头文件包含 2.2.3 实践 2.2.4 库函数文档的一般格式 3. 自定义函数 3.1 函数的语法形式 3.2 函数的举例 4. 形参和实参 4.…

<网络安全>《61 微课堂<第1课 南北向流量是什么?>》

1 形象化解释 在网络安全中,经常听到南北向流量这个词。那究竟是什么意思呢? 这里的南北,就是地图上的东西南北,是方向。我们在画网络架构图时,往往是由上到下依次是web层、应用层、数据层,流量从web层到…

Redis 之六:Redis 的哨兵模式(Sentinel)

Redis 哨兵(Sentinel)模式是一种高可用性解决方案,用于监控和自动故障转移的集群系统。 在 Redis Sentinel 架构中,哨兵是一组运行在特殊模式下的 Redis 进程,它们可以监控一个或多个主从复制结构中的 Redis 主服务器以…

泵站远程监控:智能化水利管理

一、泵站远程监控的背景与意义 泵站作为水利工程的重要设施,承担着灌溉、排水、供水等多重任务,是保障农业生产和城市供水的重要基础设施。然而,传统的泵站管理模式往往依赖于人工巡检和现场操作,这种方式不仅效率低下&#xff0c…

基于SSM的高校竞赛和考级查询系统(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的高校竞赛和考级查询系统(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通过Sp…

如何安装ProtoBuf环境

1 🍑下载 ProtoBuf🍑 下载 ProtoBuf 前⼀定要安装依赖库:autoconf automake libtool curl make g unzip 如未安装,安装命令如下: Ubuntu ⽤⼾选择: sudo apt-get install autoconf automake libtool cur…

NXP实战笔记(十一):32K3xx基于RTD-SDK在S32DS上配置LPSPI(同步、异步、DMA、主机、从机、中断、轮询)

目录 1、概述 2、RTD-SDK配置 2.1、配置目标 2.2、主、从机引脚配置 2.3、时钟配置 2.4、LPSPI配置 2.5、中断配置 2.6、DMA配置(使用DMA才会配置) 2、dma Logic Instance 2.7、RM配置(使用DMA的情况下必须配置此选项) 3、代码实现 1、概述 S32K3_低功耗LPSPI轮询…

golang goroutine 如何退出?

上一讲说到调度器将maingoroutine推上舞台,为它铺好了道路,开始执行runtime.main函数。这一讲,我们探索maingoroutine以及普通goroutine从执行到退出的整个过程。 //Themaingoroutine. funcmain(){ //gmaingoroutine,不再是g0了 …

前端学习第三天-css基础

1. CSS简介 从HTML被发明开始,样式就以各种形式存在。不同的浏览器结合它们各自的样式语言为用户提供页面效果的控制。最初的HTML只包含很少的显示属性。 随着HTML的成长,为了满足页面设计者的要求,HTML添加了很多显示功能。但是随着这些功能…

Linux命令行与shell脚本编程大全-2.2

第二部分 shell脚本编程基础 第11章构建基础脚本 第12章结构化命令 第13章更多的结构化命令 第14章处理用户输入 第15章呈现数据 第16章脚本控制 第15章 呈现数据 15.1 理解输入和输出 15.1.1 标准文件描述符 Linux 系统会将每个对象当作文件来处理,这包括输入和…

TCP为什么要三次握手?

TCP三次握手协议是为了在不可靠的互联网环境中可靠地建立起一个连接,三次握手可以确保两端的发送和接收能力都是正常的。 那么,为什么是三次而不是二次或四次握手呢? 为什么不是二次握手? 如果是二次握手,即客户端发…

带着问题阅读源码——Spring MVC是如何将url注册到RequestMappingHandlerMapping?

背景 在 Spring MVC 中,DispatcherServlet 是前端控制器(front controller),它负责接收所有的 HTTP 请求并将它们映射到相应的处理器(handler)。为了实现这一点,Spring MVC 使用了适配器模式将…

设计模式-结构型模式-外观模式

外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。[DP] 首先,定义子系统的各个组件接口和具体实现类: // 子系统组件接…

MySQL 用了哪种默认隔离级别,实现原理是什么?

MySQL 的默认隔离级别是 RR - 可重复读,可以通过命令来查看 MySQL 中的默认隔离级别。 RR - 可重复读是基于多版本并发控制(Multi-Version Concurrency Control,MVCC )实现的。MVCC,在读取数据时通过一种类似快照的方…

if语句用法

if语句是单条件分支语句 定义:根据一个条件来控制程序执行流程(如图3.2)。 语法格式: if(表达式){ 若干语句 } ★注意★: ① 表达式的值必须是boolean 型; ② 不能用0代表false;用1代表 true&am…

qt 5.15版本安装

1.qt5.15版本安装 2.安装慢时,切换到清华镜像源:.\qt-unified-windows-x64-online.exe --mirror https://mirrors.tuna.tsinghua.edu.cn/qt/ 3.没有qt 5.15版本在旁边进行筛选,只选archive

MySql外连接

目录 数据准备外连接 数据准备 -- 部门表 create table tb_dept (id int unsigned primary key auto_increment comment 主键ID,name varchar(10) not null unique comment 部门名称,create_time datetime not null comment 创建时间,update_time datetime…

ABB双语言共享充电宝投资理财源码/共享充电宝系统源码/共享充电宝市场分析/五级分销返利+地图显示模式

ABB双语言共享充电宝投资理财源码/五级分销返利地图显示模式/vue编译后前端 测试环境:Linux系统CentOS7.6、宝塔、PHP7.3、MySQL5.6,根目录public,伪静态laravel5, 源码下载:https://download.csdn.net/download/m0_…