虚拟机安装:
首先需要下载 iso 镜像, 这里用的是 centOS, 下载源用的 163的,国内镜像会快很多: http://mirrors.163.com/centos...
因为只作为服务器使用, 所以下载最小包就好了
下载完成以后这里使用的是 vmware 进行虚拟机安装, 这一步一直确认就好了,
安装完成后需要配置虚拟机静态ip, 防止以后每次重新连接的时候都需要修改ip,较为麻烦
静态ip设置:
设置虚拟机网关:
物理机网络:
编辑虚拟机网络:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
ipaddr 即为你所指定的ip
重启防火墙
service network restart
这时已经可以使用连接工具连接上虚拟机了
docker 安装:
首先修改linux下载源 (各个发行版需要修改的地址可能不同):
cd /etc/yum.repos.d/
-- 复制一份源文件
mv CentOS-Base.repo CentOS-Base.repo_bak
curl http://mirrors.163.com/.help/CentOS7-Base-163.repo -o CentOS-Base.repo
yum clean all
yum makecache
yum repolist
这个时候可能会提示没有 curl
yum -y install curl
下载docker:
curl -sSL https://get.daocloud.io/docker | sh
查看当前版本
docker -v
修改docker下载源:
vi /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
systemctl restart docker.service
mysql 下载:
docker search mysql
可以直接下载最新版本
docker pull mysql
也可以指定版本:
docker pull mysql:8.0.16
这一步时间可能略长
增加mysql配置文件
mkdir -p /opt/docker-mysql/conf.d
cd /opt/docker-mysql/conf.d/
vim config-file.cnf
[mysqld]
# 表名不区分大小写
lower_case_table_names=1
#server-id=1
datadir=/var/lib/mysql
#socket=/var/lib/mysql/mysqlx.sock
#symbolic-links=0
# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
保存退出
增加数据文件夹
mkdir -p /opt/docker-mysql/var/lib/mysql
创建mysql镜像:
docker run --name mysql8 --restart=always -p 3306:3306 -v /opt/docker-mysql/conf.d:/etc/mysql/conf.d -v /opt/docker-mysql/var/lib/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0.16
查看日志:
docker logs -f mysql8
这一步可能发现会报错: Permission denied 原因是CentOS7中的安全模块selinux把权限禁掉了
这里有几种方式可以解决: 目前采用最简单的一种,如果需要其他解决方式可自行百度
setenforce 0
重新启动:
docker restart mysql8
进入容器:
docker exec -it mysql8 bash
mysql -uroot -proot
需要注意的是mysql8 之后修改密码的方式改成了如下:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
设置root用户允许远程连接
select host,user from user;
update user set host='%' where user='root';
刷新缓存
flush privileges;
物理机连接成功: