• linux centos7 非root用户安装源码版docker


    注意:非root用户必须要有sudo权限

    一、安装前的准备

    1.查看当前主机是否有docker组

    若没有输出结果则新建

    再次查看,发现已经有了docker组

    2.把需要使用docker指令的用户加入到docker组,此时用户并没有加入进docker组

    退出当前用户,重新登录,此时可以看到用户已经加入docke

    二、安装docker

    1.下载docker源码包并上传至虚拟机

    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/static/stable/x86_64/

    2.解压源码包至指定目录下

    3.将解压出来的docker目录下的指令复制到 /usr/bin/ 目录下

    sudo cp docker/* /usr/bin/

    4./usr/bin/目录下docker有关指令的所属用户和所属组(必做,不然非root用户使用docker指令报错:权限不够)

    sudo chown root:docker /usr/bin/docker*
    sudo chown root:docker /usr/bin/containerd*
    sudo chown root:docker /usr/bin/runc
    sudo chown root:docker /usr/bin/ctr

    5.查看一下是否改变所属用户和所属组(得到和解压出来的docker目录下的一样的8个指令)

    6.将docker注册为service服务

    新建该文件
    sudo vi /etc/systemd/system/docker.service
    
    加入以下内容:
    [Unit]
    Description=Docker Application Container Engine
    Documentation=https://docs.docker.com
    After=network-online.target firewalld.service
    Wants=network-online.target
      
    [Service]
    Type=notify
    ExecStart=/usr/bin/dockerd 
    ExecReload=/bin/kill -s HUP $MAINPID
    LimitNOFILE=infinity
    LimitNPROC=infinity
    LimitCORE=infinity
    TimeoutStartSec=0
    Delegate=yes
    KillMode=process
    Restart=on-failure
    StartLimitBurst=3
    StartLimitInterval=60s
      
    [Install]
    WantedBy=multi-user.target

    7.添加执行权限并重新加载配置文件

    sudo chmod a+x /etc/systemd/system/docker.service
    sudo systemctl daemon-reload

    8.docker镜像加速(可以不做,但是docker pull会很慢,由于docker官网在海外)

    新建该文件
    sudo vi /etc/docker/daemon.json 
    
    加入以下内容
    {
    "registry-mirrors": ["http://hub-mirror.c.163.com"]
    }

    9.启动docker

    sudo systemctl start docker

    三、docker基础命令

    1、其他指令
    docker启/停/重启/查看状态
    sudo systemctl start/stop/restart/status
    查看当前安装的docker有关信息
    docker info

    2、镜像相关指令

    查看已有镜像
    docker images

    在docker官网搜寻指定镜像
    docker search 镜像

    下载镜像(不加标签默认下载最新版本的镜像)
    docker pull 镜像名字:tag(即标签)

    保存已有镜像
    docker save -o name.tar 镜像name:tag

    加载镜像
    docker load -i name.tar

    镜像的删除(删除镜像前请删除所有与该镜像有关的容器)
    docker rmi 镜像ID(或name:tag)

    修改镜像name和tag
    docker tag 镜像name 新镜像name:新tag

    3、容器相关指令

    启动容器(-d:后台运行;--name:指定容器名字;-p:映射容器端口到本机端口;-v:容器目录文件挂载至本机目录)
    docker run -d --name 自定义容器name -p 本机端口:容器端口 -v 本机目录:容器目录 镜像ID(或name:tag)

    进入正在运行的容器内部(-i:以交互模式运行容器;-t:为容器重新分配一个伪输入终端.通常it一起使用)
    docker exec -it 容器name(或ID) /bin/bash

    容器的启/停/重启/删除
    docker start/stop/restart/rm 容器name(或ID)

    查看容器端口映射
    docker port 容器name(或ID)

    查看容器信息
    docker inspect 容器name(或ID)

    查看正在运行的容器
    docker ps

    查看所有容器(包括正在运行的、停止的,不包括删除的)
    docker ps -a

    查看容器内的进程
    docker top 容器name(或ID)

    监控并显示最新100行的容器日志(可以直接使用docker logs容器name(或ID),但是日志容量大的最好加上条件)
    docker logs -f --tail=100 容器name(或ID)


  • 相关阅读:
    sqlserver建立临时表
    动态引用WebService
    技术的力量:30分钟的动画片和《彗星撞地球》超炫的动画 仅64K
    sqlserver2005新功能函数
    使用面向对象的、完整的单点登录功能
    asp.net上传功能(单文件,多文件,自定义生成缩略图,水印)
    C#对字符和文件的加密解密类
    JavaScript中setInterval函数应用常见问题之一(第一个参数不加引号与加引号的区别)
    JavaScript表格隔行换色悬停高亮
    Javascript模拟c#中arraylist操作(学习分享)
  • 原文地址:https://www.cnblogs.com/gudanaimei/p/12204989.html
Copyright © 2020-2023  润新知