zoukankan      html  css  js  c++  java
  • 虚拟机linux centos7下安装docker

    一、Docker的安装

    1.Docker官网:https://docs.docker.com/engine/install/centos/

    2.确定CentOS7及以上版本

    cat /etc/redhat-release

    3.yum安装gcc

    yum -y install gcc-c++
    查看版本
    gcc -v

    4.卸载旧版本(sudo表示root用户,如果是root用户不用加sudo,表示换号)

    sudo yum remove docker 
    docker-client 
    docker-client-latest 
    docker-common 
    docker-latest 
    docker-latest-logrotate 
    docker-logrotate 
    docker-engine

    5.安装需要的软件包

    yum install -y yum-utils

    6.设置stable镜像仓库(这里用阿里云镜像,官方镜像慢并且可能会出现一些问题,docker-ce表示社区的docker免费,缺点是有些功能无法使用)

    阿里云镜像安装
    yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    安装成功后查看信息
    cat /etc/yum.repos.d/docker-ce.repo

    7.安装之后,更新yum软件包索引

    yum makecache fast

    8.安装DOCKER centos

    yum install docker-ce

    9.启动docker

    启动docker
    systemctl start docker
    版本查看
    docker version

    查看docker已有镜像
    sudo docker images

    设置开机自启动
    sudo systemctl enable docker

    10.测试

    docker run hello-world

    11.配置镜像加速(这里用到vim,不会的百度搜索【linux 保存vim编辑】,配置阿里云镜像加速器,前提是注册并开通了阿里云服务,下边有介绍)

    配置截图

    上边配置用到的命令

    1.创建文件
    mkdir -p /etc/docker 2.修改配置,设置镜像
    vim
    /etc/docker/daemon.json {"registry-mirrors": ["https://你的阿里云加速器.aliyuncs.com"]}//阿里云镜像加速器,每个阿里云的加速器不一样 3.重启后台线程
    systemctl daemon
    -reload 4.重启dorker
    systemctl restart docker

    执行vim /etc/docker/daemon.json后的界面(注意这里,把你的阿里云镜像加速器地址加上去,然后按esc会退出编辑,然后输入英文冒号:在输入wq,最后按回车即可保存。这里用到vim,不会的百度搜索【linux 保存vim编辑】)

    阿里云镜像加速器地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

    阿里云镜像加速器需要注册阿里云用户,然后找到【容器镜像服务 ACR】->【管理控制台】->【镜像工具】->【镜像加速器】

    12.卸载

    卸载 Docker Engine、CLI 和 Containerd 包
    sudo yum remove docker-ce docker-ce-cli containerd.io 主机上的映像、容器、卷或自定义配置文件不会自动删除。删除所有镜像、容器和卷: sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd

    二、Docker集成项目环境

    1.Docker集成redis

    1.1网址:https://hub.docker.com/

    搜索redis

     

    1.2下载镜像文件

    docker pull redis

    1.3创建实例并启动

    创建

    创建redis配置文件目录
    mkdir -p /mydata/redis/conf
    容器内部只有etc/redis这两层目录,使用tocu创建redis.conf
    touch /mydata/redis/conf/redis.conf

    启动redis容器

    • linux的6379映射到docker的6379
    • --name redis给容器起个名称-redis
    • -v 把docker容器内部的/data文件夹挂载到linux外部的/mydata/redis/data文件夹中(/data中存放的是redis的数据)
    • -d 后台运行,以redis镜像启动,同时指定服务以加载redis.conf这个配置文件加载
    docker run -p 6379:6379 --name redis 
    -v /mydata/redis/data:/data 
    -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf 
    -d redis redis-server /etc/redis/redis.conf

    使用docker ps查看redis是否启动成功

    [root@localhost conf]# docker ps
    CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS                                       NAMES
    e77296835c8b   redis     "docker-entrypoint.s…"   27 seconds ago   Up 25 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp   redis 

    1.4测试redis

    直接连接redis客户端。

    docker exec -it redis redis-cli 

    新建a并赋值为b。

    [root@localhost conf]# docker exec -it redis redis-cli
    127.0.0.1:6379> set a b
    OK
    127.0.0.1:6379> get a
    "b"
    127.0.0.1:6379> exit

    1.5redis持久化(新版本可能默认持久化)

    [root@localhost conf]# docker exec -it redis redis-cli
    127.0.0.1:6379> get a
    "b"
    127.0.0.1:6379> exit
    [root@localhost conf]# docker exec -it redis redis-cli
    127.0.0.1:6379> exit
    [root@localhost conf]# pwd
    /mydata/redis/conf
    [root@localhost conf]# ls
    redis.conf
    [root@localhost conf]# vi redis.conf
    [root@localhost conf]# docker restart redis 
    redis
    [root@localhost conf]# 

    执行vi redis.conf会弹出下面的窗口,按i进入编辑模式,输入appendonly yes,然后按ESC,英文:wq,最后回车。

    1.5redis容器随docker启动自动运行

    redis容器随docker启动自动运行
    docker update redis --restart=always

    1.6redis.conf文件官网参考

    地址:https://redis.io/topics/config#redis-configuration

  • 相关阅读:
    使用promise手动封装ajax函数
    node c++多线程插件构想
    node c++多线程插件 第一天 c++线程相关函数
    gps数据转百度地图坐标
    node.js异步控制流程 回调,事件,promise和async/await
    重回博客 谈一谈Node中的异步和单线程
    关于js模拟c#的Delegate(委托)实现
    基础知识 字符编码简介
    工作经历20130316
    Sql Server 学习1
  • 原文地址:https://www.cnblogs.com/konglxblog/p/14968147.html
Copyright © 2011-2022 走看看