手撕JAVA(二十四)docker

工作原理

Docker是一個開源的應用容器引擎。

Docker的理念類似於Windows的鏡像系統:

原生的Windows系統拿到手以後要安裝一系列的東西,如果每個人拿到手都要重新安裝會很麻煩,可以一個人安好一份完整的以後做出鏡像系統,其他人直接拿來就用。

 

Docker支持將安裝好的軟件編譯打包成鏡像,其他服務器直接拿鏡像來運行就可以。

運行的一個鏡像就是一個容器。

核心概念

Docker主機(host):安裝了docker程序的機器。(docker是直接安裝在系統之上的)

Docker客戶端(client):就是一個客戶端程序,連接docker主機,通過命令行或者其他工具來進行操作。

Docker倉庫(registry):用來保存各種打包好的docker鏡像。

Docker鏡像(image):打包好的軟件。

Docker容器(container):鏡像啓動後的實例稱爲一個容器。每一個鏡像運行一次就會產生一個容器。容器是獨立運行的一個或者一組應用。

 

環境搭建

Docker要求Linux的內核版本必須3.10

查看內核版本:uname –r

升級內核版本:yum update

安裝docker:yum install docker

啓動docker:systemctl start docker

停止docker: systemctl stop docker

查看docker版本號:docker –v

開機自啓docker:systemctl enable docker

常用操作

鏡像操作

docker的鏡像都存在  docker hub上面

 

查找鏡像:docker search mysql(mysql是鏡像名)

拉取鏡像:

         docker pull mysql(mysql是鏡像名)  或者 

         docker pull mysql:tag(tag版本號,在hub上可以查找到)

查看當前操作系統中所有鏡像:docker images

刪除鏡像: docker rmi IMAGE ID(可以通過docker images看到)

容器操作

運行鏡像就會產生一個容器

運行容器(首次啓動):docker run –name mytomcat(名字可以自己取) –d tomcat:latest

查看運行中的容器:docker ps

查看所有容器:docker –a

停止運行中的容器:docker stop CONTAINER ID(可以通過docker ps-a命令查看)

啓動容器:docker start CONTAINER ID(可以通過docker ps-a命令查看)

刪除容器:docker rm CONTAINER ID

備註:由於每一次啓動都會產生一個容器,可以用刪除命令來刪除啓動失敗的容器。

端口映射:docker run –name 名字 –d –p 8888:8080 tomcat:latest

                          -d 表示後臺運行 –p表示端口映射  虛擬機端口:容器端口

                          注意:不做端口映射通過8080端口是訪問不到啓動的鏡像應用的,因爲這裏的8080是應用在容器中的端口號,不是應用在虛擬機中的端口號。

啓動mysqldocker run –p 3306:3306 –name mysql01 –e MYSQL_ROOT_PASSWORD=admin

-d mysql

 

處理navcat連接失敗:

https://blog.csdn.net/Alalafan/article/details/81358551

<1> docker  start  mysql        進入MySql

<2> docker  ps  -a       查出自己創建的container(容器)的ID

<3> docker  exec  -it  63c9e29aelef  bash   (每個人創建的container ID都不一樣)

<4> mysql  --user=root  --password

<5>  ALTER  USER  'root'  IDENTIFIED  WITH  mysql_native_password  BY  '1234567';  

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