zoukankan      html  css  js  c++  java
  • docker

    (一)、安装docker
    1)sudo yum install -y yum-utils
    device-mapper-persistent-data
    lvm2
    2)sudo yum-config-manager
    --add-repo
    https://download.docker.com/linux/centos/docker-ce.repo
    3)sudo yum install docker-ce docker-ce-cli containerd.io
    4)在/usr/lib/systemd/system/docker.service中可修改以下参数:
    --data-root 指定docker运行的数据存放位置
    ExecStart=/usr/bin/dockerd --data-root /data/tools/docker/ -H fd:// --containerd=/run/containerd/containerd.sock
    5)阿里云镜像加速器
    https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

    mkdir -p /etc/docker
    vim /etc/docker/daemon.json
    {
    "registry-mirrors": ["https://i21isphl.mirror.aliyuncs.com"]
    }
    sudo systemctl daemon-reload
    sudo systemctl restart docker

    (二)、启动docker
    systemctl start docker

    (三)、docker版本查询
    docker -v
    Docker version

    (四)、安装docker-compose
    1)、下载:https://github.com/docker/compose/releases/tag/1.26.0-rc3
    sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose(慢)
    2)、可执行权限:chmod +x /usr/local/bin/docker-compose
    3)、ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
    4)、docker-compose --version


    (五)、docker常用命令

    1、帮助命令
    docker version
    docker info
    docker --help
    2、镜像命令
    (1)列出本地主机上的镜像文件
    docker images
    -a:列出本地所有的镜像(含中间镜像层)
    -q:只显示镜像ID
    --digests:显示镜像的摘要信息
    --no-trunc:显示完整的镜像信息
    (2)docker search 某个镜像的名称
    网站:https://hub.docker.com/
    命令:
    -s:列出收藏数不小于指定值的镜像
    --no-trunc:显示完整的镜像描述
    --automated:只列出自动构建的镜像
    (3)下载镜像(
    配置阿里云镜像加速 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors)
    docker pull 某个镜像的名称[:TAG]
    例:docker pull tomcat 等价于 docker pull tomcat:latest
    (没写版本号代表自动下载最新版本)
    (4)删除镜像
    docker rmi 某个镜像ID或唯一镜像名(没写版本号代表删除最新版本)
    删除单个:docker rmi -f 镜像ID
    删除多个:docker rmi -f 镜像名1:TAG 镜像名2:TAG
    删除全部:docker rmi -f $(docker images -qa)
    3、容器命令
    有镜像才能创建容器,这是根本前提
    (1)新建并启动容器---启动交互式容器
    docker run [options] image [commnd] [arg...]
    根据镜像新建这个镜像的具体实例容器
    options:
    --name=“容器新名称”:为容器指定一个名称
    -i:以交互模式运行容器,通常与-t同时使用
    -t:为容器重新分配一个伪输入终端,通常与-i同时使用
    -d:后台运行容器,并返回容器ID,也即启动守护式容器
    -P:随机端口映射
    -p:指定端口映射
    (2)列出当前所有正在运行的容器
    docker ps
    -l:显示最近创建的容器
    -a:列出当前所有正在运行的容器+历史上运行过的
    -n:显示最近n个创建的容器
    -q:静默模式,只显示容器编号
    (3)退出容器
    两种退出方式
    第一:exit 容器停止退出
    第二:ctrl+P+Q 容器不停止退出
    (4)启动容器
    docker start 容器ID或容器名
    (5)重启容器
    docker restart 容器ID或容器名
    (6)停止容器
    docker stop 容器ID或容器名
    (7)强制停止容器
    docker kill 容器ID或容器名
    (8)删除已停止的容器
    docker rm 容器ID或容器名
    一次性删除多个容器
    docker rm -f $(docker ps -a -q)
    docker ps -a -q | xargs docker rm

    (9)重要
    (9.1)、启动守护式容器
    docker run -d image 使用镜像以后台模式启动一个容器
    (9.2)、查看容器日志
    docker logs -f -t --tail 容器id (-t 加入时间 -f实时更新 --tail 倒数几行)
    (9.3)、查看容器内运行的进程
    docker top 容器id
    (9.4)、查看容器内部的细节
    docker inspect 容器id
    (9.5)、进入正在运行的容器并以命令行交互
    docker exec -it 容器id bashShell
    docker attach 容器id
    上述两个区别:
    attach:直接进入容器启动命令的终端,不会启动新的进程
    exec:在容器中打开新的终端,并且可以启动新的进程
    例如:
    docker run -it centos /bin/bash (/bin/bash默认,可写可不写)
    ctrl+P+Q
    docker ps
    docker attach 容器id
    ls -l(查看docker内centos精简版的容器的当前目录下的内容)

    ctrl+P+Q
    docker ps
    a、docker exec -it 容器id ls -l /tmp
    b、docker exec -it 容器id /bin/bash 类似attach

    (9.6)、从容器内拷贝文件到主机上
    docker cp 容器id:容器内的路径 目的主机路径

  • 相关阅读:
    68、成员列表初始化?
    67、类成员初始化方式?构造函数的执行顺序 ?为什么用成员初始化列表会快一 些?
    64、malloc申请的存储空间能用delete释放吗?
    63、new和delete的实现原理, delete是如何知道释放内存的大小的额?
    62、delete p、delete [] p、allocator都有什么作用?
    60、C++模板是什么,你知道底层怎么实现的?
    nyoj--814--又见拦截导弹(动态规划+贪心)
    hdoj--1950--Bridging signals(二分查找+LIS)
    nyoj--214--单调递增子序列(二)(二分查找+LIS)
    hdoj--1010--Tempter of the Bone(搜索+奇偶剪枝)
  • 原文地址:https://www.cnblogs.com/xiaoxianxianxian/p/12731413.html
Copyright © 2011-2022 走看看