1. 程式人生 > >通過docker run 命令來在容器內執行一個應用程式 輸出Hello world

通過docker run 命令來在容器內執行一個應用程式 輸出Hello world

Docker “Hello World!”

Docker 允許你在容器內執行應用程式, 使用 docker run 命令來在容器內執行一個應用程式。

輸出Hello world!

[[email protected] ~]# docker run centos /bin/echo 'hello word!'
hello word!


各個引數解析:

  • docker: Docker 的二進位制執行檔案。

  • run:與前面的 docker 組合來執行一個容器。

  • centos指定要執行的映象,Docker首先從本地主機上查詢映象是否存在,如果不存在,Docker 就會從映象倉庫 Docker Hub 下載公共映象。

  • /bin/echo "Hello world": 在啟動的容器裡執行的命令

以上命令完整的意思可以解釋為:Docker 以 centos 映象建立一個新容器,然後在容器裡執行 bin/echo "Hello world",然後輸出結果。

執行互動式的容器

我們通過docker的兩個引數 -i -t,讓docker執行的容器實現"對話"的能力

[[email protected] ~]# docker run -i -t centos /bin/bash
[[email protected] /]#


各個引數解析:

  • -t:在新容器內指定一個偽終端或終端。

  • -i:允許你對容器內的標準輸入 (STDIN) 進行互動。

此時我們已進入一個 centos系統的容器

我們嘗試在容器中執行命令 cat /proc/versionls分別檢視當前系統的版本資訊和當前目錄下的檔案列表


我們可以通過執行exit命令或者使用CTRL+D或者exit來退出容器。

啟動容器(後臺模式)

使用以下命令建立一個以程序方式執行的容器

[[email protected] /]# exit
[[email protected] ~]# docker run -d centos /bin/sh -c "while true; do echo hello world; sleep 1; done"
ecede4c6303a6d18ffecb39358a95e93f6f0ab0b3cb1ff1bb9ca52d538353550


在輸出中,我們沒有看到期望的"hello world",而是一串長字元

ecede4c6303a6d18ffecb39358a95e93f6f0ab0b3cb1ff1bb9ca52d538353550

這個長字串叫做容器ID,對每個容器來說都是唯一的,我們可以通過容器ID來檢視對應的容器發生了什麼。

首先,我們需要確認容器有在執行,可以通過 docker ps 來檢視

[[email protected] ~]# docker ps 
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS               NAMES
ecede4c6303a        centos              "/bin/sh -c 'while t   38 seconds ago      Up 37 seconds                           silly_poitras  


CONTAINER ID:容器ID

NAMES:自動分配的容器名稱

在容器內使用docker logs命令,檢視容器內的標準輸出

[[email protected] ~]# docker logs ecede4c6303a
hello world
hello world
hello world
hello world


當然也可以通過後面名稱來查docker logs silly_poitras

[[email protected] ~]# docker logs silly_poitras
hello world
hello world
hello world
hello world


停止容器

我們使用 docker stop  id(你自己查詢出來的id,如下)或者docker stopsilly_poitras 命令來停止容器:

[[email protected] ~]# docker stop silly_poitras
silly_poitras

[[email protected] ~]# docker stop ecede4c6303a

ecede4c6303a


以上就是用 docker run 命令來在容器內執行一個應用程式。

相關推薦

通過docker run 命令容器執行一個應用程式 輸出Hello world

Docker “Hello World!” Docker 允許你在容器內執行應用程式, 使用 docker run 命令來在容器內執行一個應用程式。 輸出Hello world! [[email protected] ~]# docker run ce

Docker Run 命令打包H5及其他後臺應用

一、簡單的run命令介紹      Docker run 命令用來建立一個新的容器並執行,相當於 docker create和docker start的組合。 用 docker run -help可以顯示命令的使用說明。   docker run --help   Usa

VC中怎麼執行一個應用程式,並取得應用程式的返回值

我沒有想到怎樣去檢查掛掉的程式,在實際應用中我是採用估算一個最大執行時間,如果超過此時間,即強行終止程式。因為要取得子程序執行結束的返回值,所以要用上面的方法。如果不要求取得返回值,把:ShellExecuteEx(&ShExecInfo);以下的程式碼去掉就是了,主程序依然可以繼續下向執行。如果不考

通過shell執行kubectl exec並在對應pod容器執行shell命令

問題描述: 由於服務部署在K8S環境下,在應用層之上有一次cache層,使用的是nginx的快取,這樣每次更新後臺服務資源後,cache內的快取並未及時更新,這時需要人工清除cache,其實只要使用yaml檔案拉取nginx映象重新部署就可以了,但K8s對於映象tag未變化

docker run命令概述及Docker容器的兩種執行模式

docker run命令用於根據映象檔案建立並啟動一個容器例項。 一個容器例項就是宿主機器上的一個獨立的程序。每次執行docker run,就建立一個Docker容器程序,擁有獨立的檔案系統、網路和程序樹。 1. 命令格式docker run [OPTIONS] IMAGE

Linux通過端口轉發訪問網服務(端口轉發訪問阿裏雲Redis數據庫等服務)

creat 同方 eat sta -s span 不用 man conf # 安裝rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&am

docker run命令

Docker會在隔離的容器中執行程序。當執行 docker run命令時,Docker會啟動一個程序,併為這個程序分配其獨佔的檔案系統、網路資源和以此程序為根程序的程序組。在容器啟動時,映象可能已經定義了要執行的二進位制檔案、暴露的網路埠等,但是使用者可以通過docker run命令重新定

docker run命令解析(一)之Docker client

1、什麼是Docker? Docker Linux 平臺上的一款輕量級虛擬化容器的管理引擎。在全球範圍內, Docker 還是一個開源專案,整個專案基於 Go 語言開發,程式碼託管於 GitHub 網站上,並遵從 Apache 2.0 協議。目前, Docker 可以幫助使用者在容器內部快速自動

Linux 通過rinetd埠轉發訪問網服務

可以通過埠對映的方式,來通過具有公網的雲伺服器 ECS 訪問使用者名稱下其它未購買公網頻寬的內網 ECS 上的服務。埠對映的方案有很多,比如 Linux 下的 SSH Tunnel、rinetd,Windows 下的 portmap 等,本文簡要介紹 rinetd,和 ssh tunnel 的配置方法。 說

Docker run 命令的使用方法

【編者的話】在Docker中,run應該是使用者使用最多的命令了,很多讀者反饋不是很明白run命令的用法,而且相關的書籍、中文資料中對run命令的描述也不是非常完整,所以DockerOne組織翻譯了Docker官方的文件,以饗讀者。注意,本文基於最新的Docker 1.4文件翻譯。 D

docker run命令解析(二)之Docker daemon--container create

上一篇文章咱們分析了docker run命令在Docker client中的處理,這一篇文章咱們分析在Docker daemon中的處理。 Docker client傳送容器管理請求,由Docker daemon接收並處理。原始碼基於Docker-ce17.09 1、所謂

docker run命令解析(二)之Docker daemon--container start

上一篇咱們簡單的分析了docker run命令在Docker daemon中的create實現,接下來咱們開始start的分析。原始碼基於Docker-ce17.09 1.1、流程: func (s *containerRouter) postContaine

docker 基礎命令容器操作

docker ce-- 官方文件 docker官網下載地址 :https://docs.docker.com/install/ docker官方文件地址:https://docs.docker.com/get-started/ -----docker 設定映象加速器 阿里雲 &nbs

Windows10下的docker安裝與入門 (三) 建立自己的docker映象並且在容器執行

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。 本教程主要分以下幾點內容:  ------------

Docker run 命令引數及使用

docker run :建立一個新的容器並執行一個命令 語法 docker run [OPTIONS] IMAGE [COMMAND] [ARG...] OPTIONS說明: -a stdin: 指定標準輸入輸出內容型別,可選 STDIN/STDOUT/STDERR

Docker cp 命令(用於容器與主機之間的資料拷貝)

docker cp :用於容器與主機之間的資料拷貝。 1、從主機往容器中拷貝 eg:將主機/www/runoob目錄拷貝到容器96f7f14e99ab的/www目錄下。 docker cp /

Flume Kafka收集Docker容器分散式日誌應用實踐

1 背景和問題 隨著雲端計算、PaaS平臺的普及,虛擬化、容器化等技術的應用,例如Docker等技術,越來越多的服務會部署在雲端。通常,我們需要需要獲取日誌,來進行監控、分析、預測、統計等工作,但是雲端的服務不是物理的固定資源,日誌獲取的難度增加了,以往可以SSH登陸的或者

《 第一本Docker書 》讀書筆記 --- Docker 各項操作命令及引數說明(docker run 命令各個引數說明)

PS :個人所有讀書筆記只記錄個人想要的內容,很可能原書大量內容沒有納入筆記中... ...  1. 可用 docker info 檢視程式是否正常工作。 2. docker run 如果本地沒有對應映象,會從Docker 官方倉庫 Docker Hub 下載該映象。

dockerdocker run命令詳解

Docker run命令用於執行一個新容器,而啟動一個容器需要非常多的資訊,所以該命令的引數非常多,今天就詳細分析下該命令支援的引數。 首先看一下該命令的格式: Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG..

docker run 命令詳解

在Docker中,run應該是使用者使用最多的命令了,很多讀者反饋不是很明白run命令的用法,而且相關的書籍、中文資料中對run命令的描述也不是非常完整,所以DockerOne組織翻譯了Docker官方的文件,以饗讀者。注意,本文基於最新的Docker 1.4文件翻譯。Docker會在隔離的容器中執行程序。當