• docker基础——自定义镜像、创建私有仓库、查看 docker 运行状态


    一、自定义镜像

    1,案例1

    要求:请自定义一个 docker 镜像,基于 hub.c.163.com/library/centos,要求创建出来的镜像在生成容器的时候,可以直接使用 ifconfig 命令
    自定义镜像,输入 vim Dockerfile:

    RUN rpm --import
    FROM hub.c.163.com/library/centos
    MAINTAINER suyunanyan
    RUN rpm --import/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-*
    RUN yum install net-tools -y
    CMD ["/bin/bash"]

    运行:-t 后面是自定义镜像的名称 .表示当前目录 Dockerfile

    docker build -t centos .

    docker查看images:

    测试这个镜像:

    --rm 表示退出后自动删除

    退出后,docker ps -a | grep centos ,没有之前的centos了:

    2,案例2

    要求:通过自定义安装nginx,是的本地的index.html作为Nginx默认访问页面

    安装 epel.repo:

    yum install *epel* -y

    查看

    ls /etc/yum.repos.d/

    拷贝 epel.repo 到当前目录

    cp /etc/yum.repos.d/epel.repo epel.repo

    新建 index.html

    echo 'hello docker!!!' > index.html

    vim Dockerfile

    输入:

    RUN rpm --import
    FROM hub.c.163.com/library/centos
    MAINTAINER suyunnanyan
    RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-*
    ADD epel.repo /etc/yum.repos.d/
    RUN yum install net-tools nginx -y
    RUN rm -rf /usr/share/nginx/html/
    ADD index.html /usr/share/nginx/html/
    CMD ["nginx", "-g","daemon off;"]

    创建镜像:

    docker build -t nginx .

    运行镜像:

    docker run -dit --rm -p 80:80 nginx

    访问该服务:

    二、创建私有仓库

    docker pull hub.c.163.com/library/registry:latest

    运行registry镜像:

    docker run -dit --name=r_hub -p 5000:5000 -v /home/docker/registry:/var/lib/registry hub.c.163.com/library/registry

    docker ps | grep regi

    在 192.168.222.151 虚拟机上运行命令

    docker pull redis

    docker tag docker.io/redis 192.168.222.151:5000/gzuni/redis

    推送

    docker push 192.168.222.151:5000/gzuni/redis

    为什么会推送失败?因为推送用的是https,修改设置:

    vim /etc/docker/daemon.json

    重启docker:

    systemctl restart docker

    再次推送:

    docker push 192.168.222.151:5000/gzuni/redis

    查看本地仓库:

    curl -XGET http://192.168.222.151:5000/v2/_catalog

    查看tags:

    curl -XGET http://192.168.222.151:5000/v2/gzuni/redis/tags/list

    删除本地镜像:

    docker rmi -f docker.io/redis

    从本地仓库下载

    docker pull 192.168.222.151:5000/gzuni/redis:latest

    仓库中删除镜像

    curl https://raw.githubusercontent.com/burnettk/delete-docker-registry-image/master/delete_docker_registry_image.py | sudo tee /usr/local/bin/delete_docker_registry_image >/dev/null chmod a+x /usr/local/bin/delete_docker_registry_image

    设置仓库目录:

    export REGISTRY_DATA_DIR=/home/docker/registry/docker/registry/v2

    输入删除命令:

    /usr/local/bin/delete_docker_registry_image gzuni/redis:latest

    三、查看 docker 运行状态

    docker stats

    查看操作系统

    free -m

    限制内存运行

    docker run -it --rm -m 200M centos

    设置 cpu 亲和性

    docker run -it --rm --name=c1 --cpuset-cpus=1 centos

    docker 监控

    docker pull hub.c.163.com/xbingo/cadvisor:latest

    docker run -v /var/run:/var/run -v /sys:/sys:ro -v /var/lib/docker:/var/lib/docker:ro -d -p 8080:8080 --name=mon hub.c.163.com/xbingo/cadvisor:latest

    浏览器输入http://192.168.222.151:8080/containers/ :

    原文地址:https://blog.csdn.net/qq_22059611/article/details/83038041
  • 相关阅读:
    性能测试之-响应时间
    性能测试之-分类
    CSS 的基础语法
    linux之-mysql数据库约束3
    linux之-mysql数据库2
    linux安装mysql
    反向树状数组
    曼哈顿最小生成树
    最小生成树的性质
    CSA Round 84 Growing Trees
  • 原文地址:https://www.cnblogs.com/jpfss/p/10949284.html
Copyright © 2020-2023  润新知