日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • docker基本命令
  • docker文件系統
  • commit鏡像
  • 容器數據卷
  • 具名和匿名掛載
  • 初識Dockerfile commit
  • Dockerfile 構建過程
  • 發布自己的鏡像
  • docker網絡

docker基本命令

docker基本命令及使用實例詳解

docker基本命令及使用實例詳解

docker基本命令及使用實例詳解

docker文件系統

docker基本命令及使用實例詳解

docker鏡像為分層設計,相比于全量的虛擬機鏡像,少了引導程序bootfs,共用系統內核rootfs。

配置層(容器層)

commit鏡像

docker commit -a="" -m="" docker_id image_name:tag

類似于給鏡像打個快照。

容器數據卷

解決問題 ->數據持久化 本質是目錄掛載

使用數據卷

方式一: 直接使用命令掛載 -v

docker run -it  -v 主機目錄:容器內目錄  image_id /bin/bash

具名和匿名掛載

# 匿名掛載
docker run -d -P --name nginx01 -v /etc/nginx(容器內路徑) nginx
# 具名掛載
docker run -d -P --name nginx02 -v xff-nginx:/etx/nginx(容器內路徑) nginx
root@hecs-39042:/var/lib/docker/volumes# ls
4ad594eee4e6115b2852f5fa952176c799e99bf1d0cadaee9c581085b8e38b6e  d309f4a3ce1aa585673548ed4fd43a3aa7a5ca4f86a5a52b236d02428b991379  xff-nginx
backingFsBlockDev                                                 metadata.db
root@hecs-39042:/var/lib/docker/volumes# docker volume ls
DRIVER    VOLUME NAME
local     4ad594eee4e6115b2852f5fa952176c799e99bf1d0cadaee9c581085b8e38b6e
local     d309f4a3ce1aa585673548ed4fd43a3aa7a5ca4f86a5a52b236d02428b991379  --匿名掛載
local     xff-nginx															--具名掛載
root@hecs-39042:/var/lib/docker/volumes#
# 如何確定是具名、匿名、指定路徑掛載
-v xff-nginx(卷名):容器內路徑
-v 容器內路徑
-v /path(宿主機路徑):/容器內路徑
拓展:
-v :/容器內路徑:ro or rw
# ro 只能通過宿主機操作, 容器內部是無法操作!

多個容器間數據共享

# --volumes-form 實現容器間的配置傳遞,數據卷容器的生命周期一直持續到沒有容器使用為止
# 一旦持久化(掛載)到本地,這個時候即使刪除鏡像;本地的數據也不會刪除
docker run -d -P -name nginx01 nginx
docker run -d -P -name nginx02 --volumes-form nginx01 nginx
docker run -d -P -name nginx03 --volumes-form nginx01 nginx

初識Dockerfile commit

Dockerfile 用來構建鏡像,命令參數腳本。

構建步驟:

1.編寫一個dockerfile

2.docker build 構建成為一個鏡像

3.docker run 運行鏡像

4.docker push 發布鏡像

# 基礎鏡像 掛載目錄 命令為大寫
FROM ubuntu
VOLUME ["volume01","volume02"]
CMD echo "----build image succeed----"
CMD /bin/bash

Dockerfile 構建過程

1.每個關鍵字都必須是大寫字母

2.執行順序從上到下

3.# 表示注釋

4.每一個指令都會創建提交一個新的鏡像,并提交

命令

FROM 	# 基礎鏡像
MAINTAINER 	# 鏡像誰發布的, 姓名+郵箱
RUN		# 鏡像構建時候要運行的命令
ADD		# 步驟:tomcat鏡像,這個tomcat壓縮包,添加內容
WORKDIR # 鏡像的工作目錄
VOLUME 	# 掛載的主機目錄
EXPOSE 	# 指定對外的端口
CMD 	# 指定這個容器啟動的時候要運行的命令,只有最后一個會生效
ENTRPOINT # 指定這個容器啟動時候要運行的命令,可以追加命令
ONBUILD # 構建一個被繼承Dockerfile 這個時候就會運行
COPY 	# 類似于ADD,將文件拷貝到鏡像中
ENV 	# 構建時設置環境變量

創建一個ubuntu

CMD 和 ENTRYPOINT的區別

root@hecs-39042:/home/docker# docker run ubuntu-cmd -l
docker: Error response from daemon: failed to create shim: OCI runtime create failed: container_linux.go:380: starting container process caused: exec: "-l": executable file not found in $PATH: unknown.
root@hecs-39042:/home/docker#
root@hecs-39042:/home/docker# docker run ubuntu-entrypoint -l -i
total 56
drwxr-xr-x   1 root root 4096 Mar 27 07:13 .
drwxr-xr-x   1 root root 4096 Mar 27 07:13 ..
-rwxr-xr-x   1 root root    0 Mar 27 07:13 .dockerenv
CMD外部傳入的命令會覆蓋掉dockerfile里面的
ENTRYPOINT可以通過外部命令追加參數
  • 編寫一個Dockerfile
  • 發布鏡像
  • 啟動容器

發布自己的鏡像

docker login

docker網絡

veth-pair 
--link

自定義網絡

docker run -d  -P --name tomcat06 --net bridge tomcat
docker0特點:不能通過域名訪問;--link可以打通
# 創建自定義網絡
docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
# 啟動容器指定自定義網絡
docker run -d -P --name tomcat-mynet-01 --net mynet tomcat 
# 跨網絡操作容器
docker network connect mynet contain

分享到:
標簽:Docker 命令 實例 服務器 詳解
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定