精华内容
下载资源
问答
  • Docker 容器日志分析

    2020-09-29 23:48:40
    主要介绍了Docker 容器日志分析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • docker限制容器下载速度

    千次阅读 2020-08-24 18:04:41
    tc-docker限制容器下载速度,使用tc命令实现上传下载的限制,如要限制容器的上传的速度,需要在应用的容器内安装iproute工具包,使用tc命令在容器启动时限制。 启动 docker run -d \ --name tc-docker \ --...

    文章目录


    tc-docker限制容器的下载速度,使用tc命令实现上传下载的限制,如要限制容器的上传的速度,需要在应用的容器内安装iproute工具包,使用tc命令在容器启动时限制。

    启动

    docker run -d \
        --name tc-docker \
        --network host \
        --privileged \
        --restart always \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /var/run/docker/netns:/var/run/docker/netns:shared \
        codyguo/tc-docker
    

    使用

    在启动容器时添加标签,org.label-schema.tc.enabled值为1启用限制,非1不启用。
    org.label-schema.tc.rate配置最小带宽限制。
    org.label-schema.tc.ceil配置最大带宽限制。
    支持的单位:

    • bit, kbit, mbit, gbit, tbit
    • bps, kbps, mbps, gbps, tbps
    docker run -it \
        -p 5001:5001 \
        --label "org.label-schema.tc.enabled=1" \
        --label "org.label-schema.tc.rate=1mbps" \
        --label "org.label-schema.tc.ceil=10mbps" \
        ubuntu sh -c " \
        apt-get update \
        && apt-get install iperf \
        && iperf -s"
    

    测试

    在宿主机上运行:

    iperf -c 127.0.0.1 -i 1 -n 100M -p 5001
    

    ubuntu输出:

    ------------------------------------------------------------
    Server listening on TCP port 5001
    TCP window size: 85.3 KByte (default)
    ------------------------------------------------------------
    [  4] local 172.17.0.7 port 5001 connected with 127.0.0.1 port 39406
    [ ID] Interval       Transfer     Bandwidth
    [  4]  0.0-46.6 sec  42.4 MBytes  7.64 Mbits/sec
    [  4] local 172.17.0.7 port 5001 connected with 127.0.0.1 port 39442
    [  4]  0.0- 3.6 sec  3.25 MBytes  7.64 Mbits/sec
    
    展开全文
  • Docker容器容器云(第2版) 浙江大学SEL实验室 著 本书根据Docker1.10版和Kubernetes1.2版对第1版进行了全面更新,从实践者的角度出发,以Docker和Kubernetes为重点。
  • 首先查看下现有的容器和image docker ps #已启动的所有容器 docker ps -a #所有容器,包括未启动的 docker images #当前已有的镜像 一、查找images 例:查找nvidia相关的image [root@localhost ~]# docker...

    首先查看下现有的容器和image

    docker ps 
    #已启动的所有容器
    docker ps -a 
    #所有容器,包括未启动的 
    docker images 
    #当前已有的镜像

    一、查找images

    例:查找nvidia相关的image 

    [root@localhost ~]# docker search -s 10 nvidia
    Flag --stars has been deprecated, use --filter=stars=3 instead
    NAME                       DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
    nvidia/cuda                CUDA and cuDNN images from gitlab.com/nvidia…   699
    nvidia/digits              DEPRECATED                                      70
    nvidia/caffe               DEPRECATED                                      39
    nvidia/cudagl              CUDA + OpenGL images from gitlab.com/nvidia/…   24
    nvidia/opengl              OpenGL images with libglvnd from Nvidia         24
    nvidia/k8s-device-plugin   Images for github.com/NVIDIA/k8s-device-plug…   22
    nvidia/cuda-ppc64le        CUDA and cuDNN images from  gitlab.com/nvidi…   14
    nvidia/opencl              OpenCL images from gitlab.com/nvidia/opencl     14
    nvidia/driver              Driver images from https://gitlab.com/nvidia…   12
    

    参数说明:

    NAME: 镜像仓库源的名称

    DESCRIPTION: 镜像的描述

    OFFICIAL: 是否 docker 官方发布

    stars: 类似 Github 里面的 star,表示点赞、喜欢的意思。

    AUTOMATED: 自动构建。

    二、下载images

    docker pull [OPTIONS] NAME[:TAG|@DIGEST]  
    //拉取一个或多个镜像使用docker pull,如果没有指定镜像标签,docker默认使用:latest 
    //下面的示例命令就会拉取最新的镜像文件,等同于:docker pull debian:latest

    参数说明:

    • -a :拉取所有 tagged 镜像
    • --disable-content-trust :忽略镜像的校验,默认开启

    例子:pull 一个nvidia/drive的镜像

    [root@localhost data]# docker pull nvidia/drive
    Using default tag: latest
    latest: Pulling from nvidia/dcgm-exporter
    a1125296b23d: Pull complete
    3c742a4a0f38: Pull complete
    4c5ea3b32996: Pull complete
    1b4be91ead68: Pull complete
    e93a0823362a: Pull complete
    a7548f29ba00: Pull complete
    a4a3c4393c19: Pull complete
    f6d9edaa5238: Pull complete
    Digest: sha256:69403133a54b9600337cb052cc2aafd38192f3a644a79542e4fa92a487cd3ccf
    Status: Downloaded newer image for nvidia/drive:latest
    docker.io/nvidia/nvidia/drive:latest
    [root@localhost data]#
    

    三、利用images新建容器

    docker run -itd --name face001 -p 3306:3306 --cap-add SYS_ADMIN --privileged face:V1 /usr/sbin/init 
    #run -itd 创建容器并运行于后台,进入容器控制台 
    #--name face001 将容器命名为face001 
    #-p 3306:3306 容器映射端口(【端口映射】-p 3306:3306 宿主机端口:容器端口) 
    #--cap-add SYS_ADMIN 添加系统权限SYS_ADMIN 
    #-privileged 特权容器(特权容器拥有所有的capabilities) 
    #face:V1 创建容器的镜像image 
    #执行/usr/sbin/init

    参数说明:

    -d, --detach=false 指定容器运行于前台还是后台,默认为false -i, --interactive=false 打开STDIN,用于控制台交互 -t, --tty=false 分配tty设备,该可以支持终端登录,默认为false

    -p, --publish=[] 指定容器暴露的端口(【端口映射】-p 3306:3306 宿主端口:容器端口)

    -w, --workdir="" 指定容器的工作目录 -c, --cpu-shares=0 设置容器CPU权重,在CPU共享场景使用

    -m, --memory="" 指定容器的内存上限

    --cap-add=[] 添加权限,权限清单详见:http://linux.die.net/man/7/capabilities

    --privileged=false 指定容器是否为特权容器,特权容器拥有所有的capabilities

    --name="" 指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字

    创建完成后可以输入docker ps查看是否已经运行

    [root@localhost ~]# docker ps
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
    4dfd419d3adc        face                "/usr/sbin/init"         20 hours ago        Up 20 hours         0.0.0.0:3306->3306/tcp                           face001 
    

    此步骤完成后便可进入容器进行需求环境部署,部署完成后则可以继续下面的步骤

    进入容器命令:docker exec -it 4dfd419d3adc bash  

    四、打包容器为image

    完成创建容器和环境部署工作后就可以将当前容器打包成新的image以方便移植部署

    docker commit -a "luck-lyj" -m "commit-test" 7740db56288a face:v1
    #打包命令

    参数说明:

    格式如:docker  commit  -a  -m  现有容器ID   

    commit参数进行保存镜像,

    -a 提交人的姓名  

    -m “提交内容”,

    保存后的 名称:版本号(自定义)

    查看生成后的image

    docker images

    五、打包成tar

    docker save -o face_v1.tar face:v1

    参数说明:

    save 保存到当前路径

    -o 打包后的tart包名称

    对应打包的image 名字:TAG

    备注:建议打包成tar后再次使用压缩工具打包成 /.tar.gz/zip/rar 包,可以压缩较大程度上减少文件大小

    六、加载tar

    docker load -i  face_v1.tar

    然后查看是否存在该镜像

    docker images

    七、给自己鼓掌

    恭喜恭喜!!!

     

    展开全文
  • 文章目录一、docker安装与基本使用1.docker的安装、从远程仓库下载镜像2.配置docker国内源二、创建容器1.createi.创建容器ii.进入容器iii.启动容器2.run创建容器3.容器的操作 一、docker安装与基本使用 1.docker的...

    一、docker安装与基本使用

    1.docker的安装、从远程仓库下载镜像

    1.安装docker

    # yum -y install docker
    

    在这里插入图片描述
    出现上图所示内容
    表示   另一个应用程序目前持有yum锁;等待它退出…

    如何解决呢?
    根据进程pid杀死进程即可

    # kill -9 19049
    

    2.查看是否安装成功

    # yum list installed | grep docker
    

    在这里插入图片描述
    3.启动docker服务

    # systemctl start docker
    

    4.查看docker启动状态

    # systemctl status docker
    

    在这里插入图片描述
    5.查看本地镜像

    # docker images
    

    在这里插入图片描述

    REPOSITORY 仓库
    TAG 标签
    IMAGE ID 镜像id
    CREATED 创建时间
    SIZE 镜像大小
    

    6.查找镜像

    # docker search mysql  查看远程仓库的镜像
    

    在这里插入图片描述
    7.下载镜像

    # docker pull 镜像名
    

    在这里插入图片描述
    下载完成后,再次查看本地镜像
    在这里插入图片描述

    2.配置docker国内源

    docker源是在 docker hub 属于外网,下载内存比较大的软件时下载速度较慢
    为了提高下载速度,配置国内docker源
    1.修改docker配置文件
    docker配置文件路径:/etc/docker/daemon.json
    在这里插入图片描述
    打开配置文件添加修改
    搜索国内的docker镜像源网址
    在这里插入图片描述
    2.重新启动docker服务

    # systemctl restart docker
    

    3.下载镜像

    # docker pull imageName(镜像名)
    

    注意:修改完配置文件后,要重启服务

    二、创建容器

    container 容器
    # docker container ls  查看正在运行的容器
    # docker container ls --all  查看所有的容器
    # docker ps 查看正在运行的容器
    # docker ps -a 查看所有的容器
    

    注意:下面图片中所有的# docker container ls -al都改成# docker container ls --al

    1.create

    i.创建容器

    格式:
    # docker create -it --name 容器名 imageId或者imageName /bin/bash
    在这里插入图片描述

    CONTAINER ID:容器id
    IMAGE:镜像id
    COMMAND:命令
    CREATE:创建时间
    STATUS:状态
    	CREATED:已创建
    	UP:启动
    	EXIT:退出
    PORTS:端口/协议
    NAME:容器的名称
    

    ii.进入容器

    格式:# docker exec -it mysql /bin/bash
    在这里插入图片描述
    报错原因:容器没有启动
    只能进入已经启动的容器,未启动的容器不能进入
    在这里插入图片描述

    iii.启动容器

    注意:
    用 create 创建容器的时候 ,只创建容器不启动容器,所以还需要启动容器

    # docker container start 容器id或者容器名称
    

    在这里插入图片描述
    -i   交互式
    -t   容器启动后会进入命令行,-i 和 -t 一起运行容器创建之后就能登录进去,并且分配一个伪终端
    在这里插入图片描述
    在这里插入图片描述
    退出容器用 exit

    2.run

    创建容器

    格式:
    # docker run -dit --name 容器名 imageId或者imageName /bin/bash
    在这里插入图片描述
    -d 守护容器,容器当中的程序需要长期运行的时候,我们可以创建一个守护式的容器,就算 exit 也不会停止。
    常用守护参数的应用有 Mysql、Nginx、Apache、Tomat。

    -i   交互式
    -t   容器启动后会进入命令行,-i 和 -t 一起运行容器创建之后就能登录进去,并且分配一个伪终端
    注意:
    用 run 创建容器时,创建并启动容器
    这时可以查看容器状态 为UP,
    或者  进入容器不报错,也可以看出用run创建容器时,创建并启动了容器

    3.容器的操作

    # docker container start 容器id或者容器名称   开始运行容器
    # docker container stop 容器id或者容器名称   停止运行容器
    # docker container rm 容器id或者容器名称    删除容器
    # docker container kill 容器id或者容器名称    杀死容器
    

    当用 rm 删除容器时,正在运行的容器不能被删除,
    如果删除正在运行的容器,会报错。

    1. 查看所有容器
    2. 删除正在运行的容器newmysql 报错
    3. 停止运行容器 newmysql
    4. 删除 已停止运行的容器 newmysql在这里插入图片描述
      在这里插入图片描述
    展开全文
  • docker容器中文件的上传与下载

    万次阅读 2017-08-18 23:33:10
    docker容器中文件的上传与下载

    1. 操作环境

    1. CentOS:

    • CentOS-7-x86_64-DVD-1611

    2. Docker:

    • Docker version 1.12.6, build 88a4867/1.12.6

    3. busybox:

    • latest

    2. 启动一个容器

      启动一个容器,还是以之前我们所下载的busybox镜像为例来进行说明。

      在docker中镜像是静态的,是不能被拿来直接运行的,而我们要想运行镜像中的系统,那么我们就必须得把镜像放到容器中来运行才行。

      创建容器的指令为:

    docker run -dit busybox

      创建的结果为:

    这里写图片描述

      其中新创建的容器di为:

    ecef8319d2c8d25d9c9b1e70b9a4c523c466d2f5e825ae651267f184c895813a

      查看新创建的容器:

    docker ps

      创建的结果如下:

    这里写图片描述

    3. 上传文件

      上传文件还是以之前所上传到CentOS操作系统中的文本文件test.txt为例来进行说明。

      文件上传指令格式:

    docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

      OPTIONS说明:

    • -L :保持源目标中的链接

      上传文件

    docker cp /root/test.txt ecef8319d2c8:/root/

      该命令的意思是将当前操作系统(CentOS)家目录(root)下的文件test.txt拷贝到容器id为ecef8319d2c8的家目录(root)文件夹下。

    4. 登录容器

    1. 通过attach命令登录容器

    • attach登录

      要想查看上传的结果,那么这就得需要我们登录到目标容器中去,登录目标容器的方法有两个,分别是通过attach命令或者是exec命令。

      通过attach登录容器的语法:

    docker attach [OPTIONS] CONTAINER

      要attach上去的容器必须正在运行才行,但是这样登录上去的容器有一个缺点,那就是一旦我们执行退出操作(比如说当我们执行exit指令),正在运行的容器也立即停止了。

      attach登录容器的指令为:

    docker attach ecef8319d2c8

    • W3C官方挖坑

      这里存在一个误区有必要科普一下,那就是在docker的W3C的官方文档中是这样介绍的,那就是当执行下面的命令

    docker attach –sig-proxy=false ecef8319d2c8

      后,再次执行CTRL-D不会关闭容器,但是实际操作并非如此,比如说我们在执行前查看一下正在运行的容器:

    docker ps

      显示的结果如下:

    这里写图片描述

      当我们执行了下面的命令

    docker attach –sig-proxy=false ecef8319d2c8

      然后再点击CTRL-D,显示的结果如下:

    这里写图片描述

      结果显示容器已经退出了,此时我们再次查看正在运行着的容器

    docker ps

    这里写图片描述

      上面显示的结果为没有任何容器正在执行,这说明容器确实已经关闭了。

      在不加–sig-proxy=false时,当我们执行CTRL-C命令时,容器也不会自动关闭,这个大家可以去做测试,我这里就不再复述了。

      总之大家在登录时一定要注意这一误区,以免误人子弟。

    2. 通过exec命令登录容器

    • exec登录

      exec登录语法格式如下:

    docker exec [OPTIONS] CONTAINER COMMAND [ARG…]

      OPTIONS说明:

    • -d :分离模式: 在后台运行
    • -i :即使没有附加也保持STDIN 打开
    • -t :分配一个伪终端

      exec登录容器指令为:

    docker exec -it ecef8319d2c8 /bin/sh

      查看上传的文件:

    ls /root/

      可以看到,文件确实是已经上传成功了,如下图:

    这里写图片描述

    • 优点

      当我们执行CTRL-D或者exit命令后,退出容器,而该容器仍然在后台运行中。

      查看后台运行的容器:

    docker ps

      结果如下:

    这里写图片描述

      我们可以看到,容器仍然在后台照样运行中,所以说在连接容器的时候,我极力推荐大家采用这种方式。

    5. 下载文件

    • 删除CentOS中的test.txt文件

      在下载busybox中的test.txt文件前,为了不致使CentOS中原有的test.txt文件出现干扰,所以说我们可以先删除该文件

      删除指令如下:

    rm -rf /root/test.txt

    • cp指令下载

      cp指令下载语法格式

    docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-

      cp指令下载

    docker cp ecef8319d2c8:/root/test.txt /root/

      查看下载的结果:

    ll

      结果如下:

    这里写图片描述

    展开全文
  • Docker下载镜像及运行容器

    万次阅读 2018-09-09 00:37:48
    第二个就是 https://www.docker-cn.com/registry-mirror,这是docker中国镜像加速库,嫌官方下载的太慢可以用这个。 二、安装 我们来先装一个mysql的例子来看看 最好安装官方OFFICIAL 然...
  • 刚开始接触Docker,这篇博客高手慎入,本机环境是Ubuntu16.04,创建容器也是Ubuntu16.04 1.首先创建Ubuntu 16.04容器 : docker run -i -t ubuntu:16.04 /bin/bash 这句命令其实是直接进入Ubuntu的命令行,如果不...
  • 非常强大的功能插件,压力容器用CAD增强插件VCAD
  • 日常学习记录。。。emmmm 背景 ...方法:先将docker容器中的文件下载到centos,然后从centos下载到本机 查看容器ID docker ps 下载docker容器的文件到CentOS docker cp 容器ID:文件路径 目的文...
  • 修改 Docker 容器下的镜像软件下载

    千次阅读 2017-12-16 15:18:58
    Docker上 pull 下来的 Ubuntu,使用 apt-get update 命令下载速度奇慢无比,需要修改其软件源,进入 /etc/apt 目录修改 sources.list,发现 vim 也没有,下载这些软件也非常慢。解决:1.启动容器时,挂载本地 Ubuntu ...
  • 本书根据Docker 1.10版和Kubernetes 1.2版对第1版进行了全面更新,从实践者的角度出发,以Docker和Kubernetes为重点,沿着“基本用法介绍”到“核心原理解读”到“高级实践技巧”的思路,一本书讲透当前主流的容器和...
  • Docker 容器容器云(第2版)-完整版-带标签 SEL实验室pdf下载
  • 通过kubeadm部署k8s集群,在执行kubeadm init命令时,默认生成的manifests文件夹下yaml文件的镜像都是gcr.io上的,在国内由于被墙而不能正常下载,也就导致了集群不能正常安装。那么问题来了,要怎样才能下载这些...
  • 在Docker容器中安装vim

    千次阅读 2019-01-16 19:40:51
    1.首先进入容器 docker exec -ti 容器名称 /bin/bash 例如:docker exec -ti nginx /bin/bash 2.接下来更新下apt-get的源。把下面的命令全部复制粘到容器的控制台执行: mv /etc/apt/sources.list /etc/apt/...
  • docker容器安装ping工具

    千次阅读 2019-03-09 17:20:51
    sudo apt-get update && apt-get install iputils-ping
  • 虚拟容器:LXC安装使用

    千次阅读 2018-11-01 14:00:28
    文章目录概述LXC介绍安装LXC安装依赖下载安装包进行安装安装zfs安装zfs的软件包若安装错误,则需要成功后执行配置LXC创建文件/usr/local/etc/lxc/lxc.conf配置主机的IP配置br0修改LXC创建容器的配置文件再安装几个...
  • 容器技术学习必备资料,理论兼实战,非常适合入门学习docker的网友们
  • docker容器安装ftp(超超详细啦)

    千次阅读 2020-06-28 11:00:28
    1.安装镜像 docker pull fauria/vsftpd ...查看是否下载成功 docker images [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2hda6ci9-1593310432967)(31-王晓羽 .assets/image-2020
  • docker容器中安装vi命令

    千次阅读 2019-07-19 09:16:42
    #进入容器命令 docker exec -it 9fbe362214a6(容器Id) /bin/bash apt-get update apt-get install vim
  • Docker 容器中相关软件安装

    千次阅读 2018-10-23 19:27:00
    Docker 容器中相关软件安装 1、介绍 我们从docker hub下载的centos镜像是只有很少的命令,需要单独安装我们所需的相关软件。 2、安装软件 安装yum-utils软件包 该软件包是辅助下载yum软件包的工具。 $>yum ...
  • Docker 是一个开源的应用容器引擎,基于Go 语言并遵从 Apache2.0 协议开源。 CentOS Docker 安装 先卸载旧版本,较旧的 Docker 版本称为 docker 或 docker-engine 。如果已安装这些程序,请卸载它们以及相关的依赖...
  • 容器云运维实战:Docker与Kubernetes集群
  • 容器云运维实战 Docker与Kubernetes集群
  • docker容器中安装openssl

    千次阅读 2019-01-17 21:26:55
    1.(可忽略,根据需要)执行更新操作 root@a97f033b8cc0:~# apt-get update 2.查看原有系统是否已安装Openssl ...3.执行下载openssl操作 root@a97f033b8cc0:~# apt-get install openssl 4.查看Openssl安...
  • Docker容器中安装jdk 1.8

    千次阅读 2017-07-06 12:41:01
    [b]注意:[/b]docker cp 命令在 Docker 1.8 之前就有,在旧的版本中,docker cp 命令仅仅容许从容器拷贝文件到主机,在 Docker 1.8 ,Docker cp 命令能够从主机拷贝文件到容器。 在 Docker 1.8 之前的版本中,用-...
  • 近年来云原生容器的应用越来越流行,统计数据显示高达47%生产环境容器镜像会来源于公用仓库[1],Docker Hub作为全球最大的公共容器镜像仓库,已然成为整个云原生应用的软件供应链安全重要一环,其镜像的安全风险问题...
  • Docker容器和本机之间的文件传输

    千次阅读 2019-03-21 15:37:00
    主机和容器之间传输文件的话需要用到容器的ID全称。 获取方法如下: 1.先拿到容器的短ID或者指定的name。 2.然后根据这两项的任意一项拿到ID全称。 有了这个长长的ID的话,本机和容器之间的文件...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 327,836
精华内容 131,134
关键字:

容器下载