Linux下的Docker安装与使用

Posted 小韵豆子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下的Docker安装与使用相关的知识,希望对你有一定的参考价值。

Docker介绍:

    相信很多人都用过虚拟机。虚拟机,就是在你的操作系统里面,装一个软件,然后通过这个软件,再模拟一台甚至多台“子电脑”出来。
    虚拟机,类似于“子电脑”
    在“子电脑”里,你可以和正常电脑一样运行程序,例如开QQ。如果你愿意,你可以变出好几个“子电脑”,里面都开上QQ。“子电脑”和“子电脑”之间,是相互隔离的,互不影响。
    虚拟机属于虚拟化技术。而Docker这样的容器技术,也是虚拟化技术,属于轻量级的虚拟化。
    虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare)。
    
    而容器技术恰好没有这些缺点。它不需要虚拟出整个操作系统,只需要虚拟一个小规模的环境(类似“沙箱”)。
    它启动时间很快,几秒钟就能完成。而且,它对资源的利用率很高(一台主机可以同时运行几千个Docker容器)。此外,它占的空间很小,虚拟机一般要几GB到几十GB的空间,而容器只需要MB级甚至KB级。
    Docker三板斧 “搭建、发送、运行”。
    Docker技术的三大核心概念分别是:镜像(Image)容器(Container)仓库(Repository)
    
    就在Docker容器技术被炒得热火朝天之时,大家发现,如果想要将Docker应用于具体的业务实现,是存在困难的——编排、管理和调度等各个方面,都不容易。于是,人们迫切需要一套管理系统,对Docker及容器进行更高级更灵活的管理。
    就在这个时候,K8S出现了。
    

一,安装与配置

    1.安装依赖包

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

    2.设置阿里云镜像源

        yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

    3.安装 Docker-CE

        sudo yum install docker-ce
        
    4.启动 Docker-CE

        systemctl enable docker
        
        systemctl start docker
    
    
二,镜像操作

  拉取镜像:docker pull java    
  创建镜像:docker build -t 新镜像名 .
  删除容器:docker rm  容器名称
  删除镜像:docker rmi 镜像ID
  运行镜像:docker run --name 新容器名称 -p 6666:6666 -itd  镜像名:版本号
  进入容器:docker exec -it 容器名称 /bin/bash;
  启动容器:docker start 容器名称
  停止容器:docker stop 容器名称
  查询运行的容器:sudo docker ps
  查询全部容器:sudo docker ps -a
  保存镜像:docker save 镜像名 -o 文件名.tar
  加载镜像:docker load -i 文件名.tar
  上传镜像:docker push 私服地址/master-data-biz:版本号 
  查找镜像:docker search 镜像名  
  获取镜像元数据:docker inspect 镜像名
  
  
  
三,docker默认安装目录

    docker安装目录:/var/lib/docker
    
    
    
四,私服

    Harbor是构建企业级私有docker镜像的仓库的开源解决方案    
    
    
五:其它
     查看docker安装列表:yum list installed | grep docker
     卸载docker : yum -y remove docker名
     重启docker:  systemctl restart docker
     
    
     
六:zk+kafka镜像
    重启:
        systemctl restart docker
        
    运行zk: 
        docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2  --name zookeeper -p 2181:2181 --network host -v /etc/localtime:/etc/localtime wurstmeister/zookeeper
    
    运行kafka:
        docker run -d --name kafka -p 9092:9092  --network host -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.108.131:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.108.131:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc/localtime:/etc/localtime wurstmeister/kafka

    运行xxl-job
        docker run -e PARAMS="--spring.datasource.url=jdbc:mysql://192.168.108.1:3306/xxl_job?Unicode=true&characterEncoding=UTF-8 --spring.datasource.username=root  --spring.datasource.password=root" -p 8787:8080 --network host  -v /tmp:/data/applogs --name xxl-job-admin  --privileged=true -itd 69e1d8a0f5f8
     
     route add 172.17.0.0 mask 255.255.255.0 192.168.123.110
     


七:es安装
    下载镜像:
    docker pull elasticsearch:7.8.0
    运行:
    docker run -p 9200:9200 -p 9300:9300 --name elasticsearch  -e "discovery.type=single-node"  -e ES_JAVA_OPTS="-Xms512m -Xmx512m"  -d elasticsearch:7.8.0
    修改配置:
        # 进入容器,追加一下内容,解决跨域问题
        http.cors.enabled: true
        http.cors.allow-origin: "*"


八:kibana安装
    下载镜像:
    docker pull kibana:7.2.0

    #安装完成以后需要启动kibana容器,使用--link连接到elasticsearch容器,命令如下:
    docker run --name kibana --link=elasticsearch:test  -p 5601:5601 -d kibana:7.2.0
    docker start kibana
    
     
     
    

以上是关于Linux下的Docker安装与使用的主要内容,如果未能解决你的问题,请参考以下文章

Linux 下的Docker安装与IDEA配置远程Docker

Linux 下的Docker安装与IDEA配置远程Docker

Linux 下的Docker安装与IDEA配置远程Docker

Linux下的Git三板斧

Linux下的Docker安装与使用

Kubernetes 故障排除三板斧:理解管理和预防