#!/bin/sh # 安装docker # 在docker中安装mysql # 解决了docker容器中无法输入中文的问题 ##########################安装docker # 更新源 yum -y update # 卸载旧版本(如果安装过旧版本的话) sudo yum remove docker docker-common docker-selinux docker-engine # 安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 # 设置yum源 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo echo '设置yum源完成' # 可以查看所有仓库中所有docker版本,并选择特定版本安装 yum list docker-ce --showduplicates | sort -r sudo yum install docker-ce #由于repo中默认只开启stable仓库,故这里安装的是最新稳定版17.12.0 # 启动并加入开机启动 sudo systemctl start docker sudo systemctl enable docker # 验证安装是否成功(有client和service两部分表示docker安装启动都成功了) docker version # https://www.cnblogs.com/yufeng218/p/8370670.html #################### 安装mysql # docker 中下载 mysql docker image pull library/hello-world docker pull mysql #启动 docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql -d mysql docker run -p 3306:3306 -v $PWD/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=mysql --name mysql -d 2dd01afbe8df grant all privileges on *.* to root@"%" identified by "123666" with grant option; # 查找镜像 docker search mysql # 开启一个镜像 docker container start 容器id # 停止一个容器 docker container stop 容器id # 删除一个容器 docker container rm 容器id # 来启一个容器 docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql -d 容器id # 查看支持的字符编码 locale # 查看当前容器支持的字符集 localw -a # 中文无法输入的方式进入到容器中 docker exec -it mysql /bin/bash # 进入交互容器的界面 docker exec -it mysql env LANG=C.UTF-8 /bin/bash # 进入mysql mysql -uroot -pmysql # 删除之前的用户 drop user 'python'@'%'; # 8之前的sql镜像(远程登录授权) grant all privileges on *.* to root@"%" identified by "123666" with grant option; grant all privileges on *.* to "python"@"%" identified by "123456" # 8之后的sql镜像 CREATE USER 'python'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql'; # 授权 grant all privileges on *.* to 'python'@'%'; # 刷新权限 flush privileges; DOCKER_FILE_CONTENT=$DOCKER_FILE_CONTENT'ENV LANG C.UTF-8 ' DOCKER_FILE_CONTENT=$DOCKER_FILE_CONTENT'ENV LC_ALL C.UTF-8 '