好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > 詳解Docker鏡像與容器的常見操作

詳解Docker鏡像與容器的常見操作

熱門標簽:云南電商智能外呼系統哪家好 地圖標注員有發展前景嗎 廈門防封電銷電話卡 宜賓銷售外呼系統軟件 高德地圖標注公司需要錢 地圖標注能更改嗎 濰坊寒亭400電話辦理多少錢 四川保險智能外呼系統 外呼系統全國

鏡像加速器

國內從 Docker Hub 拉取鏡像有時會遇到困難,此時可以配置鏡像加速器。國內很多云服務商都提供了國內加速器服務,例如:

網易云加速器 https://hub-mirror.c.163.com
阿里云加速器(需登錄賬號獲取): https://cr.console.aliyun.com/cn-hangzhou/mirrors

國內各大云服務商均提供了 Docker 鏡像加速服務,建議根據運行 Docker 的云平臺選擇對應的鏡像加速服務,具體請參考官方文檔。

在CentOS7系統,請在 /etc/docker/daemon.json 中寫入如下內容(如果文件不存在請新建該文件)

[root@docker01 ~]# vim /etc/docker/daemon.json
{
 "registry-mirrors": [
  "https://hub-mirror.c.163.com"
 ]
}

注意,一定要保證該文件符合 json 規范,否則 Docker 將不能啟動。

之后重新啟動服務。

systemctl daemon-reload
systemctl restart docker

檢查加速器是否生效

執行如下命令,如果從結果中看到了如下內容,說明配置成功。

[root@docker01 ~]# docker info # 顯示整個系統的信息
………………
Registry Mirrors:
 https://hub-mirror.c.163.com/
Live Restore Enabled: false

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

Dcoker鏡像操作

說明:Docker 運行容器前需要本地存在對應的鏡像,如果本地不存在該鏡像,Docker 會從鏡像倉庫下載該鏡像。

search搜索鏡像

[root@docker01 ~]# docker search centos
NAME           DESCRIPTION                   STARS OFFICIAL  AUTOMATED
centos          The official build of CentOS.          5934  [OK]    
ansible/centos7-ansible Ansible on Centos7               128        [OK]
jdeathe/centos-ssh    OpenSSH / Supervisor / EPEL/IUS/SCL Repos - … 114        [OK]
consol/centos-xfce-vnc  Centos container with "headless" VNC session… 114        [OK]
centos/mysql-57-centos7 MySQL 5.7 SQL database server          74        
…………

pull從鏡像中心下載鏡像

# 格式:docker pull <image_name>:<tag> ,如果沒有tag,默認為 latest
[root@docker01 ~]# docker pull centos:latest
latest: Pulling from library/centos
8a29a15cefae: Pull complete 
Digest: sha256:fe8d824220415eed5477b63addf40fb06c3b049404242b31982106ac204f6700
Status: Downloaded newer image for centos:latest

push推送鏡像到鏡像中心

格式:docker push <image_name>:<tag>
[root@docker01 ~]# docker push registry.cn-beijing.aliyuncs.com/google_registry/centos:latest

說明:如果有疑問可先忽略,后面搭建私有倉庫文章會再次說明的。

images列出鏡像

[root@docker01 ~]# docker images # 或者 docker image ls
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
centos       latest       470671670cac    2 months ago    237MB

save鏡像保存到本地

# 格式:docker save -o <保存的文件名> <image_name:tag>|<image_id>
[root@docker01 docker_test]# docker save -o centos_docker_20200413.tar centos:latest 
[root@docker01 docker_test]# ll -h
total 234M
-rw------- 1 root root 234M Apr 13 16:21 centos_docker_20200413.tar

rmi刪除鏡像

# 格式:docker rmi <image_name:tag>|<image_id>
[root@docker01 docker_test]# docker images
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
centos       latest       470671670cac    2 months ago    237MB
[root@docker01 docker_test]# docker rmi 470671670cac # 刪除鏡像 
[root@docker01 docker_test]# docker images
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE

load導入鏡像

# 格式:docker load -i <image_file>
[root@docker01 docker_test]# docker load -i centos_docker_20200413.tar
[root@docker01 docker_test]# docker images 
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
centos       latest       470671670cac    2 months ago    237MB

tag標簽

# 格式:docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
[root@docker01 docker_test]# docker images 
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
centos       latest       470671670cac    2 months ago    237MB 
[root@docker01 docker_test]# docker tag centos:latest centos:20200413
[root@docker01 docker_test]# docker images 
REPOSITORY     TAG         IMAGE ID      CREATED       SIZE
centos       20200413      470671670cac    2 months ago    237MB
centos       latest       470671670cac    2 months ago    237MB

使用:根據需要給docker鏡像打一個新標簽。

info顯示整個系統的信息

[root@docker01 ~]# docker info 
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 1
Server Version: 18.06.3-ce
Storage Driver: overlay2
 Backing Filesystem: xfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 468a545b9edcd5932818eb9de8e72413e616e86e
runc version: a592beb5bc4c4092b1b1bac971afed27687340c5
init version: fec3683
Security Options:
 seccomp
 Profile: default
Kernel Version: 3.10.0-1062.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 1.777GiB
Name: docker01
ID: XIHU:XNWU:II7A:YXUH:BOZ3:JSGG:J3P2:CU2Z:5QHA:5Y64:PZ4V:62DI
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 127.0.0.0/8
Registry Mirrors:
 https://hub-mirror.c.163.com/
Live Restore Enabled: false

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

system鏡像體積查看

另外一個需要注意的問題是,docker image ls 列表中的鏡像體積總和并非是所有鏡像實際硬盤消耗。由于 Docker 鏡像是多層存儲結構,并且可以繼承、復用,因此不同鏡像可能會因為使用相同的基礎鏡像,從而擁有共同的層。由于 Docker 使用 Union FS,相同的層只需要保存一份即可,因此實際鏡像硬盤占用空間很可能要比這個列表鏡像大小的總和要小的多。

可以通過以下命令來便捷的查看鏡像、容器、數據卷所占用的空間。

[root@docker01 docker_test]# docker system df
TYPE        TOTAL        ACTIVE       SIZE        RECLAIMABLE
Images       2          0          440.1MB       440.1MB (100%)
Containers     0          0          0B         0B
Local Volumes    0          0          0B         0B
Build Cache     0          0          0B         0B

inspect顯示鏡像或容器的詳情

# 格式:docker inspect <鏡像ID>|<鏡像名>|<容器ID>|<容器名>
[root@docker01 ~]# docker inspect centos:latest # 顯示鏡像詳情
[root@docker01 ~]# docker inspect 67ba647b0151  # 顯示容器詳情

Dcoker容器操作

run創建容器

# 格式:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
[root@docker01 ~]# docker run -i -t --name centos01 centos:latest /bin/bash
[root@f7c4da3cecad /]#    # 此時已進入docker容器
[root@f7c4da3cecad /]# exit # 退出容器,此時容器會停止【正常情況】
[root@docker01 ~]#

參數說明:

-i 交互式操作
-t 分配一個終端
--name 運行的容器名稱
最后的/bin/bash 要執行的命令

ps查看容器

[root@docker01 ~]# docker ps # 查看正在運行的容器
CONTAINER ID  IMAGE      COMMAND    CREATED    STATUS          PORTS  NAMES
[root@docker01 ~]# 
[root@docker01 ~]# docker ps -a # 查看所有容器,包括運行和停止的
CONTAINER ID  IMAGE      COMMAND    CREATED    STATUS          PORTS  NAMES
f7c4da3cecad  centos:latest  "/bin/bash"  4 minutes ago Exited (0) 36 seconds ago     centos01

start啟動容器

# 格式:docker start <容器名>|<容器ID>
[root@docker01 ~]# docker ps -a
CONTAINER ID    IMAGE        COMMAND   CREATED     STATUS           PORTS  NAMES
f7c4da3cecad    centos:latest    "/bin/bash" 10 minutes ago Exited (0) 3 seconds ago      centos01
[root@docker01 ~]# docker start f7c4da3cecad # 啟動容器
f7c4da3cecad
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE        COMMAND   CREATED     STATUS    PORTS  NAMES
f7c4da3cecad    centos:latest    "/bin/bash" 10 minutes ago Up 3 seconds     centos01

restart重啟容器

# 格式:docker restart <容器名>|<容器ID>
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE        COMMAND    CREATED     STATUS     PORTS  NAMES
f7c4da3cecad    centos:latest    "/bin/bash"  15 minutes ago  Up 4 minutes      centos01
[root@docker01 ~]# docker restart f7c4da3cecad # 重啟容器
f7c4da3cecad
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE        COMMAND    CREATED     STATUS     PORTS  NAMES
f7c4da3cecad    centos:latest    "/bin/bash"  15 minutes ago  Up 1 second       centos01

stop停止容器

# 格式:docker stop <容器名>|<容器ID>
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE      COMMAND    CREATED    STATUS     PORTS   NAMES
f7c4da3cecad    centos:latest  "/bin/bash"  3 hours ago  Up 4 minutes       centos01
[root@docker01 ~]# docker stop f7c4da3cecad # 停止容器
f7c4da3cecad
[root@docker01 ~]# docker ps -a
CONTAINER ID    IMAGE       COMMAND    CREATED    STATUS           PORTS  NAMES
f7c4da3cecad    centos:latest  "/bin/bash"  3 hours ago  Exited (0) 10 seconds ago      centos01

rm刪除容器

# 格式:docker rm <容器名>|<容器ID>
[root@docker01 ~]# docker ps -a
CONTAINER ID    IMAGE       COMMAND    CREATED    STATUS           PORTS  NAMES
f7c4da3cecad    centos:latest  "/bin/bash"  3 hours ago  Exited (0) 10 seconds ago      centos01
[root@docker01 ~]# docker rm f7c4da3cecad  # 刪除已停止的容器
f7c4da3cecad

說明:如果要強制刪除正在運行的容器,使用 docker rm -f <容器ID>。不過生產環境不建議強制刪除容器,防止誤刪除。

rename容器重命名

# 格式:docker rename CONTAINER NEW_NAME
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE     COMMAND    CREATED       STATUS       PORTS  NAMES
67ba647b0151    centos:latest "/bin/bash"  About a minute ago  Up About a minute      centos01
[root@docker01 ~]# docker rename 67ba647b0151 centos001  # 容器重命名
[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE     COMMAND    CREATED       STATUS       PORTS  NAMES
67ba647b0151    centos:latest "/bin/bash"  2 minutes ago    Up About a minute      centos001

exec進入容器或在運行容器中執行命令

進入容器

[root@docker01 ~]# docker exec -it f7c4da3cecad bash
[root@f7c4da3cecad /]#

說明:不建議通過 docker attach 方式進入容器。

在容器外讓指定容器執行命令

# 不要有 -t 選項,因為不需要分配 tty 終端
[root@docker01 ~]# docker exec -i f7c4da3cecad bash -c "ps -ef"
UID     PID  PPID C STIME TTY     TIME CMD
root     1   0 0 10:12 pts/0  00:00:00 /bin/bash
root     78   0 0 10:19 ?    00:00:00 ps -ef

cp復制文件或目錄

將宿主機文件或目錄,拷貝到docker容器中

[root@docker01 ~]# docker exec -i 67ba647b0151 bash -c "ls -l /root"
total 12
-rw------- 1 root root 2366 Jan 13 21:49 anaconda-ks.cfg
-rw-r--r-- 1 root root 435 Jan 13 21:49 anaconda-post.log
-rw------- 1 root root 2026 Jan 13 21:49 original-ks.cfg
[root@docker01 ~]# 
[root@docker01 ~]# docker cp /usr/bin/telnet 67ba647b0151:/root/   # 拷貝文件
[root@docker01 ~]# docker cp /root/basedOptimi 67ba647b0151:/root/  # 拷貝目錄
[root@docker01 ~]# docker exec -i 67ba647b0151 bash -c "ls -l /root"
total 112
-rw------- 1 root root  2366 Jan 13 21:49 anaconda-ks.cfg
-rw-r--r-- 1 root root  435 Jan 13 21:49 anaconda-post.log
drwxr-xr-x 2 root root   30 Mar 8 19:59 basedOptimi
-rw------- 1 root root  2026 Jan 13 21:49 original-ks.cfg
-rwxr-xr-x 1 root root 101776 Aug 3 2017 telnet

將docker容器中的文件或目錄,拷貝到宿主機中

[root@docker01 ~]# docker cp 67ba647b0151:/root/original-ks.cfg /root/  # 拷貝文件
[root@docker01 ~]# docker cp 67ba647b0151:/etc /root/          # 拷貝目錄

logs查看容器日志

[root@docker01 ~]# docker ps 
CONTAINER ID    IMAGE        COMMAND       CREATED       STATUS       PORTS        NAMES
f7c4da3cecad    centos:latest    "/bin/bash"     3 hours ago     Up 1 second               centos01
# 獲取容器日志
[root@docker01 ~]# docker logs -f --tail 500 f7c4da3cecad
…………

參數說明:

-f 持續打印輸出
--tail 500 打印日志最后的500行

stats容器使用資源統計

可用于監控

[root@docker01 ~]# docker stats <容器ID>|<容器名稱>  # 持續監控
[root@docker01 ~]# docker stats --no-stream <容器ID>|<容器名稱> # 不是持續監控,只顯示第一次返回的結果

top容器中運行的進程

[root@docker01 ~]# docker ps 
CONTAINER ID  IMAGE      COMMAND    CREATED    STATUS    PORTS  NAMES
67ba647b0151  centos:latest  "/bin/bash"  2 hours ago  Up 2 hours      centos001 
# 查看容器中運行的進程信息
[root@docker01 ~]# docker top 67ba647b0151
UID  PID  PPID C STIME TTY  TIME   CMD
root  3302  3285 0 21:13 pts/0 00:00:00 /bin/bash

port容器映射特定端口

容器映射端口有:隨機端口映射、指定單個端口映射、指定多個端口映射

獲取鏡像

[root@docker01 ~]# docker pull registry.cn-beijing.aliyuncs.com/google_registry/nginx:1.17
[root@docker01 ~]# docker tag ed21b7a8aee9 nginx:1.17
[root@docker01 ~]# docker images | grep 'nginx'
nginx                          1.17  ed21b7a8aee9  2 weeks ago  127MB
registry.cn-beijing.aliyuncs.com/google_registry/nginx  1.17  ed21b7a8aee9  2 weeks ago  127MB

映射隨機端口

[root@docker01 ~]# docker run -d -P --name nginx01 nginx:1.17
e90c9faaf8e3387920dd9763bf5c7df9dd17856673868bb512cec78741ff71dc
[root@docker01 ~]# docker ps 
CONTAINER ID  IMAGE    COMMAND         CREATED     STATUS     PORTS         NAMES
e90c9faaf8e3  nginx:1.17  "nginx -g 'daemon of…"  3 seconds ago  Up 2 seconds  0.0.0.0:1025->80/tcp  nginx01

說明:

0.0.0.0:1025->80/tcp 前面為宿主機端口,后面為容器端口

容器日志:

[root@docker01 ~]# docker logs -f --tail 500 nginx01

瀏覽器訪問:

映射單個指定端口

[root@docker01 ~]# docker run -d -p 81:80 --name nginx02 nginx:1.17
04478222f0dc981883f25504164be3af7da49248886cee7386ccc89b80cc57a1
[root@docker01 ~]# docker ps | grep 'nginx02'
04478222f0dc  nginx:1.17  "nginx -g 'daemon of…"  29 seconds ago  Up 28 seconds  0.0.0.0:81->80/tcp  nginx02

瀏覽器訪問:

映射多個指定端口

[root@docker01 ~]# docker run -d -p 85:80 -p 445:443 --name nginx03 nginx:1.17
5886e52ff8e934bc827c8d7753a532b9062bd045799d0658a008e371e6ecd09c
[root@docker01 ~]# docker ps | grep 'nginx03'
5886e52ff8e9  nginx:1.17  "nginx -g 'daemon of…"  12 seconds ago  Up 11 seconds  0.0.0.0:85->80/tcp, 0.0.0.0:445->443/tcp  nginx03

推薦閱讀
1、 Docker簡介與安裝

到此這篇關于詳解Docker鏡像與容器的常見操作的文章就介紹到這了,更多相關Docker鏡像與容器操作內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

標簽:巴彥淖爾 紅河 回訪 德州 廊坊 滁州 廣安 湛江

巨人網絡通訊聲明:本文標題《詳解Docker鏡像與容器的常見操作》,本文關鍵詞  詳解,Docker,鏡像,與,容器,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解Docker鏡像與容器的常見操作》相關的同類信息!
  • 本頁收集關于詳解Docker鏡像與容器的常見操作的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 全黄做爰毛片免费看| 欧美一区二区日韩一区二区| 激情综合五月婷婷| 日产大香伊煮大象伊甸的寓意| 看污网址| 影音先锋在线视频| 老师好大好硬好深好爽想要| 91久久久无码精品不卡A片直播| 人人妻人人澡人人爽久久av| 女人用粗大自熨喷水在线视频| 奶头大他一口都含不住| 被病娇做到哭h年下| 少妇小泬喷牛奶自慰喷水漫画| 不许穿内裤我好cao你| 好男人资源在线观看视频免费| 成人深爱网| 欧美8一10sex性hd| 中文字幕不卡免费高清视频| 久久国产福利| 精品看片| 99热这里只精品99re6jiujiuri | 丝瓜视频黄色| 性生交大片免费看淑女出招| 农民工在工棚做爰| 国产51无码AV一区二区| 成年女人看片免费视频播放器| 宝贝别蹭了我硬了| 国产国拍精品亚洲AV片男人| 医生别停啊摁摁h| 天美麻花星空mv免费播放| 又紧又大又爽精品一区二区| 男人的嘴添女人下身视频大全| 国产夫绿帽单男3p精品视频| 国产成人小视频| 男人扒开女人的内裤亲吻桶进去| 利智全身棵| 女人自愿扒开腿让男人躁| z0osi00k重口另类| 国产无遮挡又黄又爽的网站| 污污在线观看| 妈妈夹的好紧…爽死我了|