最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker中run和exec有什么區(qū)別示例詳解

 更新時間:2025年03月17日 10:42:20   作者:蘋天緯地  
這篇文章主要介紹了docker中run和exec有什么區(qū)別的相關(guān)資料,docker?run`用于創(chuàng)建并啟動新容器,而docker?exec用于在已運(yùn)行容器中執(zhí)行命令,前者適用于啟動新服務(wù),后者適用于調(diào)試和管理運(yùn)行中的容器,需要的朋友可以參考下

docker run 和 docker exec 都是 Docker 中用來與容器交互的命令,但它們的用途和行為有很大的不同。下面我會詳細(xì)解釋它們之間的區(qū)別。

1. docker run

docker run 命令用于 創(chuàng)建并啟動一個新的容器,并且可以運(yùn)行一個命令或指定一個程序。每次使用 docker run 時,都會從鏡像創(chuàng)建一個新的容器實(shí)例。

用法:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

特點(diǎn):

  • 創(chuàng)建并啟動容器docker run 會啟動一個新的容器實(shí)例,基于指定的鏡像。
  • 運(yùn)行一個命令:你可以指定一個命令來在容器中運(yùn)行(如果沒有指定命令,則會運(yùn)行鏡像的默認(rèn)命令,通常是鏡像中定義的 ENTRYPOINT 或 CMD)。
  • 可以傳遞參數(shù):可以為容器指定參數(shù)(如掛載卷、設(shè)置環(huán)境變量、端口映射等)。
  • 容器生命周期:運(yùn)行完指定的命令后,容器會退出,除非你通過某些方式讓容器在后臺運(yùn)行(如使用 -d 參數(shù))。

示例:

  • 啟動一個 Ubuntu 容器,并在容器內(nèi)運(yùn)行 Bash shell:

    docker run -it ubuntu bash
    
  • 啟動一個容器并運(yùn)行一個后臺應(yīng)用(如 Nginx):

    docker run -d -p 80:80 nginx
    
  • 啟動一個容器并掛載一個卷:

    docker run -v /host/path:/container/path ubuntu
    

2. docker exec

docker exec 命令用于 在正在運(yùn)行的容器中執(zhí)行一個命令。這不會創(chuàng)建新的容器,而是作用于已啟動的容器。

用法:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

特點(diǎn):

  • 在現(xiàn)有容器中執(zhí)行命令docker exec 允許你在一個已經(jīng)在運(yùn)行的容器中執(zhí)行新的命令。
  • 不會重新創(chuàng)建容器:你可以多次在同一個容器內(nèi)執(zhí)行不同的命令。
  • 交互式執(zhí)行:通常使用 -it 選項(xiàng)來執(zhí)行交互式命令(如進(jìn)入容器的 shell)。
  • 容器保持運(yùn)行:使用 docker exec 不會影響容器的運(yùn)行狀態(tài),容器會繼續(xù)運(yùn)行并執(zhí)行其原本的任務(wù)。

示例:

  • 進(jìn)入一個運(yùn)行中的容器,啟動一個交互式 Bash shell:

    docker exec -it <container_id_or_name> bash
    
  • 在運(yùn)行中的容器內(nèi)執(zhí)行一個簡單的命令:

    docker exec <container_id_or_name> ls /usr
    
  • 在容器內(nèi)運(yùn)行一個后臺進(jìn)程:

    docker exec -d <container_id_or_name> some_command
    

3. 主要區(qū)別

特性docker rundocker exec
容器生命周期每次運(yùn)行時都會創(chuàng)建一個新的容器在已有的容器中執(zhí)行命令,不會創(chuàng)建新容器
用途啟動一個新的容器并運(yùn)行命令/程序在已運(yùn)行的容器內(nèi)執(zhí)行命令
交互性可以使用 -it 選項(xiàng)進(jìn)行交互式運(yùn)行容器使用 -it 選項(xiàng)可以交互式進(jìn)入容器,但容器已在運(yùn)行
容器狀態(tài)容器在命令執(zhí)行完成后會退出(除非使用后臺模式)容器會保持運(yùn)行,命令執(zhí)行完后容器繼續(xù)運(yùn)行
創(chuàng)建容器會創(chuàng)建一個新的容器并啟動不會創(chuàng)建新容器,只對現(xiàn)有容器操作
適用場景適用于啟動應(yīng)用、服務(wù)、進(jìn)程或臨時任務(wù)適用于調(diào)試、管理或監(jiān)控正在運(yùn)行的容器

4. 何時使用 docker run 和 docker exec

  • 使用 docker run

    • 當(dāng)你需要從一個鏡像啟動一個新的容器,并運(yùn)行某個命令時。
    • 如果容器沒有運(yùn)行,你需要使用 docker run 來創(chuàng)建并啟動容器。
    • 啟動一個新的服務(wù)或應(yīng)用。
  • 使用 docker exec

    • 當(dāng)容器已經(jīng)在運(yùn)行時,你需要進(jìn)入容器進(jìn)行調(diào)試、查看日志、執(zhí)行一些命令或修改容器內(nèi)的配置。
    • 在一個已經(jīng)啟動的容器中進(jìn)行實(shí)時操作,而不影響容器的生命周期。

附:docker exec執(zhí)行多個命令詳解

docker exec命令能夠在運(yùn)行著的容器中執(zhí)行命令。docker exec命令的使用格式:

docker exec [OPTIONS] container_name COMMAND [ARG...]

OPTIONS說明:

  • -d,以后臺方式執(zhí)行命令;
  • -e,設(shè)置環(huán)境變量
  • -i,交互模式
  • -t,設(shè)置TTY
  • -u,用戶名或UID,例如myuser:myusergroup

通常COMMAND只能是一條語句,為了支持多個命令的執(zhí)行,需要將多個命令連接起來交給Shell,docker exec命令的使用示例如下:

sudo docker exec myContainer bash -c "cd /home/myuser/myproject && git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC} && git checkout FETCH_HEAD";
sudo docker exec myContainer bash -c "cd /home/myuser/myproject;git fetch ssh://gerrit_server:29418/myparent/myproject ${GERRIT_REFSPEC};git checkout FETCH_HEAD";

注意:對于已經(jīng)暫?;蛲V沽说娜萜?,無法執(zhí)行docker exec命令,如下將拋出異常:

docker pause myContainer 
docker exec myContainer ...

總結(jié)

  • docker run 用來創(chuàng)建和啟動一個新的容器,并執(zhí)行指定的命令。
  • docker exec 用來在已經(jīng)運(yùn)行的容器內(nèi)執(zhí)行命令,可以多次對一個容器執(zhí)行操作。

到此這篇關(guān)于docker中run和exec有什么區(qū)別的文章就介紹到這了,更多相關(guān)docker run和exec區(qū)別內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • docker volume刪除卷的操作

    docker volume刪除卷的操作

    這篇文章主要介紹了docker volume刪除卷的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 使用Docker查看Elasticsearch錯誤日志的詳細(xì)步驟

    使用Docker查看Elasticsearch錯誤日志的詳細(xì)步驟

    在使用 Elasticsearch(簡稱 ES)的過程中,我們可能會遇到各種問題,為了快速定位和解決這些問題,查看錯誤日志是關(guān)鍵,本文將介紹如何使用 Docker 查看 Elasticsearch 的錯誤日志,并提供一些實(shí)用技巧,需要的朋友可以參考下
    2025-08-08
  • docker pull很慢如何解決

    docker pull很慢如何解決

    這篇文章主要介紹了docker pull很慢的解決方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • docker拉取阿里云鏡像倉庫報錯解決辦法

    docker拉取阿里云鏡像倉庫報錯解決辦法

    最近很多朋友遇到docker拉取鏡像失敗的問題,下面這篇文章主要介紹了docker拉取阿里云鏡像倉庫報錯的解決辦法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-06-06
  • Docker容器無法被stop or kill問題的解決方法

    Docker容器無法被stop or kill問題的解決方法

    這篇文章主要介紹了Docker容器無法被stop or kill問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • docker里面不能使用vim的問題及解決

    docker里面不能使用vim的問題及解決

    這篇文章主要介紹了docker里面不能使用vim的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Docker Registry私有倉庫簡單搭建過程

    Docker Registry私有倉庫簡單搭建過程

    本文介紹了如何在本地搭建Docker私有Registry倉庫,并實(shí)現(xiàn)鏡像的上傳和管理,通過私有倉庫,可以方便地在本地網(wǎng)絡(luò)中存儲和分發(fā)Docker鏡像,提高開發(fā)和部署效率
    2025-12-12
  • 如何在mac上用docker對Oracle進(jìn)行部署使用

    如何在mac上用docker對Oracle進(jìn)行部署使用

    這篇文章主要介紹了如何在mac上用docker對Oracle進(jìn)行部署使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Docker搭建私有倉庫之Harbor的步驟

    Docker搭建私有倉庫之Harbor的步驟

    這篇文章主要介紹了Docker搭建私有倉庫之Harbor的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Docker容器自啟動的實(shí)現(xiàn)方法

    Docker容器自啟動的實(shí)現(xiàn)方法

    這篇文章主要介紹了Docker容器自啟動的實(shí)現(xiàn)方法,詳細(xì)的介紹了Docker的 Restart policy命令,非常具有實(shí)用價值,需要的朋友可以參考下
    2018-09-09

最新評論

津南区| 灌阳县| 广安市| 荥阳市| 嵊州市| 赤城县| 吴江市| 比如县| 饶河县| 临安市| 台江县| 肇源县| 长寿区| 泉州市| 高要市| 汉源县| 海城市| 龙门县| 青铜峡市| 淳化县| 东辽县| 泗阳县| 什邡市| 罗城| 怀柔区| 武宁县| 横峰县| 上蔡县| 芒康县| 芦溪县| 黔东| 墨竹工卡县| 荥阳市| 铁岭市| 定西市| 宁陕县| 七台河市| 延川县| 阳高县| 兴海县| 南宫市|