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 即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章