<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                輸入 docker 可以查看Docker的命令用法,輸入 docker COMMAND --help 查看指定命令的詳細用法 ## 1、鏡像操作 | 操作 | 命令 | 說明 | | --- | --- | --- | | 查找 | docker search 關鍵字 | 可以在Docker Hub網站查看鏡像的詳細信息,如鏡像的tag標簽 | | 抽取 | docker pull 鏡像名:tag | :tag表示軟件的版本,如果不指定默認是latest | | 列表 | docker images | 查看所有本地鏡像 | | 獲取元信息 | docker inspect 鏡像id | 獲取鏡像的元信息,詳細信息 | | 刪除 | docker rmi -f 鏡像id或鏡像名:tag | 刪除指定的本地鏡像,-f表示強制刪除 | ## 2、容器操作 | 操作 | 命令 | 說明 | | --- | --- | --- | | 運行 | docker run --name 容器名 -i -t -p 主機端口:容器端口 -d -v 主機目錄:容器目錄:ro 鏡 像id或鏡像名稱:tag | --name 指定容器名,名稱自定義,如果不指定會自動命名; -i 以交互模式運 行,即以交互模式運行容器;-t 分配一個偽終端,即命令行,通常組合使用-it ;-p 指定端口映射,將主機端口映射到容器內的端口;-d 表示后臺運行,即守 護式運行容器;-v 指定掛載主機目錄到容器目錄(主機目錄中的內容發生變化會自動同步到容器目錄),默認在容器中為rw讀寫模式,ro表示 只讀 | | 列表 | docker ps -a -q | 查看正在運行的容器,-a表示顯示所有容器,-q表示只顯示容器id | | 啟動 | docker start 容器id或容器名稱 | 啟動容器 | | 停止 | docker stop 容器id或容器名稱 | 停止正在運行的容器 | | 刪除 | docker rm --f 容器id或容器名稱 | 刪除容器,--f表示強制刪除 | | 日志 | docker logs 容器id或容器名稱 | 獲取容器的日志 | | 在容器中執行 | docker exec --it 容器id或容器名稱 /bin/bash | 進入正在運行的容器中并開啟一個交互模式的終端,可以在容器中執行操作 | | 拷貝文件 | docker cp 主機中的文件路徑容器id或容器名稱:容器路徑;docker cp 容器id或容器名稱:容器中的文件路徑主機路徑 | 將文件中的文件拷貝到容器中;將容器中的文件拷貝到主機中 | | 獲取元信息 | docker inspect 容器id | 獲取容器的元信息 | #### 以CentOS為例: ``` docker search centos docker pull centos docker run ----name mycentos --it centos:latest # 根據centos:latest鏡像運行容器,并以交互模式 進入容器中 # 實際上是在Docker容器中運行一個精簡版的CentOS系統 exit # 退出并關閉容器 docker ps --a docker start mycentos docker stop mycentos docker rm mycentos docker rm --f $(docker ps --aq) # 強制刪除所有容器 ``` 注:Docker容器內實際上是運行著一個精簡版的Linux系統 #### 以tomcat為例: ``` # 示例1:基本用法 docker search tomcat docker pull tomcat docker run ----name mytomcat --p 8888:8080 --d tomcat # 測試:http://宿主機地址:8888 docker stop mytomcat docker ps --a docker start mytomcat # 示例2:拷貝文件和掛載目錄 docker run --p 8080:8080 --d tomcat docker exec --it 70cba924861c /bin/bash cd /usr/local/tomcat/webapps/ROOT exit echo welcome to tomcat > index.jsp docker cp index.jsp 70cba924861c:/usr/local/tomcat/webapps/ROOT # 將宿主機中的文件拷貝到容器中指定的目錄中 # 部署web項目,將war文件放到容器中 docker cp spring--web.war 70cba924861c:/usr/local/tomcat/webapps # 問題:如果項目更改了需要重新拷貝war文件,太麻煩,可以直接掛載目錄(也稱為數據卷Volume) docker run \ - -p 8080:8080 \ --v /my/tomcat/webapps/spring-web.war:/usr/local/tomcat/webapps/spring-web.war \ - -v /my/tomcat/data:/usr/local/tomcat/dataVolume:ro \ - -d tomcat # 可以掛載指定的文件也可以掛載目錄 # 示例3:啟動多個容器,一個鏡像可以啟動多個容器,每個容器互相隔離、獨立 ,所以容器的端口是可以重復的 docker run --p 8081:8080 --d tomcat docker run --p 8082:8080 --d tomcat docker run --p 8083:8080 --d tomcat ``` ## 3、 鏡像的分層結構 tomcat鏡像為什么這么大? 鏡像是一種輕量級、可執行的獨立軟件包,用來打包軟件運行環境和基于運行環境的軟件,包含運行某個軟件所需要的所有內容。 基于UnionFS聯合文件系統,采用分層結構,一層一層的堆疊起來,像一個同心圓,但從外面來說,只能看到最外層的文件系統(鏡像層) ![](https://img.kancloud.cn/ea/02/ea021d300bf089dcc3984ca5c57d907d_342x186.png) 分層結構:共享資源、便于復用(許多鏡像都是從相同的Base基礎鏡像構建而來的,基礎鏡像只需要保存一份) 鏡像都是只讀的,而由鏡像生成的容器是可修改的 ## 4、創建鏡像 有時從Docker鏡像倉庫中下載的鏡像不能滿足我們的要求,此時可以基于這個鏡像(基礎鏡像)封裝一個自己的鏡像。 兩種方式: * 更新鏡像:使用docker commit命令 * 構建鏡像:使用docker build命令,需要創建Dockerfile文件 ### 4.1、更新鏡像 先使用基礎鏡像創建一個容器,然后對容器進行修改,最后使用commit命令提交為一個新的鏡像 步驟: a、根據基礎鏡像,創建容器 docker run ----name mytomcat --p 8080:8080 --d tomcat b、修改容器 ``` docker exec --it bcd08edac78d /bin/bash cd webapps/ROOT rm --f index.jsp echo welcome to tomcat > index.html exit ``` c、提交為新鏡像,語法: docker commit -m="描述消息" -a="作者" 容器id或容器名 鏡像名:tag ``` docker commit --m="修改默認索引頁" --a="AAA" bcd08edac78d itany/tomcat:v1 ``` d、使用新鏡像運行容器 ``` docker run ----name tomcat_v1 --p:8080:8080 --d itany/tomcat:v1 ``` ### 4.2、 構建鏡像 根據Dockerfile文件來自動構建鏡像 Dockerfile是一個包含創建鏡像所有命令的文本文件,使用docker build命令可以根據Dockerfile的內容創建鏡像 步驟: a、創建一個Dockerfile文件 vi Dockerfile ``` # 指定基礎鏡像 FROM tomcat # 指定作者 MAINTAINER yuanke@163.com # 執行命令 RUN rm --f /usr/local/tomcat/webapps/ROOT/index.jsp RUN echo "welcome to tomcat!" > /usr/local/tomcat/webapps/ROOT/index.html ``` b、構建新鏡像,語法: docker build -f Dockerfile文件的路徑 -t 鏡像名:tag 命令執行的上下文 ``` docker build --f Dockerfile --t itany/tomcat:v2 . ``` c、使用新鏡像運行容器 ``` docker run --p 9999:8080 --d itany/tomcat:v ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看