CentOS 安装Docker 并部署配置MySql

本文详细介绍了如何在Docker环境下安装和配置MySQL数据库,包括Docker的安装、MySQL的安装与启动、配置镜像拉取地址、设置中文编码等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先安装Docker

卸载之前Docker

如果本地之前安装过Docker,需要先卸载,如果没有安装过,可以跳过这一步: 

 1 $ sudu yum remove docker \
 2 docker-client \
 3 docker-client-latest \
 4 docker-common \
 5 docker-latest \
 6 docker-latest-logrotate \
 7 docker-logrotate \
 8 docker-selinux \
 9 docker-engine-selinux \
10 docker-engine
使用Repository安装
  • 安装之前需要安装 yum-utils提供的yum-config-manager

    1 $ sudo yum install -y yum-utils \
    2 device-mapper-persistent-data \
    3 lvm2
  • 安装yum-config-manager

    1 $ sudo yum-config-manager \
    2 --add-repo \
    3 https://download.docker.com/linux/centos/docker-ce.repo
安装Docker CE
  • 安装最新版  $ yum install docker-ce 

  • 安装指定版本

    1 $ yum list docker-ce --showduplicates | sort -r
    2 docker-ce.x86_64 18.09.0.ce-1.el7.centos docker-ce-stable
    3 -- 然后选择列表中指定版本
    4 $ sudo yum install docker-ce-<VERSION STRING>

如无特殊要求安装最新版即可

配置DockerHub 镜像拉取地址
 
1 sudo mkdir -p /etc/docker
2 sudo tee /etc/docker/daemon.json <<-'EOF'
3 {
4 "registry-mirrors": ["<your accelerate address>"]
5 }
6 EOF
7 sudo systemctl daemon-reload
8 sudo systemctl restart docker

注意:文中的加速器地址<your accelerate address>,请到容器镜像服务控制台查看。

安装MySQL
  • 启动Docker (上一步配置阿里云镜像地址后已经重启,不需要再启动)

    CentOS 7 Docker 启动命令  sudo systemctl restart docker 

    并检查是否使用了镜像:  $ ps -ef|grep docker  如果后面显示registry-mirros则成功

  • 安装MySQL(最新版本)

    查看本地镜像: $ sudo docker images  本地没有镜像,则  $ sudo docker search mysql  选择STARS最多的  $ sudo docker pull mysql 

  • 安装MySQL(指定版本)

     $ sudo docker pull mysql:5.7 

  • 启动MySQL

     $ sudo docker run -p 12345:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 

    参数讲解:

    • -p是将docker中mysql端口号3306映射成为12345端口,也可以选择不映射,使用默认的3306

    • --name mysql: 运行服务的取名

    • -v是将主机目录下的文件挂载到容器中路径下(/scy是我本人用户)

    • -e MYSQL_ROOT_PASSWORD:初始化root用户密码

    • -d mysql:5.7 : 后台运行mysql5.7

  • 至此,安装运行就结束了。

配置MySQL中文编码

进入容器

 docker exec -it mysql /bin/bash 

mysql指定的–name

进入mysql

 root@e34aba02c0c3:/# mysql -u root -p 

查看数据库字符集

 1 mysql> SHOW VARIABLES LIKE 'characterset%'; --默认是瑞典latin1
 2 mysql> SHOW VARIABLES LIKE 'collation_%';
 3 +----------------------+--------------------+
 4 | Variable_name | Value |
 5 +----------------------+--------------------+
 6 | collation_connection | latin1_swedish_ci |
 7 | collation_database | utf8mb4_0900_ai_ci |
 8 | collation_server | utf8mb4_0900_ai_ci |
 9 +----------------------+--------------------+
10 3 rows in set (0.00 sec)

connection 就是我们通过客户端连接的时候指定的编码。 外部访问数据乱码的问题就出在这个connection连接层上

修改为utf-8

 SET NAMES 'utf8'; 

修改配置文件

mysql 服务器配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf

修改过程中需要安装vi 或者 vim,然而docker镜像内镜像源没有速度,所以更新速度慢

可以通过 docker cp d606:/etc/mysql/mysql.conf.d/mysqld.cnf /root/mysql/mysqld.cnf  命令将文件拷贝出来修改后同样拷贝回去的方式修改

[mysqld] 标签下添加 character_set_server = utf8

[client] 标签下添加 default-character-set=utf8

[mysql] 标签下添加 default-character-set=utf8

上面的配置需要紧跟标签,否则无法启动mysql

配置docker开机自启  systemctl enable docker.service 

配置mysql 自动启动  docker update --restart=always d606 

至此 通过docker部署并配置MySQL完成

 

转载于:https://www.cnblogs.com/tanq/p/11235356.html

好的,以下是CentOS安装Docker部署MySQL的步骤: 1. 安装DockerDocker Compose 在终端中输入以下命令: ``` sudo yum update sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum update sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker ``` 然后安装Docker Compose: ``` sudo yum install -y epel-release sudo yum install -y python-pip sudo pip install docker-compose ``` 2. 创建Docker Compose文件 在任意目录创建一个名为docker-compose.yml的文件,然后将以下代码复制进去: ``` version: '3' services: mysql: image: mysql:5.7 restart: always environment: MYSQL_ROOT_PASSWORD: your_password MYSQL_DATABASE: your_database_name MYSQL_USER: your_username MYSQL_PASSWORD: your_password ports: - "3306:3306" volumes: - ./mysql:/var/lib/mysql ``` 请注意将your_password、your_database_name和your_username替换为您自己的密码、数据库名称和用户名。 3. 启动MySQL容器 在终端中进入docker-compose.yml文件所在的目录,然后运行以下命令: ``` sudo docker-compose up -d ``` 这将启动MySQL容器将其设置为在后台运行。 4. 连接MySQL 现在您可以使用MySQL客户端连接到MySQL容器。在终端中输入以下命令: ``` mysql -h 127.0.0.1 -u your_username -p ``` 输入您的密码,然后就可以连接到MySQL了。 以上就是CentOS安装Docker部署MySQL的步骤,希望对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值