Docker

1、概述

      1.1  Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版);

      1.2  Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。

      1.3  Docker 容器通过 Docker 镜像来创建。

2、Docker架构

      2.1  Docker3个核心概念:

          Docker 镜像(Image):就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。

          容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

          仓库(Repository):仓库可看着一个代码控制中心,用来保存镜像。

3、镜像使用

          当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载;

      3.1、列出本地镜像列表  docker images

      3.2、从Docker Hub下载镜像  docker pull  镜像名称

      3.3、从DockerHub搜索镜像  docker search 镜像名称      

      3.4、删除本地镜像  docker rmi 

      3.5、构建镜像  docker build    

4、容器使用

          Docker允许在容器中运行应用程序,使用docker run在容器中运行应用程序;

     4.1、启动容器 docker run -it 镜像名称  命令     [-i:交互式操作、-t:终端]

     4.2、退出容器  exit|ctrl+d  

     4.3、查看所有容器  docker ps -a

     4.4、启动一个已停止的容器  docker start 容器id

     4.5、后台运行容器  docker run  -itd 镜像名称  命令  [-d:指定容器的运行模式]

                         使用-d参数后,不会默认进入容器

     4.6、停止指定容器  docker stop 容器id

     4.7、重启指定容器  docker  restart 容器id

     4.8、进入容器  

          docker attach  容器id

              从此种方式进入容器,退出终端后,容器会停止;

          docker  exec

              推荐使用exec,退出容器终端,不会导致容器的停止;

     4.9、导出容器  docker export

     4.10、导入容器  docker import

     4.11、删除容器  docker rm  容器id

     4.12、清理所有处于停止状态的容器    docker container prune

        4.13、运行一个web应用  docker run -d -P 镜像名称  命令    [-d:让容器在后台运行、-P:将  容器内部使用的网络端口 随机映射到  我们使用的主机上 ]

5、容器连接

     5.1、网络端口映射   docker run -d -p 本机映射端口号:容器内部端口号  镜像名称  命令   [-p:容器内部端口  绑定到  指定的本机端口]

     5.2、网络ip、端口映射   docker run -d -p 指定容器绑定的ip地址:本机映射端口号:容器内部端口号  镜像名称  命令     

     5.3、网络ip、udp端口映射  docker run -d -p 指定容器绑定的ip地址:本机映射端口号:容器内部端口号 /udp 镜像名称  命令

6、仓库管理

     仓库(Repository)是集中存放镜像的地方;

     docker官方提供一个远程仓库Docke Hub;

     登录docker hub    docker login

     退出docker hub    docker logout

7、常用指令

      查看容器日志    docker logs -f --since=' 时间' --tail 行数  容器名称   

     

posted on   anpeiyong  阅读(114)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示