• Docker 安装使用


    1:安装

    在Linux上安装Docker,要求64位操作系统,并且内核版本需求为3.10以上,查看本机Linux内核版本:

    [root@localhost ~]# uname -r
    3.10.0-327.4.4.el7.x86_64

    安装参考资源:http://get.daocloud.io/#install-docker

    下面采用二进制包安装方式:

    [root@localhost ~]# 
    curl -fsSLO https://get.daocloud.io/docker/builds/Linux/x86_64/docker-17.05.0-ce.tgz
    [root@localhost ~]#
    tar --strip-components=1 -xvzf docker-17.05.0-ce.tgz -C /usr/local/bin

    启动Docker,并查看版本信息:

    [root@localhost ~]# service docker start
    Redirecting to /bin/systemctl start  docker.service
    [root@localhost ~]# docker -v
    Docker version 1.12.6, build 1398f24/1.12.6

    在使用Docker时,需要使用Docker命令工具docker与Docker Daemon建立通信,Docker Daemon是Docker的守护进程,负责接收并分发执行Docker命令。

    以上安装是在CentOS7.0上面进行,如果是Ubuntu14.04采用同样的方式安装,启动会报错:

    root@hd-slave1:~# dockerd 
    WARN[0000] could not change group /var/run/docker.sock to docker: group docker not found 
    INFO[0000] libcontainerd: new containerd process, pid: 27014 
    WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
    WARN[0001] failed to rename /var/lib/docker/tmp for background deletion: %!s(<nil>). Deleting synchronously 
    INFO[0001] [graphdriver] using prior storage driver: aufs 
    INFO[0001] Graph migration to content-addressability took 0.00 seconds 
    WARN[0001] Your kernel does not support cgroup memory limit 
    WARN[0001] Unable to find cpu cgroup in mounts          
    WARN[0001] Unable to find blkio cgroup in mounts        
    WARN[0001] Unable to find cpuset cgroup in mounts       
    WARN[0001] mountpoint for pids not found     
    Error starting daemon: Devices cgroup isn't mounted

    原因是cgroup在宿主机上没有挂载。

    解决方法:

    vim /etc/fstab
    #在最后一行增加以下配置信息:
    none        /sys/fs/cgroup        cgroup        defaults    0    0

    例如:

    重启机器问题解决。

    2:常用命令

    Docker启动之后,就可以使用docke来创建与管理镜像了。

    (1)docker run

    docker run 命令用来基于特定的镜像创建一个容器,并依据选项来控制容器。docker run命令启动的容器会随机分配一个容器的ID,用以标识该容器。Docker run命令可以新建一个容器来运行,而对于已经存在的容器,可以通过docker start/stop/restart命令来启动、停止、重启。

    例1:docker run –name java8 –it java:8 java –version,运行上面的指令,Docker将启动一个包含Java:8镜像的容器,如果本地没有这个Java:8镜像,将会从远程的镜像服务器中下载一个符合版本号的镜像,接着执行java –version指令打印其版本信息。

    例2:docker run Ubuntu echo “Hello Docker”,运行上面的指令,Docker将从Ubuntu镜像中启动一个容器,并执行echo命令打印出Hello Docker,执行完命令后容器将停止运行。

    [root@localhost ~]# docker run ubuntu echo "Hello,world"
    Unable to find image 'ubuntu:latest' locally
    Trying to pull repository docker.io/library/ubuntu ... 
    latest: Pulling from docker.io/library/ubuntu
    e0a742c2abfd: Pull complete 
    486cb8339a27: Pull complete 
    dc6f0d824617: Pull complete 
    4f7a5649a30e: Pull complete 
    672363445ad2: Pull complete 
    Digest: sha256:84c334414e2bfdcae99509a6add166bbb4fa4041dc3fa6af08046a66fed3005f
    Hello,world
    [root@localhost ~]#

    在选取启动容器的镜像时,可以在镜像名称后面增加tag来区分同名的镜像,如:ubuntu:14.04、ubuntu:last,如果用户未指定具体的tag,Docker将默认选取tag为latest的镜像。

    (2)docker pull

    主要用于从Docker registry中拉取image或repository。在Docker Hub中有许多即拿即用的镜像资源,通过docker pull命令可以有效的利用他们。

    (3)docker images

    通过docker images可以列出主机上的镜像,默认只列出最顶层的镜像,-a参数可以列出所有镜像。

  • 相关阅读:
    WSL2
    坐标系变换
    Python websocket
    PAJ7620 IIC 通信
    Python中assert的使用
    Python中循环的使用
    Linux 生成指定大小文件
    SVN不显示log 显示1970年问题
    阿里云 CS实例 开机自运行脚本文件
    生成UDS安全算法DLL文件
  • 原文地址:https://www.cnblogs.com/yshyee/p/7258457.html
Copyright © 2020-2023  润新知