1. 程式人生 > >Docker基礎學習(三)-Docker容器

Docker基礎學習(三)-Docker容器

一,容器的基本操作

1,啟動容器:

$ docker run IMAGE[COMMAND] [AEG...]

IMAGE:指定容器執行的映象

COMMAND:指定執行的命令

ARG:執行的引數

例如:

$ docker run ubuntu echo "Hello World"
這一個執行單次命令的容器,輸出“Hello World”之後,容器就停止了

2,啟動互動式容器:

$ docker run -i -t IMAGE /bin/bash

-i --interactive=ture|false 預設是false  //告訴docker守護程序為容器始終開啟標準輸入

-t --tty=true|false 預設是false //分配一個偽tty終端

例如:

$docker run -i -t  ubuntu /bin/bash

3,檢視容器:

$ docker ps [-a][-l]

不加引數,檢視正在執行的容器

-a:檢視所有的容器

-l:檢視最新的一個容器

$ docker inspect 容器名或容器ID

檢視容器詳細的配置資訊

4,自定義容器的名字:

$ docker run --name=自定義名 -i -t IMAGE /bin/bash

5,重啟啟動停止的容器:

$ docker start [-i] 容器名或容器ID

6,刪除停止的容器:

$ docker rm 容器名或容器ID

二,守護式容器

1,什麼是守護式容器:

(1)能夠長期執行

(2)沒有互動式會話

(3)適合執行應用程式和服務

2,以守護形式執行容器:

$ docker run -i -t IMAGE /bin/bash

執行之後,不用退出,執行Ctrl+P Ctrl+Q

3,附加到執行中的容器:

$ docker attach 容器名或容器ID

4,啟動守護式容器:

$ docker run -d 映象名[COMMAND][ARG...]

-d 以後臺形式執行容器

例如:

$ docker run --name dc1 -d ubuntu /bin/sh -c "while true;do echo hello world;sleep 1;done"

5,檢視容器日誌:

$ docker logs [-f][-t][--tail] 容器名

-f --follows=true|false 預設為false //一直跟蹤日誌的變化,並返回結果

-t --timestamps=true|false 預設為false //在返回的結果加上時間戳

--tail ="all" //返回結尾處多少數量的日誌

不指定引數,返回所有的日誌

6,檢視容器內程序:

$docker top 容器名或容器ID

7,在執行的容器內啟動新程序:

$ docker exec [-d][-i][-t] 容器名[COMMAND][AGR...]

例如:

$ docker exec -d -t -i dc1 /bin/bash

8,停止守護式容器:

$ docker stop 容器名|容器ID  //傳送訊號給容器,等待容器的停止,停止後返回容器名

$ docker kill 容器名或容器  //直接停止容器

三,在容器中部署靜態網站

1,設定容器的埠對映

run [-P][-p]

-P,-publish-all=true|false 預設為false //將容器暴露的所有的埠進行對映

例如:

$ docker run -P -i -t ubuntu /bin/bash
-p,--publish=[],可以指定對映哪些容器的埠,下面使用的四種方式

(1)containerPort,只指定容器的埠,對映的宿主機的埠是隨機的

$ docker run -p 80 -i -t ubuntu /bin/bash

(2)hostPort:containerPort:,同時指定宿主機的埠和容器的埠

$ docker run -p 8080:80 -i -t ubuntu /bin/bash

(3)ip:containerPort,指定ip和容器的埠

$ docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash

(4)ip:hostPort:containerPort,指定ip,宿主機埠,容器埠

$ docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash

2,在容器中部署靜態網站-Nginx部署流程

(1)建立對映80埠的互動式容器

$ docker run -p 80 --name=web -i -t ubuntu /bin/bash

(2)安裝Nginx

# apt-get install -y nginx

執行安裝命令,可能出現如下情況:

這時需要執行apt-get update命令,這個命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,這樣才能獲取到最新的軟體包。

重新執行安裝命令,可以看到安裝完成

(3)安裝文字編輯器vim

# apt-get install -y vim

(4)建立靜態頁面

(5)修改Nginx配置檔案

(6)執行Nginx

(7)驗證網站訪問

1,檢視埠對映

2,訪問

相關推薦

Docker基礎學習-Docker容器

一,容器的基本操作 1,啟動容器: $ docker run IMAGE[COMMAND] [AEG...] IMAGE:指定容器執行的映象 COMMAND:指定執行的命令 ARG:執行的引數 例如: $ docker run ubuntu echo "Hell

Docker基礎學習-Docker容器的跨主機連線

Docker網橋實現跨主機容器連線 docker網橋實現跨主機連線的網路拓撲圖如下: 在同一個docker主機中,docker容器通過虛擬網橋連線(docker0),如果將連線容器的網橋docker0也橋接到宿主機提供的網絡卡上,將docker0分配的IP地址和宿主機

Docker基礎學習-Docker容器的網路連線

一.Docker容器的網路基礎 通過ifconfig檢視docker0的網路裝置,docker守護程序就是通過docker0為docker的容器提供網路連線的各種服務。 docker0是Linux虛擬網橋。 Linux虛擬網橋的特點: 可以設定IP地址 相當於擁

Docker基礎學習-Docker的安裝和部署

一,在Windows中安裝 Docker 1,Docker的執行環境 (1)Linux容器技術 (2)作業系統級別的虛擬化 (3)依賴於Linux核心的Namespace和Cgroups 下面

docker學習docker命令大全,歸納總結

容器生命週期管理run  docker run :建立一個新的容器並執行一個命令start/stop/restartdocker start :啟動一個或多少已經被停止的容器docker stop :停止一個執行中的容器docker restart :重啟容器kil

docker學習—— docker映象概念,映象的基本操作

docker參考手冊:https://docs.docker.com/engine/reference/commandline/dockerd/ daemon.json參考:https://docs.docker.com/engine/reference/commandline/docker

Docker基礎學習-Dockerfile命令詳解超全版本

製作Dockerfile為Docker入門學習的第一步(當然,除了環境搭建)。 本文收集、整理了官網關於製作Dockerfile的全部命令(除SHELL沒整理,這個就不弄了),可幫助大家快速進入Dockfile製作的學習。 以下為正文,下面進入學習姿勢吧!

docker入門學習使用docker中的Tomcat鏡像部署web項目

代碼 ive 分享圖片 running conf http class read ner 前面已經對安裝Tomcat進行了詳解:docker入門學習(一)    直接上代碼 //啟動一個Tomcat 命名為mytomcat [root@localhost ~]#

linux菜鳥基礎學習

sha then 系統安全 .com img ugo 目錄下的文件 文件讀寫 The 文件權限 1.文件屬性的查看 練習:ls 查看當前目錄下的文件和目錄ls -l 查看當前目錄下的文件和目錄屬性ll 查看當前目錄下的文件和目錄屬性 stat test 查看文件

Python的語法-基礎學習

一、註釋 註釋:通過自己熟悉的語言,在程式種對某些程式碼進行標註說明,這就是註釋的作用,能夠大大增強程式的可讀性,註釋不屬於程式碼,所以不會被編譯。 分類:單行註釋、多行註釋 單行註釋:#+註釋內容 多行註釋:”’註釋的

JavaWeb基礎學習--Request & Response

請求過程:        每次請求都將會建立新的request&response物件。 HttpServletRequest 簡介: Servlet API 中定義的 ServletRequest 介面用於封裝請求訊息。 HttpServletR

python--基礎學習字串單引號、雙引號、引號

#單引號str1='python'#單引號中使用雙引號str2='"python"'#雙引號中使用單引號str3="'python'"#三單引號str4='''python'''#三單引號中間使用雙引號str5='''"python"'''#三單引號中有換行符str6='''hellopython'''#

R基礎學習-- 簡單練習shiny+mysql+barplot

user observe 實現 tle plot rstudio names eat lag 測試環境:win10+RStudio 提前準備: install.packages(‘shiny‘) install.packages(‘RMySQL‘) 數據表準備:

git基礎學習:版本回退 git reset --hard HEAD^(或者是commit id的前幾位)和git reflog

現在,你已經學會了修改檔案,然後把修改提交到Git版本庫,現在,再練習一次,修改readme.txt檔案如下: Git is a distributed version control system. Git is free software distributed un

C++基礎學習陣列

關於陣列的語法點還是很多的,基本陣列,字元型陣列,指標陣列,還有C++標準庫中的關於陣列的容器,今天只簡單總結下,關於C++中陣列的宣告和使用的一些細節。1、一維陣列#include<iostream> using namespace std; void ma

docker基礎學習進入與退出docker容器--圖文結合

今天開始學習docker容器技術。Docker 可以讓開發者打包他們的應用以及依賴包到一個輕量級、可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面,更重要的是容器效能開銷極低。所以容器技術是很重要的一門技術。 首先我們要在

Docker學習筆記容器的基本操作

容器是一個打包了應用和服務的環境,是一個輕量級的虛擬機器,每一個容器都由一組應用和必要依賴的庫組成。 容器作為軟體應用的標準集裝箱,必須要定義與應用無關的介面。 這次主要學習容器的標準操作 建立容器 建立完容器後docker都會返回一個容器的ID。這

容器Docker簡介Docker相關術語——微軟微服務電子書翻譯系列

進程 數據 public 圖像 over 表示 -c ice ner 本節列出了在更加深入Docker之前應該熟悉的術語和定義。 有關詳細的定義,請參閱Docker提供的術語表。 容器鏡像(Container image):具有創建容器所需要的所有依賴和信息的包。 鏡像

docker學習 Windows 10 安裝Docker

body 圖標 hyper com app try href windows 必須 Docker CE: 社區版,免費。 Docker EE: 企業版,收費。 安裝: Windows 10 Pro 64, 必須開啟Hyper-v

docker學習筆記之建立本地映象docker build的結果

docker build -t tonyxinminghui/test:v1 . Sending build context to Docker daemon 586.9 MB Step 1 : FROM ubuntu:latest —> f753