云计算 之 Docker--Docker 中的容器、镜像、仓库管理
发布日期:2021-06-28 20:05:45 浏览次数:2 分类:技术文章

本文共 30082 字,大约阅读时间需要 100 分钟。

Docker 中的容器、镜像、仓库管理

前言

本环境是基于 Centos 7.8 系统构建Docker-19.03.13环境

具体构建,请参考


一、docker 包括三个基本概念

在这里插入图片描述

  • 镜像( Image)

镜像:一个特殊的文件系统,Docker镜像就是一个只读的模板

操作系统分为内核和用户空间。对于 Linux 而言,内核启动后,会挂载 root 文件系统为其提供用户空
间支持。而 Docker 镜像(Image),就相当于是一个 root 文件系统。
Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还
包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。
镜像不包含任何动态数据,其内容在构建之后也不会被改变。

分层存储的特征还使得镜像的复用、定制变的更为容易。甚至可以用之前构建好的镜像作为基础层,然

后进一步添加新的层,以定制自己所需的内容,构建新的镜像

  • 容器( Container)

容器:镜像运行时的实体,Docker利用容器来运行应用。

镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静
态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等 。
容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。前
面讲过镜像使用的是分层存储,容器也是如此。

容器在整个应用程序生命周期工作流中提供以下优点:隔离性、可移植性、灵活性、可伸缩性和可控性。 最重要的优点是可在开发和运营之间提供隔离

  • 仓库( Repository)

仓库:集中存放镜像文件的地方

镜像构建完成后,可以很容易的在当前宿主上运行,但是, 如果需要在其他服务器上使用这个镜像,我
们就需要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。
一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。所以说,镜像仓库是 Docker 用来集中存放镜像文件的地方,类似于我们之前常用的代码仓库。
仓库分为公开仓库( Public)和私有仓库( Private) 两种形式。

在这里插入图片描述

二、仓库操作

登录 docker hub 注册账号,创建公有仓库

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在仓库中搜索 MySQL 镜像

在这里插入图片描述
命令行搜索 MySQL 镜像

[root@node01 ~]# docker search mysqlNAME                              DESCRIPTION                                     STARS               OFFICIAL            AUTOMATEDmysql                             MySQL is a widely used, open-source relation…   10097               [OK]                mariadb                           MariaDB is a community-developed fork of MyS…   3705                [OK]                mysql/mysql-server                Optimized MySQL Server Docker images. Create…   737                                     [OK]percona                           Percona Server is a fork of the MySQL relati…   511                 [OK]                centos/mysql-57-centos7           MySQL 5.7 SQL database server                   84                                      mysql/mysql-cluster               Experimental MySQL Cluster Docker images. Cr…   77                                      centurylink/mysql                 Image containing mysql. Optimized to be link…   60                                      [OK]bitnami/mysql                     Bitnami MySQL Docker Image                      45                                      [OK]deitch/mysql-backup               REPLACED! Please use http://hub.docker.com/r…   41                                      [OK]tutum/mysql                       Base docker image to run a MySQL database se…   35                                      prom/mysqld-exporter                                                              31                                      [OK]schickling/mysql-backup-s3        Backup MySQL to S3 (supports periodic backup…   30                                      [OK]databack/mysql-backup             Back up mysql databases to... anywhere!         30                                      linuxserver/mysql                 A Mysql container, brought to you by LinuxSe…   26                                      centos/mysql-56-centos7           MySQL 5.6 SQL database server                   20                                      circleci/mysql                    MySQL is a widely used, open-source relation…   19                                      mysql/mysql-router                MySQL Router provides transparent routing be…   17                                      arey/mysql-client                 Run a MySQL client from a docker container      15                                      [OK]fradelg/mysql-cron-backup         MySQL/MariaDB database backup using cron tas…   10                                      [OK]yloeffler/mysql-backup            This image runs mysqldump to backup data usi…   7                                       [OK]openshift/mysql-55-centos7        DEPRECATED: A Centos7 based MySQL v5.5 image…   6                                       devilbox/mysql                    Retagged MySQL, MariaDB and PerconaDB offici…   3                                       ansibleplaybookbundle/mysql-apb   An APB which deploys RHSCL MySQL                2                                       [OK]jelastic/mysql                    An image of the MySQL database server mainta…   1                                       widdpim/mysql-client              Dockerized MySQL Client (5.7) including Curl…   1                                       [OK]

从仓库中下载镜像

#下载 busybox 镜像[root@node01 ~]# docker pull busyboxUsing default tag: latestlatest: Pulling from library/busybox9758c28807f2: Pull complete Digest: sha256:a9286defaba7b3a519d585ba0e37d0b2cbee74ebfe590960b0b1d6a5e97d1e1dStatus: Downloaded newer image for busybox:latestdocker.io/library/busybox:latest#下载我们自己创建的镜像[root@node01 ~]# docker pull wan012q/docker01

查看下载下来的镜像

[root@node01 ~]# docker image lsREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEbusybox             latest              f0b02e9d092d        10 days ago         1.23MB

仓库的登录、退出登录

#登录仓库[root@node01 ~]# docker login -u wan012q -pabc200888WARNING! Using --password via the CLI is insecure. Use --password-stdin.WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. Seehttps://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded#退出容器的登录[root@node01 ~]# docker logout Removing login credentials for https://index.docker.io/v1/

将本地镜像上传到公有仓库

公有仓库

在这里插入图片描述

#镜像打标记[root@node01 ~]# docker tag busybox:latest wan012q/docker01:busybox_v1#查看本地现有的镜像[root@node01 ~]# docker image ls REPOSITORY          TAG                 IMAGE ID            CREATED             SIZEbusybox             latest              f0b02e9d092d        10 days ago         1.23MBwan012q/docker01    busybox_v1          f0b02e9d092d        10 days ago         1.23MB#上传镜像[root@node01 ~]# docker push wan012q/docker01:busybox_v1The push refers to repository [docker.io/wan012q/docker01]d2421964bad1: Mounted from library/busybox busybox_v1: digest: sha256:c9249fdf56138f0d929e2080ae98ee9cb2946f71498fc1484288e6a935b5e5bc size: 527

查看结果

在这里插入图片描述

三、 镜像操作

在这里插入图片描述

在仓库中搜索nginx镜像

[root@node01 ~]# docker search nginxNAME                               DESCRIPTION                                     STARS               OFFICIAL            AUTOMATEDnginx                              Official build of Nginx.                        13911               [OK]                jwilder/nginx-proxy                Automated Nginx reverse proxy for docker con…   1900                                    [OK]richarvey/nginx-php-fpm            Container running Nginx + PHP-FPM capable of…   791                                     [OK]linuxserver/nginx                  An Nginx container, brought to you by LinuxS…   127                                     jc21/nginx-proxy-manager           Docker container for managing Nginx proxy ho…   101                                     tiangolo/nginx-rtmp                Docker image with Nginx using the nginx-rtmp…   99                                      [OK]bitnami/nginx                      Bitnami nginx Docker Image                      90                                      [OK]alfg/nginx-rtmp                    NGINX, nginx-rtmp-module and FFmpeg from sou…   77                                      [OK]jlesage/nginx-proxy-manager        Docker container for Nginx Proxy Manager        64                                      [OK]nginxdemos/hello                   NGINX webserver that serves a simple page co…   62                                      [OK]nginx/nginx-ingress                NGINX Ingress Controller for Kubernetes         42                                      privatebin/nginx-fpm-alpine        PrivateBin running on an Nginx, php-fpm & Al…   39                                      [OK]nginxinc/nginx-unprivileged        Unprivileged NGINX Dockerfiles                  19                                      schmunk42/nginx-redirect           A very simple container to redirect HTTP tra…   19                                      [OK]centos/nginx-112-centos7           Platform for running nginx 1.12 or building …   15                                      nginx/nginx-prometheus-exporter    NGINX Prometheus Exporter                       15                                      raulr/nginx-wordpress              Nginx front-end for the official wordpress:f…   13                                      [OK]centos/nginx-18-centos7            Platform for running nginx 1.8 or building n…   13                                      staticfloat/nginx-certbot          Opinionated setup for automatic TLS certs lo…   13                                      [OK]bitwarden/nginx                    The Bitwarden nginx web server acting as a r…   7                                       mailu/nginx                        Mailu nginx frontend                            7                                       [OK]flashspys/nginx-static             Super Lightweight Nginx Image                   6                                       [OK]bitnami/nginx-ingress-controller   Bitnami Docker Image for NGINX Ingress Contr…   6                                       [OK]ansibleplaybookbundle/nginx-apb    An APB to deploy NGINX                          1                                       [OK]wodby/nginx                        Generic nginx                                   1                                       [OK]

搜索结果解释

参数 说明
NAME 镜像名称
DESCRIPTION 镜像说明
STARS 点赞数量(受欢迎程度)
OFFICIAL 是否是官方的
AUTOMATED 是否是自动构建的

拉取nginx-alpine镜像

[root@node01 ~]# docker pull nginx:1.14-alpine1.14-alpine: Pulling from library/nginxbdf0201b3a05: Pull complete 3d0a573c81ed: Pull complete 8129faeb2eb6: Pull complete 3dc99f571daf: Pull complete Digest: sha256:485b610fefec7ff6c463ced9623314a04ed67e3945b9c08d7e53a47f6d108dc7Status: Downloaded newer image for nginx:1.14-alpinedocker.io/library/nginx:1.14-alpine

查看镜像nginx:1.14-alpine的详细信息

[root@node01 ~]# docker image inspect nginx:1.14-alpine [    {
"Id": "sha256:8a2fb25a19f5dc1528b7a3fabe8b3145ff57fe10e4f1edac6c718a3cf4aa4b73", "RepoTags": [ "nginx:1.14-alpine" ], "RepoDigests": [ "nginx@sha256:485b610fefec7ff6c463ced9623314a04ed67e3945b9c08d7e53a47f6d108dc7" ], "Parent": "", "Comment": "", "Created": "2019-04-10T01:08:46.210666872Z", "Container": "0a597833eefb7f60fd434dcc4438c1bd0d514a42f5925513841ec5c3295d62d4", "ContainerConfig": {
"Hostname": "0a597833eefb", "Domainname": "", "User": "", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false, "ExposedPorts": {
"80/tcp": {
} }, "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "NGINX_VERSION=1.14.2" ], "Cmd": [ "/bin/sh", "-c", "#(nop) ", "CMD [\"nginx\" \"-g\" \"daemon off;\"]" ], "ArgsEscaped": true, "Image": "sha256:aff1bb24fb4907c200a9e7cbabe65ec4b5490bc511ab7f1f69b2946f709a27cb", "Volumes": null, "WorkingDir": "", "Entrypoint": null, "OnBuild": null, "Labels": {
"maintainer": "NGINX Docker Maintainers
" }, "StopSignal": "SIGTERM" }, "DockerVersion": "18.06.1-ce", "Author": "", "Config": {
"Hostname": "", "Domainname": "", "User": "", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false, "ExposedPorts": {
"80/tcp": {
} }, "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "NGINX_VERSION=1.14.2" ], "Cmd": [ "nginx", "-g", "daemon off;" ], "ArgsEscaped": true, "Image": "sha256:aff1bb24fb4907c200a9e7cbabe65ec4b5490bc511ab7f1f69b2946f709a27cb", "Volumes": null, "WorkingDir": "", "Entrypoint": null, "OnBuild": null, "Labels": {
"maintainer": "NGINX Docker Maintainers
" }, "StopSignal": "SIGTERM" }, "Architecture": "amd64", "Os": "linux", "Size": 16032814, "VirtualSize": 16032814, "GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/0afec5029a73fa8e3fe1b929547a3062231091e13a175c5feb4f8615d0c01b99/diff:/var/lib/docker/overlay2/ccdd05f4cb175a568354340ce363a0d847b41e22dffe80037948d1296d961a32/diff:/var/lib/docker/overlay2/2af829e9b6451a53c5f747e55886e843daff2dfd77233c8ae3e3286e25f5a2eb/diff", "MergedDir": "/var/lib/docker/overlay2/0cb9be8148524543d03c8154eb2dbe3ad5a25fded931d4f8f9e83665a448ca0d/merged", "UpperDir": "/var/lib/docker/overlay2/0cb9be8148524543d03c8154eb2dbe3ad5a25fded931d4f8f9e83665a448ca0d/diff", "WorkDir": "/var/lib/docker/overlay2/0cb9be8148524543d03c8154eb2dbe3ad5a25fded931d4f8f9e83665a448ca0d/work" }, "Name": "overlay2" }, "RootFS": {
"Type": "layers", "Layers": [ "sha256:a464c54f93a9e88fc1d33df1e0e39cca427d60145a360962e8f19a1dbf900da9", "sha256:5ac9a5170bf254da6d1b54edbfde4da4070e5c43a85a0402ec7defdcec5c3657", "sha256:b2cbae4b8c158c49c6590cc69a305c36dfb133321c3ab1e9c3b764f54c27158a", "sha256:076c58d2644f0d4c4a80d460bc2dfb21469f4fdb5c3d259438e0a4a1b182fa87" ] }, "Metadata": {
"LastTagTime": "0001-01-01T00:00:00Z" } }]

保存镜像

[root@node01 ~]# docker image save busybox -o buaybox.tar

导入镜像

[root@node01 ~]# docker image rm busybox:latest Untagged: busybox:latestUntagged: busybox@sha256:a9286defaba7b3a519d585ba0e37d0b2cbee74ebfe590960b0b1d6a5e97d1e1d[root@node01 ~]# docker image lsREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEwan012q/docker01    busybox_v1          f0b02e9d092d        10 days ago         1.23MBnginx               1.14-alpine         8a2fb25a19f5        18 months ago       16MB[root@node01 ~]# docker image import buaybox.tar sha256:1c26751958da198b989b2b08384c134ca11077becca89fdcfc5cec9f9cc05fd6[root@node01 ~]# docker image lsREPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
1c26751958da 2 seconds ago 1.45MBwan012q/docker01 busybox_v1 f0b02e9d092d 10 days ago 1.23MBnginx 1.14-alpine 8a2fb25a19f5 18 months ago 16MB
[root@node01 ~]# docker image rmi 1c26751958da Deleted: sha256:1c26751958da198b989b2b08384c134ca11077becca89fdcfc5cec9f9cc05fd6Deleted: sha256:e272adc323d6eadc54a5f1f9a350d251e019eb84f24aabe52347039aec82896a[root@node01 ~]# docker image load -i buaybox.tard2421964bad1: Loading layer   1.45MB/1.45MBLoaded image: busybox:latest[root@node01 ~]# docker image lsREPOSITORY          TAG                 IMAGE ID            CREATED             SIZEbusybox             latest              f0b02e9d092d        10 days ago         1.23MBnginx               1.14-alpine         8a2fb25a19f5        18 months ago       16MB

四、 容器操作

在这里插入图片描述

创建容器

方法一:创建容器后启动(不推荐)

[root@node01 ~]# docker create busybox14379b0ed03f8a63be06703594bd031dfc1d1db633e9b68e84fbcfb0763c3800[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES[root@node01 ~]# docker ps -aCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES14379b0ed03f        busybox             "sh"                8 seconds ago       Created                                 vibrant_blackwell[root@node01 ~]# docker start 14379b0ed03f14379b0ed03f[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES[root@node01 ~]# docker ps -aCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES14379b0ed03f        busybox             "sh"                53 seconds ago      Exited (0) 29 seconds ago                       vibrant_blackwell

方法二:通过运行创建容器

[root@node01 ~]# docker run nginx:1.14-alpine [root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES147631182ea4        nginx:1.14-alpine   "nginx -g 'daemon of…"   14 seconds ago      Up 13 seconds       80/tcp              eager_lehmann

注:容器退出后,停止运行

#创建容器,退出后,停止告知运行[root@node01 ~]# docker run -it busybox /bin/sh/ # #创建容器,放在后台运行[root@node01 ~]# docker run -d nginx:1.14-alpine 49b6c21411285a76a82713d58b0a416814df9a32e0574172a159ff36d46264f7

退出时,容器还在运行

Ctrl + p + q

[root@node01 ~]# docker run -it nginx:1.14-alpine /bin/sh/ # [root@node01 ~]#

创建容器时,指定名字

[root@node01 ~]# docker run --name=nginx1 nginx:1.14-alpine[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES0a2a2d538c1f        nginx:1.14-alpine   "nginx -g 'daemon of…"   6 seconds ago       Up 6 seconds        80/tcp              nginx1

创建容器,运行,结束后,自动删除

[root@node01 ~]# docker run --rm -it nginx:1.14-alpine /bin/sh/ # [root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES3b783d031102        nginx:1.14-alpine   "/bin/sh"           11 seconds ago      Up 10 seconds       80/tcp              cool_cerf退出登录后[root@node01 ~]# docker run --rm -it nginx:1.14-alpine /bin/sh/ # exit[root@node01 ~]# [root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAM

容器的关闭、停止

#创建容器nginx[root@node01 ~]# docker run -d --name=nginx nginx:1.14-alpine 3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1#查看容器状态[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES3dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   12 seconds ago      Up 12 seconds       80/tcp              nginx#停止容器[root@node01 ~]# docker stop nginxnginx#查看容器状态[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES[root@node01 ~]# docker ps -aCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS               NAMES3dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   34 seconds ago      Exited (0) 7 seconds ago                       nginx5a6a2d294f3d        nginx:1.14-alpine   "nginx -g 'daemon of…"   3 minutes ago       Exited (0) 2 minutes ago                       affectionate_johnson0a2a2d538c1f        nginx:1.14-alpine   "nginx -g 'daemon of…"   9 minutes ago       Exited (0) 8 minutes ago                       nginx1#启动容器[root@node01 ~]# docker start nginxnginx#重启容器[root@node01 ~]# docker restart nginx1nginx1#查看容器状态[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES3dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   55 seconds ago      Up 7 seconds        80/tcp              nginx

查看容器 nginx的详细信息

[root@node01 ~]# docker inspect nginx[    {
"Id": "3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1", "Created": "2020-10-24T15:39:36.093956012Z", "Path": "nginx", "Args": [ "-g", "daemon off;" ], "State": {
"Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 19292, "ExitCode": 0, "Error": "", "StartedAt": "2020-10-24T15:40:23.543972408Z", "FinishedAt": "2020-10-24T15:40:03.203496406Z" }, "Image": "sha256:8a2fb25a19f5dc1528b7a3fabe8b3145ff57fe10e4f1edac6c718a3cf4aa4b73", "ResolvConfPath": "/var/lib/docker/containers/3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1/resolv.conf", "HostnamePath": "/var/lib/docker/containers/3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1/hostname", "HostsPath": "/var/lib/docker/containers/3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1/hosts", "LogPath": "/var/lib/docker/containers/3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1/3dc088a9821f9419b191e5f989bd790a7103389161f3b8941a6dcdaf2eca30b1-json.log", "Name": "/nginx", "RestartCount": 0, "Driver": "overlay2", "Platform": "linux", "MountLabel": "", "ProcessLabel": "", "AppArmorProfile": "", "ExecIDs": null, "HostConfig": {
"Binds": null, "ContainerIDFile": "", "LogConfig": {
"Type": "json-file", "Config": {
} }, "NetworkMode": "default", "PortBindings": {
}, "RestartPolicy": {
"Name": "no", "MaximumRetryCount": 0 }, "AutoRemove": false, "VolumeDriver": "", "VolumesFrom": null, "CapAdd": null, "CapDrop": null, "Capabilities": null, "Dns": [], "DnsOptions": [], "DnsSearch": [], "ExtraHosts": null, "GroupAdd": null, "IpcMode": "private", "Cgroup": "", "Links": null, "OomScoreAdj": 0, "PidMode": "", "Privileged": false, "PublishAllPorts": false, "ReadonlyRootfs": false, "SecurityOpt": null, "UTSMode": "", "UsernsMode": "", "ShmSize": 67108864, "Runtime": "runc", "ConsoleSize": [ 0, 0 ], "Isolation": "", "CpuShares": 0, "Memory": 0, "NanoCpus": 0, "CgroupParent": "", "BlkioWeight": 0, "BlkioWeightDevice": [], "BlkioDeviceReadBps": null, "BlkioDeviceWriteBps": null, "BlkioDeviceReadIOps": null, "BlkioDeviceWriteIOps": null, "CpuPeriod": 0, "CpuQuota": 0, "CpuRealtimePeriod": 0, "CpuRealtimeRuntime": 0, "CpusetCpus": "", "CpusetMems": "", "Devices": [], "DeviceCgroupRules": null, "DeviceRequests": null, "KernelMemory": 0, "KernelMemoryTCP": 0, "MemoryReservation": 0, "MemorySwap": 0, "MemorySwappiness": null, "OomKillDisable": false, "PidsLimit": null, "Ulimits": null, "CpuCount": 0, "CpuPercent": 0, "IOMaximumIOps": 0, "IOMaximumBandwidth": 0, "MaskedPaths": [ "/proc/asound", "/proc/acpi", "/proc/kcore", "/proc/keys", "/proc/latency_stats", "/proc/timer_list", "/proc/timer_stats", "/proc/sched_debug", "/proc/scsi", "/sys/firmware" ], "ReadonlyPaths": [ "/proc/bus", "/proc/fs", "/proc/irq", "/proc/sys", "/proc/sysrq-trigger" ] }, "GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/8df304dfa35b230db4be4375a64ecc173fe60b094d294c741cc18a0c96dd2e43-init/diff:/var/lib/docker/overlay2/0cb9be8148524543d03c8154eb2dbe3ad5a25fded931d4f8f9e83665a448ca0d/diff:/var/lib/docker/overlay2/0afec5029a73fa8e3fe1b929547a3062231091e13a175c5feb4f8615d0c01b99/diff:/var/lib/docker/overlay2/ccdd05f4cb175a568354340ce363a0d847b41e22dffe80037948d1296d961a32/diff:/var/lib/docker/overlay2/2af829e9b6451a53c5f747e55886e843daff2dfd77233c8ae3e3286e25f5a2eb/diff", "MergedDir": "/var/lib/docker/overlay2/8df304dfa35b230db4be4375a64ecc173fe60b094d294c741cc18a0c96dd2e43/merged", "UpperDir": "/var/lib/docker/overlay2/8df304dfa35b230db4be4375a64ecc173fe60b094d294c741cc18a0c96dd2e43/diff", "WorkDir": "/var/lib/docker/overlay2/8df304dfa35b230db4be4375a64ecc173fe60b094d294c741cc18a0c96dd2e43/work" }, "Name": "overlay2" }, "Mounts": [], "Config": {
"Hostname": "3dc088a9821f", "Domainname": "", "User": "", "AttachStdin": false, "AttachStdout": false, "AttachStderr": false, "ExposedPorts": {
"80/tcp": {
} }, "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "NGINX_VERSION=1.14.2" ], "Cmd": [ "nginx", "-g", "daemon off;" ], "Image": "nginx:1.14-alpine", "Volumes": null, "WorkingDir": "", "Entrypoint": null, "OnBuild": null, "Labels": {
"maintainer": "NGINX Docker Maintainers
" }, "StopSignal": "SIGTERM" }, "NetworkSettings": {
"Bridge": "", "SandboxID": "f6c02746179a1ae0d1d913288bda58fe1e460a10914a8bcc3180a6dda69cded1", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": {
"80/tcp": null }, "SandboxKey": "/var/run/docker/netns/f6c02746179a", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "055a09643d5a2333874cc4dc0997b682bbc92a02a2cee9e7a0096193a4e0cb8f", "Gateway": "172.17.0.1", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "172.17.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "MacAddress": "02:42:ac:11:00:02", "Networks": {
"bridge": {
"IPAMConfig": null, "Links": null, "Aliases": null, "NetworkID": "8baa1345522f83775dbbafa9129f807dc84f3603e55567278bde4a918819c65f", "EndpointID": "055a09643d5a2333874cc4dc0997b682bbc92a02a2cee9e7a0096193a4e0cb8f", "Gateway": "172.17.0.1", "IPAddress": "172.17.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "02:42:ac:11:00:02", "DriverOpts": null } } } }]

删除容器

注:停止容器后,删除容器

[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                NAMESacca5d142dee        nginx:1.14-alpine   "nginx -g 'daemon of…"   3 minutes ago       Up 3 minutes        0.0.0.0:80->80/tcp   nginx23dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   15 minutes ago      Up 14 minutes       80/tcp               nginx[root@node01 ~]# docker stop nginx2nginx2[root@node01 ~]# docker rm nginx2nginx2[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES3dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   16 minutes ago      Up 15 minutes       80/tcp              nginx

注:强制删除运行中的容器

[root@node01 ~]# docker ps CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES090322c06e5b        nginx:1.14-alpine   "nginx -g 'daemon of…"   6 seconds ago       Up 5 seconds        80/tcp              nginx23dc088a9821f        nginx:1.14-alpine   "nginx -g 'daemon of…"   18 minutes ago      Up 17 minutes       80/tcp              nginx[root@node01 ~]# docker rm -f nginx2 nginxnginx2nginx[root@node01 ~]# docker psCONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAME

注:将运行、没有运行的所有容器都删除掉

[root@node01 ~]# docker ps -aq5a6a2d294f3d0a2a2d538c1f[root@node01 ~]# docker rm -f `docker ps -aq`5a6a2d294f3d0a2a2d538c1f[root@node01 ~]# docker ps -aq[root@node01 ~]#

运行容器后进入,交互式界面

[root@node01 ~]# docker run --name=nginx1 nginx:1.14-alpine[root@node01 ~]# docker exec -it nginx1 /bin/sh/ # / # ip a1: lo: 
mtu 65536 qdisc noqueue state UNKNOWN qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever56: eth0@if57:
mtu 1500 qdisc noqueue state UP link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0 valid_lft forever preferred_lft forever/ #

查看容器的访问日志

[root@node01 ~]# docker logs nginx1

转载地址:https://blog.csdn.net/XY0918ZWQ/article/details/109264200 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:云计算 之 Docker--Docker 网络模式
下一篇:云计算 之 Docker--Docker 环境的部署

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月09日 17时49分05秒