1 Docker 中安装 Redis

1.1 创建目录

在硬盘上创建 redis 的数据目录:

mkdir -p /Users/yygnb/dockerMe/redis/data

为该目录添加权限:

chown 200 -R /Users/yygnb/dockerMe/redis

1.2 拉取镜像

搜索镜像:

docker search redis

搜索结果:

拉取官方镜像:

docker pull redis

1.3 启动容器

映射端口 6379 和 data 目录,启动容器:

docker run -itd -p 6379:6379 \
-v /Users/yygnb/dockerMe/redis/data:/data \
--restart always \
--name redis \
redis

1.4 查看 Redis 状态

docker ps -a | grep redis

Redis 容器运行后,可以通过 RDM 等客户端工具尝试连接。

2 Docker 中安装 MySQL

2.1 创建目录

在硬盘上分别创建 conf(配置文件目录)、data(数据文件目录)、logs(日志文件目录):

mkdir -p /Users/yygnb/dockerMe/mysql/conf /Users/yygnb/dockerMe/mysql/logs /Users/yygnb/dockerMe/mysql/data

为上面三个目录添加权限:

chown 200 -R /Users/yygnb/dockerMe/mysql

2.2 拉取镜像

docker search mysql

搜索结果:

拉取官方镜像:

docker pull mysql

2.3 创建配置文件

进入上面创建的 mysql/conf 目录下,创建配置文件 my.cnf

cd /Users/yygnb/dockerMe/mysql/conf
touch my.cnf
vi my.cnf

配置文件 my.cnf 内容如下:

# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #
# The MySQL Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html [client]
default-character-set=utf8mb4 [mysql]
default-character-set=utf8mb4 [mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
max_connections=10000
default-time_zone='+8:00'
character-set-client-handshake=FALSE
character_set_server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_general_ci' # Custom config should go here
!includedir /etc/mysql/conf.d/

2.4 启动容器

启动容器,指定3306 端口映射和上面的三个目录映射,同时也指定 MySQL root 账户的密码为 Mysql.123

docker run --name mysql \
--restart=always \
-p 3306:3306 \
-v /Users/yygnb/dockerMe/mysql/conf/my.cnf:/etc/mysql/my.cnf \
-v /Users/yygnb/dockerMe/mysql/data:/var/lib/mysql \
-v /Users/yygnb/dockerMe/mysql/logs:/logs \
--privileged=true \
-e MYSQL_ROOT_PASSWORD=Mysql.123 \
-d mysql:latest

2.5 查看 MySQL 状态

docker ps | grep mysql

2.6 修改 MySQL 权限

容器启动后,可以进入容器修改 MySQL 的一些权限,使得外部可以连接。

进入容器:

docker exec -it mysql /bin/bash

登录 MySQL:

mysql -u root -p

输入上面设置的密码 Mysql.123后便在命令行中进入了 MySQL。

依次执行下列 SQL 语句,修改权限:

use mysql; 

update user set authentication_string='' where user='root';

alter user 'root'@'%' IDENTIFIED BY 'Mysql.123';

grant all privileges on *.* to 'root'@'%' with grant option;

flush privileges;

全部执行完毕后,可以尝试使用 MySQL Workbench 或 IDEA 或 Navicat 连接 MySQL。

MySQL 8 的 JDBC 连接串一般格式为:

jdbc:mysql://127.0.0.1:3306/db_name?useUnicode=true&characterEncoding=utf8&useSSL=true

驱动为:

com.mysql.cj.jdbc.Driver

感谢你阅读本文,如果本文给了你一点点帮助或者启发,还请三连支持一下,点赞、关注、收藏,作者会持续与大家分享更多干货

Docker 安装 MySQL、Redis的更多相关文章

  1. docker安装mysql/redis

    1.安装mysql容器 #搜索mysql镜像 docker search mysql #拉取mysql镜像 docker pull docker.io/mysql #创建mysql容器,MYSQL_R ...

  2. 新服务器搭建-总结: 下载nginx,jdk8,docker-compose编排(安装mysql,redis) 附安装

    三明SEO: 前言 如题, 公司新买了一条4核16G的服务器, 不得不重新搭建环境, 只能一一重来, 做个记录 1.nginx : 手动安装 2.jdk8: 手动安装 3. 安装docker 及doc ...

  3. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  4. Docker安装MySQL,Redis,阿里云镜像加速

    Docker安装 虚拟化容器技术.Docker基于镜像,可以秒级启动各种容器.每一种容器都是一个完整的环境,容器之间相互隔离. 如果之前安装的有其他版本,卸载旧的版本. $ sudo yum remo ...

  5. 使用docker安装myql/redis等软件

    使用docker安装myql/redis等软件 概述 基本命令 安装mysql 安装redis 概述 在开发时经常需要安装各种软件,有时甚至为了验证一个命令不得不安装配置一个缓存.数据库.MQ等,耽误 ...

  6. Docker安装MySql完整教程、实操

    docker:官网 docker:镜像官网:        镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker p ...

  7. docker初识-docker安装、基于docker安装mysql及tomcat、基本命令

    一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...

  8. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  9. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  10. 解决Docker安装MySQL不区分大小写问题

    Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...

随机推荐

  1. SQL Server各版本序列号/激活码/License/秘钥

    SQL Server 2019 Enterprise:HMWJ3-KY3J2-NMVD7-KG4JR-X2G8G Enterprise Core:2C9JR-K3RNG-QD4M4-JQ2HR-846 ...

  2. Ubuntu-apt-get出错

    ubuntu apt-get的时候出现: E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission ...

  3. Array 数组filter()方法,遍历数组返回符合条件的一个新数组

    <script> const arr = [ { id: 1, name: "aa", isDone: false }, { id: 2, name: "bb ...

  4. 为什么新的5G标准将为技术栈带来更低的 TCO

    ​ 摘要 新5G标准和边缘计算对低延迟的要求,给那些试图将一堆不同组件组装成一个不会出现故障且仍具有低延迟的高成本效益应用程序公司带来了严峻的挑战.事实上,这个问题非常严重,以至于需要重新考虑架构. ...

  5. 一种让运行在CentOS下的.NET CORE的Web项目简单方便易部署的自动更新方案

    一.项目运行环境 项目采用的是.NET5开发的Web系统,独立部署在省内异地多台CentOS服务器上,它们运行在甲方专网环境中(不接触互联网),甲方进行业务运作时(一段时间内)会要求异地服务器开机上线 ...

  6. c# 怎样能写个sql的解析器

    c# 怎样能写个sql的解析器 本示例主要是讲明sql解析的原理,真实的源代码下查看 sql解析器源代码 详细示例DEMO 请查看demo代码 前言 阅读本文需要有一定正则表达式基础 正则表达式基础教 ...

  7. window下Redis快速启动,以及闪退问题解决

    我下载的是免安装版的window版redis,解压后如下: 第一步:在解压的redis文件夹下新建一个redis-start.bat(window启动一般都是xx.bat) 第二步:打开redis.w ...

  8. 如何将 DevSecOps 引入企业?

    前 言 现如今,大部分企业已经在内部实现了 DevOps 实践.DevOps 为团队提供了交付可靠软件和快速更新的方法论.这种方法让团队更专注于质量而不是将时间浪费在运维上.然而,结果是,安全实践往往 ...

  9. JDBC: ThreadLocal 类

    1.ThreadLocal ThreadLocal用于保存某个线程共享变量.在Java中,每个线程对象都有一个ThreadLocal<ThreadLocal,Object>,其中key就是 ...

  10. StringBuilder的构造方法和append方法

    Java中StringBuilder的构造方法 StringBuilder构造方法: public StringBuilder(): 创建一个空白可变的字符串对象,不含有任何内容 public Str ...