• Docker 容器管理


    单一容器管理

    容器的标识符

    每个容器被创建后都会分配一个CONTAINER_ID作为容器的唯一标识符,后续的启动、停止等操作都通过CONTAINER_ID来完成的。

    CONTAINER_ID很难记忆,在创建容器时,可以用--name参数给容器起一个名字。用名字代替CONTAINER_ID对容器进行操作。

      docker ps     #查询CONTAINER_ID的简略形式

      docker stop container_id/container_name  #停止容器

      docker start container_id/container_name  #启动容器

    查询容器信息

      docker inspect  #查询容器的所有基本信息,包括运行状况、存储位置等

       docker logs  #查询日志

       docker stats # 查询容器占用的系统资源

    容器内部的命令

      经常有登入Docker容器内部执行命令的需求,可以在容器中启动sshd服务来响应用户登录,但sshd方式存在进程开销和增加被攻击

    的风险,同时违反Docker所倡导的“一个容器一个进程”的原则。

    Docer提供了原生的方式登入容器 docker exec:

      docker exec container_name 容器内执行的命令

    可以加上“-it”参数,相当于以root身份登入容器内可以连续执行命令,执行完成后通过“exit”或者“ctrl +d”退出。

    多容器管理

      Docker倡导的理念是“一个容器一个进程”,假如一个服务由多个进程组成,就要创建多个容器组成一个系统,相互分工和配合来对外提供完整服务。

    在通一台主机下,docker run命令提供“--link”选项创建容器之间的互连。但有一个前提条件,使用“--link containerA”创建容器B时,容器A必须已经穿件并且启动运行,

    所以容器启动是按顺序的。

    容器编排工具 Docker Compose

      Docker提供一个容器编排工具——Docker Compose,它允许用户在一个模板(YAML格式)中定义一组相关的应用容器,这组容器会根据配置模板中的

    “--link”等参数,对启动的优先级自动排序,简单执行一条“docker-compose up”,就可以把同一个服务中的多个容器一次创建和启动。

    docker-compose.yml文件:

    wordpress:                     

      image:wordpress

      links:

        -db:mysql

        ports:

        - 8080:80

     db:

      image:mariandb

      environment :

        MYSQL_ROOT_PASSWORD:example

    这个配置文件创建了两个容器wordpress 和 db 使用image指定镜像,links、ports、environment分别对应docker run中的“--links”(容器互联)、“-p”(端口映射)

    和“-e”(环境变量设置)。然后通过docker-compose up 命令来创建和启动wordpress服务。

      docker-compose up   #启动和创建容器

      docker-compose start #启动命令

      docker-compose stop #停止命令

      docker rm container_id #删除容器

    默认的配置文件是docker-compost.yml, 可以通过“-f”选项指定配置文件。

      docker-compose -f XXX.yml ps #查询所有容器状态

      docker-compose -f XXX.yml stop #停止项目

      docker-compost -f XXX.yml  start #启动项目

      docker-compost -f XXX.yml  down #删除项目

  • 相关阅读:
    无法为数据库 'tempdb' 中的对象分配空间,因为 'PRIMARY' 文件组已满
    数据库通用分页存储过程
    ef linq 中判断实体中是否包含某集合
    linq 动态判断
    bootstrap切换按钮点击后显示的颜色
    abp vue vscode 配置
    abp ef codefirst Value cannot be null. Parameter name: connectionString
    git diff 分支1 分支2 --stat命令没有将所有的不同显示出来
    区块链相关介绍
    需求分析工作流程
  • 原文地址:https://www.cnblogs.com/jixp/p/9959302.html
一二三 - 开发者的网上家园