• docker使用


    引用:https://blog.csdn.net/weixin_53279266/article/details/128376653

    写在之前的dockeryum remove docker*
    显示docker版本:yum list docker-ce --showduplicates | sort -r

    # 安装指定版本的docker
    yum -y install docker-ce-18.09.9-3.el7 docker-ce-cli-18.09.9-3.el7
    
    
    # 启动docker
    systemctl start docker
    
    # 开机自动启动
    systemctl enable docker
    
    #重新启动docker
    systemctl restart docker
    systemctl stop docker
    
    
    
    
    # docker常用命令
    docker  images    ====     docker image ls
    docker pull
    
    docker create  #创建一个容器
    docker start   # 启动容器
    docker run # 创建并启动容器
    docker rm
    docker rmi $(docker images -aq)  -f  # $()是bash shell中命令的替换语法
    docker image prune  #移除游离镜像,,没有使用价值的镜像
    
    docker tag  # 给镜像换名字
    docker ps
    
    docker pause  #容器暂停
    docker unpause
    
    docker stop  # 优雅的停止
    docker kill  # 杀掉
    
    • 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
    • 32
    • 33
    • 34
    • 35
    • 36

    下载镜像尽量选择alpine,slim

    容器的状态: created up运行中 pause暂停 exited

    docker logs  #追踪日志 
    docker logs xxx  -f   
    
    docker exec
    docker inspect 
    docker container inspect
    
    
    docker cp # 宿主机和容器之间文件拷贝
    
    docker diff  # 查看容器变化  [A:添加  D:删除  C:更改]
    
    docker commit  # 将容器提交成镜像,,,提交同名。,,同名的镜像会变成游离镜像
    docker image prune # 清除游离镜像
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    推送镜像到远程

    https://hub.docker.com/
    注册自己的dockerhub

    # 推送之前登录
    docker login
    # 改名  ,,改成和远程仓库一样的名字,,,
    docker tag
    docker tag ccnginx:v4 waterkid01/hehe:v4
    # 推送镜像
    docker push waterkid01/hehe:v4
    
    #退出登录
    docker logout
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    docker hub 太慢了,,,使用阿里云的镜像仓库

    docker变成文件
    # 将容器变成 tar,,,, 导出正在运行的容器
    docker export
    # 将tar导入为一个镜像   --- 这样导入容器不能直接启动,,需要复制之前原始容器的启动命令
    docker import
    
    # 查看完整的启动命令
    docker ps -a --no-trunc
    
    # docker import 导入的镜像要带着原来的启动命令启动
    docker run -d -P mynginx:v6 /docker-entrypoint.sh nginx -g 'daemon off;'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    # 将镜像保存为 tar
    docker save
    # 将tar变成image
    docker load
    
    • 1
    • 2
    • 3
    • 4
    # 查看镜像分层
    docker history 镜像名字  
    
    docker ps -s # 容器真实的大小
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述
    overlayFS文件存储系统,,docker底层使用

    #创建卷
    docker volume create xxx  
    docker volume prune
    docker volume ls
    docker inspect volume   # 查看卷的位置
    
    • 1
    • 2
    • 3
    • 4
    • 5
    # 容器更新
    docker update
    
    docker events #监听容器的事件
    
    • 1
    • 2
    • 3
    • 4
    #docker的可视化界面,,,操作docker需要给docker进程通信     ,,,9000端口访问
     docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data  portainer/portainer-ce
    
    
    • 1
    • 2
    • 3
    名字
    • busybox : linux的瑞士军刀,,busybox封装了linux非常多的命令工具,,比如wget,curl 等
    • -alpine :基于busybox上的linux系统,, 超级小的linux,,只有5MB

    遇到的问题
    • yum list docker-ce --showduplicates | sort -r
      Error: No matching Packages to list
      Loading mirror speeds from cached hostfile
      Loaded plugins: fastestmirror

    解决:
    您遇到的错误表明在配置的软件包库中找不到与指定查询(yum list docker-ce --showduplicates)匹配的 Docker 软件包

    sudo yum makecache
    
    
    • 1
    • 2

    在这里插入图片描述
    检查yum配置文件中的配置仓库,通常位于 /etc/yum.repos.d/

    创建一个名为 docker-ce.repo 文件,,其内容如下:

    [docker-ce-stable]
    name=Docker CE Stable - $basearch
    baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
    enabled=1
    gpgcheck=1
    gpgkey=https://download.docker.com/linux/centos/gpg
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    再次运行:

    yum list docker-ce --showduplicates | sort -r
    
    • 1
  • 相关阅读:
    ZYNQ搭建HP总线从DDR进行PL与PS交互
    动手学深度学习—网络中的网络NiN(代码详解)
    低代码开发在人工智能时代的多重前景
    Git基础使用
    ZooKeeper深入探究
    比React—Redux和Redux好用100倍的原子级状态管理器,是我们公司自己封装的npm包,如果感兴趣可以研究研究,会大大提高开发效率
    [源码解析] TensorFlow 分布式之 ClusterCoordinator
    数据结构之数组
    Jenkins自动化部署
    http服务网络请求如何确保数据安全(含python示例源码)
  • 原文地址:https://blog.csdn.net/qq_36022463/article/details/134686917