#!/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\n'
DOCKER_FILE_CONTENT=$DOCKER_FILE_CONTENT'ENV LC_ALL C.UTF-8\n'