当前位置:   article > 正文

Vagrant CentOS7 安装 Docker 及使用 Docker 安装 MySQL_vagrant 安装dockr

vagrant 安装dockr

1、安装 Docker

        1.1、删除旧版本

  1. sudo 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-engine

        1.2、安装必要的依赖包

sudo yum install -y yum-utils

        1.3、配置源地址,即告诉系统去哪里下载 Docker

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

                如果访问Docker的官方下载地址比较慢,可以更换成其它地址,例如阿里云的

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

        1.4、安装Docker引擎、客户端、容器等

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

        1.5、启动Docker

sudo systemctl start docker

        1.6、检查 Docker 版本查看是否安装启动成功

docker -v

        1.7、设置 Docker 开机启动

sudo systemctl enable docker

        1.8、配置镜像加速

                1.8.1、创建或修改 vi /etc/docker/daemon.json 文件

                1.8.2、修改为如下形式

  1. {
  2. "registry-mirrors": [
  3. "https://82m9ar63.mirror.aliyuncs.com",
  4. "https://mirror.baidubce.com",
  5. "https://docker.mirrors.sjtug.sjtu.edu.cn",
  6. "https://docker.nju.edu.cn"
  7. ]}

                 1.8.3、加载重启 Docker

  1. sudo systemctl daemon-reload
  2. systemctl restart docker

2、安装 MySQL

        2.1、下载镜像文件

docker pull mysql:5.7

        2.2、在主机上创建三个文件夹,分别是挂载日志文件的文件夹 /mydata/mysql/log,挂载数据文件的文件夹 /mydata/mysql/data,挂载配置文件的文件夹 /mydata/mysql/conf

  1. sudo mkdir -p /mydata/mysql/log
  2. sudo mkdir -p /mydata/mysql/data
  3. sudo mkdir -p /mydata/mysql/conf

        2.3、在文件夹 /mydata/mysql/conf 下创建配置文件 my.cnf,内容参考

  1. [mysqld]
  2. # 基础设置
  3. basedir=/var/lib/mysql
  4. datadir=/var/lib/mysql/data
  5. socket=/var/lib/mysql/mysql.sock
  6. user=mysql
  7. port=3306
  8. # 字符集和排序规则
  9. character-set-server=utf8mb4
  10. collation-server=utf8mb4_unicode_ci
  11. # 日志
  12. log-error=/var/log/mysql/error.log
  13. general_log_file=/var/log/mysql/general.log
  14. general_log=0
  15. slow_query_log=0
  16. slow_query_log_file=/var/log/mysql/mysql-slow.log
  17. long_query_time=2
  18. log_queries_not_using_indexes=0
  19. # 缓存和性能调优
  20. key_buffer_size=16M
  21. max_allowed_packet=16M
  22. thread_stack=192K
  23. thread_cache_size=8
  24. query_cache_type=0
  25. query_cache_size=0
  26. query_cache_limit=1M
  27. table_open_cache=2000
  28. tmp_table_size=32M
  29. max_heap_table_size=32M
  30. # InnoDB 设置
  31. innodb_buffer_pool_size=128M
  32. innodb_log_file_size=25M
  33. innodb_log_buffer_size=8M
  34. innodb_file_per_table=1
  35. innodb_flush_log_at_trx_commit=1
  36. innodb_flush_method=O_DIRECT
  37. # 网络设置
  38. bind-address=0.0.0.0
  39. skip-networking=0
  40. # 安全设置
  41. # 禁用 root 远程登录(注释掉或设置为 localhost)
  42. # bind-address = 127.0.0.1
  43. # 允许的最大连接数
  44. max_connections=151
  45. # SQL 模式
  46. sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
  47. # 其他的 MySQL 特定设置...
  48. # [mysqld_safe]
  49. # log-error=/var/log/mysqld.log
  50. # pid-file=/var/run/mysqld/mysqld.pid
  51. # [client]
  52. # socket=/var/lib/mysql/mysql.sock
  53. # default-character-set=utf8mb4
  54. # [mysql]
  55. # default-character-set=utf8mb4
  56. # 请注意:上面的设置只是一个示例,并可能需要根据你的具体环境和需求进行调整。
  57. # 在进行任何更改之前,请确保备份你的 my.cnf 文件,并了解每个设置的作用。

        2.4、创建实例并启动

  1. docker run -p 3306:3306 --name mysql \
  2. -v /mydata/mysql/log:/var/log/mysql \
  3. -v /mydata/mysql/data:/var/lib/mysql \
  4. -v /mydata/mysql/conf:/etc/mysql/conf.d \
  5. -e MYSQL_ROOT_PASSWORD=你的密码 \
  6. -d mysql:5.7

-p 3306:3306 将容器的3306端口映射到主机的3306端口
-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 用户的密码 

        2.5、设置 MySQL 自启动

docker update --restart=always 容器ID 或容器名称

        2.6、以交互模式运行 MySQL 进行测试

docker exec -it 容器 ID 或者容器名称 /bin/bash

        2.7、连接数据库

mysql -u root -p

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/718090
推荐阅读
相关标签
  

闽ICP备14008679号