docker的初体验


早都听说过docker,但是一直却不知道它是什么?今天有时间就研究了一下怎么安装并使用
docker,特此记录一下。

  • 首先呢,我们需要安装自己的一款虚拟机,具体教程可以百度。
  • 第二步,就是下载一款linux系统,这里我推荐使用centos。下载链接
  • 第三步,就是安装centos了,这些都不是最重要的,而且整个过程也很简单,就不一一记录了。
  • 1.安装好了centos之后,使用命令先安装 vim编译器:
    yum -y install vim*
    
    2.因为docker 要求 CentOS 系统的内核版本高于 3.10,所以先通过
    uname -r 
    
    查看内核版本是否满足,如果小于3.10,那么使用以下命令更新内核。
    sudo yum update
    
  1. 运行以下命令

    #安装一些必要的系统工具:
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2
    
    添加软件源信息:
    sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    更新 yum 缓存:
    sudo yum makecache fast
    
    安装 Docker-ce:
    sudo yum -y install docker-ce
    
    运行docker
    sudo systemctl start docker
    

    想运行一个docker 的helloworld容器,但是却找不到。

    sudo docker run hello-world
    

    这时候 进入 /etc/docker 目录,新建一个daemon.json文件(如果该文件存在,那么在后面追加内容即可)

    # 新建文件
    touch daemon.json
    # 编辑文件
    vim /etc/docker
    
    #增加以下内容:
     { "storage-driver":  "devicemapper"}
    
    

    保存退出vim编辑器,然后就可以运行 helloworld 啦~

  • 最后想给docker容器安装一下 mysql,却发现查找不到。。
    解决方案:

    # 安装dig命令
    yum install bind-utils
    
    dig @114.114.114.114 registry-1.docker.io 
    

    运行完可见下图:在这里插入图片描述
    再上面随便选择一个ip,最后呢,再修改hosts文件,

    	cd /etc 
    	vim hosts
    

    添加以下dns映射即可,之后退出vim。在这里插入图片描述

    #重启 docker容器。
    sudo service docker restart
    
    #查找musql
    docker search mysql
    
    #安装msql
    docker pull mysql
    
    # 启动容器
    docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
    
    #进入容器
    docker exec -it mysql bash
    #登录mysql
    mysql -u root -p
    ALTER USER 'root'@'localhost' IDENTIFIED BY '你要设置的密码';
    #添加远程登录用户
    CREATE USER '你的昵称'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
    GRANT ALL PRIVILEGES ON *.* TO '你的昵称'@'%';
    

    接着我们root用户使用Navicat连接容器的mysql,却报错Client does not support authentication protocol requested by server; consider upgrading MySQL
    于是:

    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
    SELECT plugin FROM mysql.user WHERE User = 'root';
    
    

    即可连接成功,最后想退出docker容器,注意不是关闭docker服务 ,
    因为我们刚才进入mysql容器,所以不用的时候可以退出docker命令。
    使用命令 exit 即可

发布了63 篇原创文章 · 获赞 149 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/huijiaaa1/article/details/88582012