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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

docker mysql映射端口映射_docker的简单操作和端口映射

發(fā)布時間:2025/3/19 数据库 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker mysql映射端口映射_docker的简单操作和端口映射 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一:簡介

Docker鏡像

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

鏡像是啟動容器的核心

鏡像采用分層設(shè)計,最頂層為讀寫層

使用快照COW技術(shù),確保底層不丟失

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

docker已經(jīng)啟動成功

二:鏡像的操作命令

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

上面是總結(jié)的一些常用命令

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

命令:docker search mysql

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

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

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

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

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

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

我們執(zhí)行docker images命令來看一下

命令:docker images

標(biāo)題中:REPOSITORY是指鏡像倉庫???? TAG是指版本(latest:最新的) ? IMAGE ID是指鏡像ID號?? CREATED是指創(chuàng)建的時間 ? ?SIZE是指內(nèi)存大小

三:容器的操作命令

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

itd:是放在后臺運(yùn)行

it:是直接使用,一旦退出,容器自動關(guān)閉

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

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

命令:docker? ps

運(yùn)行容器的格式

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

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

2.-d:表示后臺運(yùn)行容器

3.image-name:指定運(yùn)行的鏡像名稱以及 Tag

現(xiàn)在啟動tomcat

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

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

1.CONTAINER ID:容器 di

2.IMAGE:鏡像名稱:Tag

3.COMMAND:命令

4.CREATES:容器創(chuàng)建的時刻

5.STATUS:容器當(dāng)前的狀態(tài) (up 表示運(yùn)行、Exited 表示停止運(yùn)行)

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

注意:此時雖然容器已經(jīng)在運(yùn)行中,Tomcat 鏡像占用8080端口,但是這個8080端口是 Docker 容器內(nèi)部的端口,并不是服務(wù)器的端口,

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

停止容器

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

命令:docker stop 83e141bd0985

ps的意思是:查看當(dāng)前運(yùn)行的容器

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

ps -q的意思是:只顯示運(yùn)行的容器

啟動容器

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

命令:docker start 83e141bd0985

刪除容器

使用?docker rm container-id?命令 刪除容器,刪除容器前,必須先停止容器運(yùn)行,根據(jù) 容器 id 進(jìn)行刪除

rm 參數(shù)是刪除容器,rmi 參數(shù)是刪除鏡像

鏡像運(yùn)行在容器中,docker 中可以運(yùn)行多個互不干擾的容器,可以將同一個鏡像在多個容器中進(jìn)行運(yùn)行

命令:docker rm Tomcat

端口映射

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

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

2.-d:表示后臺運(yùn)行容器

3.image-name:指定運(yùn)行的鏡像名稱以及?Tag

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

現(xiàn)在先利用iptables開放兩個端口

命令:iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

命令:iptables -A INPUT -p tcp --dport 8090 -j ACCEPT

命令:iptables -L -n????? ? ? ? ?? ? #查看防火墻規(guī)則

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

兩個容器都指定了端口映射,分別是8080、8090 ,都會轉(zhuǎn)發(fā)到 Docker 容器內(nèi)部

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

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

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

命令:ip addr show

物理機(jī)訪問192.168.175.102:8080

物理機(jī)訪問192.168.175.102:8090

容器日志

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

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

補(bǔ)充部分:如果容器啟動失敗先查看日志

命令格式:docker log + 容器ID /bin/bash

總結(jié)

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

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。