Docker入門連載——(3)docker常用命令

常用命令

1、輔助命令

# 1.安裝完成輔助命令

		docker version	--------------------------	查看docker的信息
		docker info		--------------------------	查看更詳細的信息
		docker --help	--------------------------	幫助命令

2、Images 鏡像命令

# 1.查看本機中所有鏡像
	docker images	--------------------------	列出本地所有鏡像
		-a			列出所有鏡像(包含中間映像層)
  	-q			只顯示鏡像id

# 2.搜索鏡像
	docker search [options] 鏡像名	-------------------	去dockerhub上查詢當前鏡像
		-s 指定值		列出收藏數不少於指定值的鏡像
  	--no-trunc	  顯示完整的鏡像信息
  	
# 3.從倉庫下載鏡像
	docker pull 鏡像名[:TAG|@DIGEST]	----------------- 下載鏡像
	例: (1)docker pull nginx  ---------------將默認拉取最新版等於docker pull nginx:latest命令
	     (2) docker pull nginx:1.11.1 ---------------拉取指定版本的nginx
# 4.刪除鏡像
	docker rmi 鏡像名	--------------------------  刪除鏡像
		-f		強制刪除

3、Contrainer 容器命令

再來回顧一次docker架構圖
在這裏插入圖片描述
上一節課我們看了鏡像的一些基本操作,下面我們來看看容器的操作。
在docker中主要用到的就是容器。
容器的基本概念就是:它就是應用運行的一個實例,比如我日後下載了nginx鏡像,我用docker run nginx 就是運行了一個正在跑起來的nginx服務。

3.1、基本命令(容器外操作)

# 1.運行容器
	docker run 鏡像名	--------------------------	鏡像名新建並啓動容器
    --name 					別名爲容器起一個名字
    -d							啓動守護式容器(在後臺啓動容器)
    -p 							映射端口號:原始端口號		 指定端口號啓動
ps:--name需要寫在-p之前
	例:docker run -d -p 80:80 nginx ----------代表啓動nginx並把容器內部的80端口映射到主機centos7的80端口,此時會給我們返回一串字符串,這就是當前容器的id
          現在去訪問192.168.0.103(主機ip) 就可以看到nginx服務提示了
 # 2.查看運行的容器
	docker ps					--------------------------	列出所有正在運行的容器
	-a			正在運行的和歷史運行過的容器
	-q			靜默模式,只顯示容器編號
   
# 3.停止|關閉|重啓容器
  (容器id可以只輸入一部分,能識別出來就行)
	docker start   容器名字或者容器id  --------------- 開啓容器
	docker restart 容器名或者容器id    --------------- 重啓容器
	docker stop  容器名或者容器id 	    ------------------ 正常停止容器運行
	docker kill  容器名或者容器id      ------------------ 立即停止容器運行
	
# 4.刪除容器
	docker rm -f 容器id和容器名     
	docker rm -f $(docker ps -aq)		--------------------------	一次性刪除所有容器

# 5.查看容器內進程
	docker top 容器id或者容器名 ------------------ 查看容器內的進程

# 6.查看查看容器內部細節
	docker inspect 容器id 		------------------ 查看容器內部細節

# 7.查看容器的運行日誌
	docker logs [OPTIONS] 容器id或容器名	------------------ 查看容器日誌
    -t			 加入時間戳
    -f			 跟隨最新的日誌打印
    --tail 	 數字	顯示最後多少條

3.2、進階命令(容器內數據交互)

centos ----> docker(引擎) ----> mynginx(容器)


# 1.進入容器內部
	docker exec [options] 容器id 容器內命令 ------------------ 進入容器執行命令
		-i		以交互模式運行容器,通常與-t一起使用
    -t		分配一個僞終端    shell窗口   /bin/bash 
    例如:docker exec -it 8151 /bin/bash
# 2.容器內安裝軟件
	apt-get update
	apt-get install 安裝包名稱

# 3.修改容器內文件
	vim ...
	
# 4.退出容器
	exit		退出容器

# 5.將容器打包爲新的鏡像
	docker commit -a="作者" -m="描述信息" 容器ID 目標鏡像名稱:TAG

# 6.從容器中複製文件到宿主機目錄中
	docker cp 容器id:容器內資源路徑 宿主機目錄路徑  -----------------   將容器內資源拷貝到主機上

# 7.設置容器和宿主機共享目錄
		docker run -it -v /宿主機的絕對路徑:/容器內的路徑:ro(只讀) 鏡像名
			注意: 宿主機路徑必須是絕對路徑,宿主機目錄會覆蓋容器內目錄內容	
			例如:docker run -d -p 80:80 -v /root/home:/usr/share/nginx/html nginx
		運行 docker inspect 容器id 命令 檢查json串裏有沒有以下內容,如果有則證明卷掛載成功。
		"Mounts": [
            {
                "Type": "bind",
                "Source": "/root/home",
                "Destination": "/usr/share/nginx/html",
                "Mode": "",
                "RW": true,
                "Propagation": "rprivate"
            }
        ]

# 8.打包鏡像
		docker save 鏡像名或id -o  名稱.tar
# 9.載入鏡像
		docker load -i   名稱.tar

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章