首页 > 系统相关 >CentOS7安装Docker

CentOS7安装Docker

时间:2022-10-29 16:12:26浏览次数:44  
标签:utf8mb4 ce CentOS7 yum mysql Docker mysqldata 安装 docker

一、配置要求

系统:CentOS7
Linux内核:官方建议3.10以上

注:非root用户使用 sudo 执行

1.查看当前的内核版本

uname -r
[root@192 bin]# uname -r
3.10.0-957.el7.x86_64

2.更新yum包(使用root权限)

yum -y update

yum -y update 升级所有包同时也升级软件和系统内核;
yum -y upgrade 只升级所有包,不升级软件和系统内核;

3.卸载旧版本(如果之前安装的话)

[root@192 bin]# yum remove docker docker-common docker-selinux docker-engine
Loaded plugins: fastestmirror, langpacks
No Match for argument: docker
No Match for argument: docker-common
No Match for argument: docker-selinux
No Match for argument: docker-engine
No Packages marked for removal

二、安装Docker

1.安装软件包

安装需要的软件包,yum-utils提供yum-config-manager功能,另两个是devicemapper驱动依赖

[root@192 bin]# yum install -y yum-utils device-mapper-persistent-data lvm2
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.bfsu.edu.cn
Package yum-utils-1.1.31-54.el7_8.noarch already installed and latest version
Package device-mapper-persistent-data-0.8.5-3.el7_9.2.x86_64 already installed and latest version
Package 7:lvm2-2.02.187-6.el7_9.5.x86_64 already installed and latest version
Nothing to do

2.设置yum源

[root@192 bin]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Loaded plugins: fastestmirror, langpacks
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

3.选择docker版本

yum list docker-ce --showduplicates | sort -r

4.安装docker
选择一个版本进行安装

yum -y install docker-ce-18.03.1.ce

5.启动docker

systemctl start docker
systemctl enable docker --设置开机自启
systemctl status docker --查看是否启动成功

6.查看docker版本

docker -version

7.使用docker命令

docker images --查看docker镜像

三、使用docker安装mysql

1.修改镜像文件拉取地址为ustc

vi /etc/docker/daemon.json
insert 内容如下,按ESC,输入:wq 保存退出
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
systemctl restart docker --重启docker

2.拉取镜像

docker pull mysql:5.7

3.查看本地镜像

docker images

4.运行mysql

docker run -d -p 3306:3306 --name mysql \
-v /mysqldata/mysql/log:/var/log/mysql \
-v /mysqldata/mysql/data:/var/lib/mysql \
-v /mysqldata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root mysql:5.7

上述命令的含义:

  • docker run :在docker中启动一个容器实例
  • -d :该容器在后台运行
  • -p 3306:3306 :主机端口:容器端口
  • --name mysql :容器运行后的名称
  • -v /mysqldata/mysql/log:/var/log/mysql :将容器/var/log/mysql目录下的数据,备份到主机的/mysqldata/mysql/log目录下;
  • -v /mysqldata/mysql/data:/var/lib/mysql :将容器/var/lib/mysql目录下的数据,备份到主机的/mysqldata/mysql/data目录下;
  • -v /mysqldata/mysql/conf:/etc/mysql :将容器/etc/mysql目录下的数据,备份到主机的mysqldata/mysql/conf目录下;
  • -e MYSQL_ROOT_PASSWORD=root :设置当前mysql实例的密码为root;
  • mysql:5.7 :需要运行的容器名称及版本号

通过此处-v命令备份后,就算当前mysql容器实例被删除,那么再次重启mysql容器后,数据将会自动从主机加载到容器当中


5.配置文件

1)切换到上述命令配置的主机/mysqldata/mysql/conf目录下
   cd /mysqldata/mysql/conf
2)创建my.cnf
   touch my.cnf
3) 使用vim命令对my.cnf文件添加如下内容,在docker中安装的mysql默认字符集是latin1,需要改成utf8
   [client]
   default_character_set=utf8
   [mysqld]
   collation_server = utf8_general-ci
   character_set_server = utf8
4) 重启mysql容器实例,让刚才的配置文件生效
   docker restart mysql
5) 查看是否启动成功
   docker ps

自此安装结束

四、补充

如果需要实现在运行容器实例时就执行SQL脚本,可以在上述命令的基础之上添加如下内容

1.创建如下目录

mkdir /mysqldata/mysql/init

2.在目录/mysqldata/mysql/init下创建名为init.sql的初始文件,该文件存放数据库需要初始化的内容
init.sql

##创建一个user用户,密码为123456
CREATE USER 'user'@'%' IDENTIFIED BY '123456';
##给user用户赋予数据库的所有权限
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%';
##刷新用户
flush privileges;
##创建数据库
create database test;
##建表
CREATE TABLE `userinfo`  (
  `uid` int(11) NOT NULL AUTO_INCREMENT COMMENT 'uid',
  `userid` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户id',
  `nickname` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '昵称',
  `usign` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
  `uimg` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '/pic/userdefaultimg.jpg' COMMENT '用户头像',
  PRIMARY KEY (`uid`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

##插入数据

INSERT INTO `userinfo` VALUES (1, '123', '11', '111', '/pic/11.jpg');

3.编写启动命令

docker run -d -p 3306:3306 \
--name mysql \
-v /mysqldata/mysql/log:/var/log/mysql \
-v /mysqldata/mysql/data:/var/lib/mysql \
-v /mysqldata/mysql/conf:/etc/mysql \
-v /mysqldata/mysql/init:/docker-entrypoint-initdb.d/ \
-e MYSQL_ROOT_PASSWORD=root mysql:5.7

释意:
docker中mysql可以在启动时在/docker-entrypoint-initdb.s/目录中运行初始化的sql文件。此处通过volume映射到主机的目录/mysqldata/mysql/init下,运行init.sql文件,以达到初始化效果

标签:utf8mb4,ce,CentOS7,yum,mysql,Docker,mysqldata,安装,docker
From: https://www.cnblogs.com/Jerry-Guo/p/16838737.html

相关文章

  • ubuntu docker 安装指定版本 MongoDB 并配置用户密码
    ubuntudocker安装指定版本MongoDB并配置用户密码​​初​​​​查看安装的镜像​​​​运行容器​​​​检查运行​​​​进入数据库​​​​创建用户和密码​​​​创......
  • 【实战】Hadoop安装01-伪分布式-Pseudo
    Hadoop安装-伪分布式-Pseudo〇、所需资料一、前置环境安装1、包含内容(1)安装虚拟机安装、系统安装(2)配置ip、host、主机名配置关闭防火墙及selinuxSSH免密登录(2)基......
  • Linux 安装 miniconda
    1.安装miniconda1.百度输入miniconda找到miniconda,如下图第一个链接2.找到linux版本的miniconda(此处我要安装Python3.7版本的Linux下的miniconda)3.复制下载......
  • Docker是什么
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容......
  • centos 安装composer
    centos安装composer 1、使用命令下载curl-sShttps://getcomposer.org/installer|php2.下载之后设置环境变量mvcomposer.phar/usr/local/bin/composer......
  • 基于python指定包的安装路径方法(linux)
    通常python安装包都会被默认装在/usr/local/pythonx/lib/site-packages(linux),但是我们有时想自定义包的安装路径,比如自己项目的某个路径,这样在部署的时候就不用再安装了,大......
  • 查看python中安装包的一些信息
    1.piplist  #列出当前环境中的所有安装包2. pipindexversionsxxx  #展示包的所有版本信息3. pipshowxxx  #展示包的当前版本的详细信息 4.pipin......
  • CentOS 7.6 Nginx安装
    目录一键执行安装分步骤安装1.安装依赖项,和必要组件2.下载Nginx3.解压4.编译配置5.创建全局命令一键执行安装一键执行安装nginxyuminstall-ymakecmakegccgcc......
  • 记一次mysql8.0安装过程
    首先从官网下载相对应的zip压缩包 第二步:压缩到指定目录准备好一个安装MySQL程序的目录,这里解压后的目录为:C:\ProgramFiles\mysql-8.0.31,此目录下的文件如下所示......
  • 3.1 处理Excel文件的相关模块介绍及安装 openpyxl模块
    openpyxl模块安装方式在线安装方式:Windows用户:pipinstallopenpyxlMac用户:pip3installopenpyxl测试Windows用户打开命令行输入pythonMac用户打开终端......