您好,登錄后才能下訂單哦!
本篇內容介紹了“springboot中Docker的原理和作用是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Docker是一個開源的容器引擎
Docker支持將軟件編譯成一個鏡像,然后鏡像中對各種軟件做好配置,再將鏡像發布出去,其他用戶就可以直接使用這個鏡像。
運行中的鏡像被稱為容器,容器的啟動時非常快的。
docker主機(Host):安裝了docker程序的機器(docker直接安裝在操作系統上的)
docker客戶端(Client):連接docker主機進行操作
docker倉庫(Registry):用來保存各種打包好的軟件鏡像
docker鏡像(Images):軟件打包好的鏡像,放在docker倉庫中
docker容器(Container):鏡像啟動后的實例稱為容器,容器是獨立運行的一個或一組應用
docker的使用步驟:
安裝Docker
去Docker倉庫找到所需軟件的鏡像
使用Docker運行這個鏡像,這個鏡像就會生成一個Docker容器
對容器的啟停,就是對這個軟件的啟停
安裝VMWare、VirtualBox
在虛擬機中新建虛擬機實例(或導入已有的虛擬機鏡像)
啟動虛擬機,并使用root用戶登錄(root/zhangjiahui)
使用客戶端連接linux服務器進行命令操作
設置虛擬機的網絡
橋接網絡 --> 選擇本機的網卡(查看宿主機網絡連接使用的網卡)
設置IP信息,并重啟網絡服務
DEVICE=”ens33” TYPE=”Ethernet” DEFROUTE=”yes” ONBOOT=”yes” HAADDR=”00:0C:29:A3:C5:51”#根據自己虛擬機對應的網卡信息配置 IPADDR=”192.168.116.10” GATEWAY=”192.168.116.2” NM_CONTROLLED=”no” DNS1=”8.8.8.8” NETMASK=”255.255.255.0”
設置網絡為固定IP地址方式(centos7 --> vi /etc/sysconfig/network-scripts/ifcfg-ens33)
重啟網絡服務
centos7的網卡重啟方法 1、centos6的網卡重啟方法:service network restart centos7的網卡重啟方法:systemctl restart network 2、DNS配置文件:cat /etc/resolv.conf 設置主機和IP綁定信息:cat /etc/hosts 設置主機名:cat /etc/hostname 3、可以使用nmtui文本框方式修改IP 4、關閉防火墻并設置開機不啟動 查看防火墻狀態:systemctl status firewalld.service 關閉:systemctl stop firewalld 開啟:systemctl start firewalld 開機自動關閉:systemctl disable firewalld 開機自動啟動:systemctl enable firewalld 查看開機是否啟動:chkconfig --list|grep network(RHLE6) 5、臨時和永久關閉Selinux 臨時關閉: _getenforce Enforcing _setenforce 0 setenforce:SELinux is disabled 永久關閉: _vim /etc/selinux/config
通過ssh連接到linux虛擬機
步驟:
檢查內核版本(必須是3.10以上)
#檢查linux內核版本 uname -r
安裝docker
#docker安裝命令 yum install docker #中間提示輸入y y
啟動docker
#啟動docker systemctl start docker #查看docker版本號 docker -v
設置docker開機啟動
#docker開機啟動設置命令 systemctl enable docker #命令執行結果提示內容 Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
停止docker
#docker停止命令 systemctl stop docker
#檢索 ##https://hub.docker.com #usage: docker search 關鍵字 docker search mysql #拉取 #usage: docker pull 鏡像名[:鏡像tag] #不帶tag,則默認為latest docker pull mysql:5.5 #本地鏡像列表查看 #usage: docker images docker images #刪除已下載的本地鏡像 #usage: docker rmi 鏡像ID ##鏡像ID可通過 docker images 命令查看 docker rmi f991c20cb508
軟件鏡像 --> 運行鏡像 --> 產生容器(即正在運行中的軟件)
#搜索鏡像 docker search tomcat #拉取鏡像 docker pull tomcat #根據鏡像,啟動容器 docker run --name mytomcat -d tomcat:latest # --name 自定義容器名 # -d 后臺運行 #查看在運行中的容器 docker ps #停止運行中的容器 ##id可通過 docker ps 命令查看 docker stop d41fcf7ec705 #容器ID docker stop mytomcat #容器name #查看所有的容器(包括運行中的和已經退出的) docker ps -a #啟動已經存在并退出的容器 ##id可通過 docker ps -a 命令查看 docker start d41fcf7ec705 #容器ID docker start mytomcat #容器name #刪除已存在的容器 docker rm d41fcf7ec705 #此時容器必須已經停止 docker rm -f d41fcf7ec705 #此時容器可以在運行狀態 #重命名容器 docker rename d41fcf7ec705 myTomcat1 docker rename mytomcat myTomcat1 #啟動一個做了端口映射的tomcat容器 docker run -d -p 8888:8080 tomcat:latest # -p HOST_PORT:CONTAINER_PORT 將主機端口映射到容器內部的一個端口 #主機的防火墻已經關閉,查看狀態 service firewalld status #查看容器運行日志 docker logs d41fcf7ec705 docker logs mytomcat #更多常用命令 1. https://docs.docker.com/ee/ 2. 參考docker hub上每個鏡像的使用手冊
安裝&啟動命令:
docker run --name mysql03 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=zhangjiahui -d mysql:latest
遠程客戶端連接問題修復:
連接Docker啟動的mysql出現:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded C:\mysqldata>mysql -h 127.0.0.1 -P 13306 -uroot -p Enter password: **** ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ?ò2?μ????¨μ??£?é?£ 解決方案: 1.進入mysql容器 docker exec -it mysql2 /bin/bash 2.進入mysql mysql -uroot -pzhangjiahui 3.修改密碼默認加密方式 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root'; 4. 修改root密碼 alter user 'root'@'%' identified by 'zhangjiahui'; flush privileges;
幾個高級的操作
1. docker run --name some-mysql -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag -v : 把主機的/my/custom文件夾掛載到/etc/mysql/conf.d文件夾,修改配置只需要修改/my/custom下的配置文件即可 2. docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
“springboot中Docker的原理和作用是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。