zoukankan      html  css  js  c++  java
  • Centos安装docker及常见docker容器创建脚本

    系统要求

    • 安装docker CE需要CentOS 7的维护版本,存档版本(没在维护的版本)不支持
    • 必须开启centos-extras仓库,默认是打开的,如果被关闭了,需要重新打开
    • 推荐使用overlay2存储驱动,overlay也可以但是不推荐。overlay2要求Linux内核为4.0+

    卸载旧版本

      旧版本的docker叫做docker或者docker-engine ,如果有安装,先卸载其以及其依赖,新版本的docker叫做docker-ce(Community Edition)/var/lib/docker/目录下的镜像文件,容器,卷和网络将会被保留,不会被删除。

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

    安装

    安装依赖包,yum-utils提供yum-config-manager工具,devicemapper存储驱动需要device-mapper-persistent-datalvm2

    $ sudo yum install -y yum-utils 
      device-mapper-persistent-data 
      lvm2

    使用下面的命令安装稳定版仓库,即使安装最新体验版或者是测试版也需要稳定版仓库。

    $ sudo yum-config-manager 
        --add-repo 
        https://download.docker.com/linux/centos/docker-ce.repo

    安装最新版本的docker CE

    $ sudo yum install -y docker-ce

    注意:如果安装了多个docker仓库,使用yum install或者yum update命令时后面不跟版本信息的话,将始终安装最高版本的docker,要安装指定版本的docker CE,可使用以下命令查询版本,版本号从高到低

    $ yum list docker-ce --showduplicates | sort -r
    docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
    docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
    docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
    docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-stable

    安装指定版本的docker CE,需要指定完整的包名称,例如安装仓库中的这个版本 18.03.0.ce-1.el7.centos ,其命令为

    $ sudo yum install -y docker-ce-18.03.0.ce

    配置

    启动docker,即启动docker deamon/守护进程/引擎

    $ sudo systemctl start docker

    设置docker开机自启

    $ sudo systemctl enable docker

    常见docker容器的创建脚本

    拉取镜像

    docker pull fauria/vsftpd
    docker pull redis
    docker pull mysql:5.7
    docker pull rabbitmq:management

    ftp:

    docker run -d -p 21:21 -p 20:20 -p 21100-21110:21100-21110 -v /home/vsftpd:/home/vsftpd -e FTP_USER=root -e FTP_PASS=root -e PASV_ADDRESS=172.19.45.25 -e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 --name vsftpd --restart=always fauria/vsftpd

    redis:

    docker run -d --name redis -p 6379:6379 redis --requirepass "123456"

    mysql:

    mkdir /opt/mysql

    mkdir /opt/mysql/conf

    mkdir /opt/mysql/data

    vim /opt/mysql/conf/my.cnf

    [mysqld]
    character_set_server = utf8
    [mysqld_safe]
    character_set_server = utf8
    [mysql]
    default-character-set = utf8
    [mysql.server]
    default-character-set = utf8
    [client]
    default-character-set = utf8

    再执行

    docker run -d -p 3306:3306 --privileged=true -v /opt/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /opt/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

    rabbitmq:

    docker run -d --hostname rabbitmqHost --name rabbitmq -p 15672:15672 -p 5672:5672 rabbitmq:management
  • 相关阅读:
    Effective.Java第67-77条(异常相关)
    淘宝店的图片哪里来的
    SEO高手在扯蛋?
    多少人,没能熬过那最初的三厘米!
    网站要提高权重要总结三点
    真正的干货是什么?
    google打不开怎么办?谷歌打不开的解决方法
    StatCounter
    教你如何抢注一个快过期的域名
    正确识别希捷Backup Plus新睿品1TB正品,杜绝奸商猖獗
  • 原文地址:https://www.cnblogs.com/guanghe/p/14700986.html
Copyright © 2011-2022 走看看