日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

docker的简单操作和端口映射

發布時間:2024/7/5 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker的简单操作和端口映射 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

docker的簡單操作和端口映射:https://www.cnblogs.com/lixaingyang/p/11976827.html

docker的簡單操作和端口映射

一:簡介

Docker鏡像

在Docker中容器是基于鏡像啟動的

鏡像是啟動容器的核心

鏡像采用分層設計,最頂層為讀寫層

使用快照COW技術,確保底層不丟失

通過ifconfig(ip? a)來查看docker0是否存在

?

?

docker已經啟動成功

?

二:鏡像的操作命令

?

?

注意:最后一組命令? docker? tag 并不是把名稱或者是標簽改了,而是會新建一個鏡像

?上面是總結的一些常用命令

?

(1)以mysql為例,使用docker search命令

命令:docker search mysql??

?

?

?其中???? NAME是指mysql的各個版本名字? ? ?? DESCRIPTION是指版本說明?? ? ?? STARS是使用率 ? ? ?? OFFICIAL是否為官方

查找其他軟件包也是一樣的操作比如:tomcat

命令:docker search? tomcat?????????????? #也是同樣的

?

?

?

(2)然后使用pull命令下載一個鏡像

命令:docker? pull? tomcat??????? #下載tomcat鏡像

圖中看見pull complete 就是下載成功

我們執行docker images命令來看一下

命令:docker images

?

?

標題中:REPOSITORY是指鏡像倉庫???? TAG是指版本(latest:最新的) ? IMAGE ID是指鏡像ID號?? CREATED是指創建的時間 ? ?SIZE是指內存大小

?

三:容器的操作命令

?

?注意:還有一組命令? itd?? it??

itd:是放在后臺運行

it:是直接使用,一旦退出,容器自動關閉

前面說過容器是基于鏡像啟動的,鏡像是啟動容器的核心

現在docker里并沒有容器可以使用ps命令查看容器列表

命令:docker? ps

?

?

運行容器的格式

使用格式:docker run --name container-name:tag -d image-name

1.--name:自定義容器名,不指定時,docker 會自動生成一個名稱

2.-d:表示后臺運行容器

3.image-name:指定運行的鏡像名稱以及 Tag

?

現在啟動tomcat

命令:docker run --name Tomcat -d tomcat:latest

?

?

現在就是啟動成功,下面一長串字母數字是容器的ID號,然后用ps命令查看一下容器列表

1.CONTAINER ID:容器 di

?

2.IMAGE:鏡像名稱:Tag

3.COMMAND:命令

4.CREATES:容器創建的時刻

5.STATUS:容器當前的狀態 (up 表示運行、Exited 表示停止運行)

6.PORTS:鏡像程序使用的端口號和協議

注意:此時雖然容器已經在運行中,Tomcat 鏡像占用8080端口,但是這個8080端口是 Docker 容器內部的端口,并不是服務器的端口,

所以必須做?端口映射?將服務器的實際端口映射到 Docker 容器中的端口才能訪問。

?

停止容器

使用 docker stop container-name/container-id 命令進行停止容器運行,指定容器名或者容器 id 也可以的

命令:docker stop 83e141bd0985

ps的意思是:查看當前運行的容器

ps -a的意思是:所有容器都要顯示出來,不管有沒有運行的還是沒運行的

ps -q的意思是:只顯示運行的容器

?

?

?

啟動容器

使用?docker start container-name/container-id 命令啟動停止運行的容器,同理可以根據 容器名或者 容器 id 進行啟動

命令:docker start 83e141bd0985

?

?

?

刪除容器

使用?docker rm container-id?命令 刪除容器,刪除容器前,必須先停止容器運行,根據 容器 id 進行刪除

rm 參數是刪除容器,rmi 參數是刪除鏡像

鏡像運行在容器中,docker 中可以運行多個互不干擾的容器,可以將同一個鏡像在多個容器中進行運行

命令:docker rm Tomcat

?

?

?

端口映射

使用:docker run --name container-name:tag -d -p 服務器端口:Docker 端口 image-name

1.--name:自定義容器名,不指定時,docker 會自動生成一個名稱

2.-d:表示后臺運行容器

3.image-name:指定運行的鏡像名稱以及?Tag

4.-p 表示進行服務器與 Docker 容器的端口映射,默認情況下容器中鏡像占用的端口是 Docker 容器中的端口與外界是隔絕的,必須進行端口映射才能訪問

現在先利用iptables開放兩個端口

命令:iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
命令:iptables -A INPUT -p tcp --dport 8090 -j ACCEPT
命令:iptables -L -n????? ? ? ? ?? ? #查看防火墻規則

?

?

然后 運行了 兩個容器,容器名稱分別指定為 "Tomcat1"、"Tomcat"、兩個容器中都是同一個? tomcat:latest鏡像

兩個容器都指定了端口映射,分別是8080、8090 ,都會轉發到 Docker 容器內部

命令:docker run --name Ttomcat1 -d -p 8080:8080 tomcat:lates

?

命令:docker run --name Ttomcat -d -p 8090:8080 tomcat:latest

?

啟動成功之后,ip addr show 查一下服務器 ip 地址(192.168.175.102),然后就能從物理機上訪問了

命令:ip addr show

?

物理機訪問192.168.175.102:8080

?

?

?

?物理機訪問192.168.175.102:8090

?

?

容器日志

使用 docker logs container-name/container-id 命令 可以查看容器日志信息,指定容器名或者容器id就可以了

命令:docker logs Ttomcat????????????? #把容器啟動之后就可以查看日志信息

?

我要這天再遮不住我眼,要這地再埋不了我心。要這天下眾生都明白我意,要那諸佛都煙消云散!

總結

以上是生活随笔為你收集整理的docker的简单操作和端口映射的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。