在虚拟机里面安装虚拟机,安装docker进行环境的配置的心得以及各种踩坑
首先就是安装了VirtualBox,在里面装了centos的环境,下来就是安装docker,要确定好虚拟机里面的网络环境,只能在有网络环境的情况下,才能进行安装各种的环境
安装docker:
但是要确定内核的版本,需要在3.10以上,可以用uname -r来查看自己环境的内核版本
安装docker的命令:yum install docker (安装的过程中需要用户进行确定,输入y即可)
安装完以后,确定一下安装的版本,docker -v 可以查看,出现版本信息之后,就是安装成功了
安装好docker以后,启动docker的命令:systemctl start docker
如果启动docker不成功的话,用yum update 的命令进行更新,更新完成就可以了
可以设定docker是开机自启:systemctl enable docker
如果想要停止docker的话,命令:systemctl stop docker
在安装完成之后,就可以下载我们想要的东西,例如mysql、tomcat之类的,我们可以通过:docker search mysql 这种命令就可以,想要搜索什么就在search后面接上自己想要查询的内容
但是在这时候,就出现了问题:
Error response from daemon: Get https://index.docker.io/v1/search?q=mysql&n=25: dial tcp: lookup index.docker.io on 192.168.2.1:53: read udp 192.168.2.104:39582->192.168.2.1:53: i/o timeout
这种错误,这种情况就是自己的网络环境不太好,或者是自己的镜像不合适
然后我尝试过用阿里的加速器,然是效果也不是很好,我换成中科大的就好了:
在/ect/docker/daemon.json 这个文件里面加入镜像:
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}
在daemon.json文件里面加入这个镜像就好了
在我们下载的时候可以控制版本:docker pull mysql:x.x(版本号),这个版本号可以在dockerhub进行查看
然后在我们下载完成之后,我们可以用docker ps进行查看这个容器,就会出现
然后我们启动这个容器:
docker run -p 3306:3306 --name mysql02 -e MYSQL_ROOT_PASSWORD=123456 -d mysql
这里面我们可以通过端口映射,可以在本地机进行链接虚拟机里面的docker里面的环境,这里就根据自己的设定就好
(3306:3306)前面的是在本地机要访问的端口号,后面的是在docker里面的端口号,然后我们就可以在本地的机子进行连接,可以用navcat进行连接
在我第一次连接时候,就出现了问题,具体的问题是mysql的版本和navcat的环境不合适,这种情况,我们就可以更换新的mysql或者是在我们的本地机更新navcat,然后就可以了
然后换成新的环境,又出现了问题:2059 - Authentication plugin ‘caching_sha2-password‘。。。。。
这就是配置的问题,这时候,我们配置一下自己的环境就行了:
解决方案:
1.进入mysql容器
docker exec -it mysql2 /bin/bash
2.进入mysql
mysql -uroot -pmima
3.修改密码
ALTER USER ‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘root‘;
然后就可以连接上了
在我们安装tomcat的时候,按照相同的方法进行链接:docker pull tomcat
然后就是我们进行启动:
docker run -d -p 8888:8080 tomcat
这样我们就是更换了访问的端口号,在本地可以直接访问里面的tomcat,在本地的浏览器里面输入虚拟机的ip:端口就可以直接访问到docker里面的tomcat
原文地址:https://www.cnblogs.com/zhaochunhui/p/11359544.html