美文网首页
虚拟化技术之Docker

虚拟化技术之Docker

作者: 在error边缘疯狂试探 | 来源:发表于2020-04-25 07:36 被阅读0次

    什么是Docker?

    Docker是一个开源的应用容器引擎,是一个轻量级容器技术,Docker支持将软件编译成一个镜像,然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像,运行中的这个镜像称为容器,容器启动是非常快速的。


    Docker镜像

    核心概念

    • docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);

    • docker客户端(Client):连接docker主机进行操作;

    • docker仓库(Registry):用来保存各种打包好的软件镜像;

    • docker镜像(Images):软件打包好的镜像;放在docker仓库中;

    • docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用。


      Docker核心概念

    使用Docker的步骤(Linux)

      1. 安装Docker(确认要安装docker的系统的linux内核高于3.10,低于3.10使用yum update更新)
    yum install docker
    
    • 2.查看docker版本docker -v,查看docker状态service docker status
    • 3.启动docker
    service docker start
    
    • 4.停止dockerservice docker stop,设置docker开机时自动开启systemctl enable docker

    Docker的常用命令

    • 镜像操作
    操作 命令 说明
    检索 docker search 关键字 eg:docker search redis 我们经常去docker hub上检索镜像的详细信息,如镜像的TAG。
    拉取 docker pull 镜像名:tag :tag是可选的,tag表示标签,多为软件的版本,默认是latest
    列表 docker images 查看所有本地镜像
    删除 docker rmi image-id 删除指定的本地镜像
    • 修改镜像源
      修改 /etc/docker/daemon.json ,写入如下内容(如果文件不存在请新建该文件)
    vim /etc/docker/daemon.json
    
    # 内容:
    
    {
    "registry-mirrors":["https://pee6w651.mirror.aliyuncs.com"]
    }
    

    容器操作

    • 以tomcat为例
    1. 下载tomcat镜像
    docker pull tomcat
    

    Tips:如需选择具体版本,默认使用tag :latest ,可以在https://hub.docker.com/搜索tomcat

    例如:docker pull tomcat:7.0.96-jdk8-adoptopenjdk-hotspot
    
    1. 根据镜像启动容器,不加TAG默认latest,如果没有下载latest会先去下载再启动
    docker run --name mytomcat -d tomcat:latest
    

    --name:给容器起个名字
    -d:后台启动,不加就是前端启动,然后你就只能开一个新的窗口连接,不然就望着黑乎乎的窗口,啥也干不了,Ctrl+C即可退出,当然,容器也会关闭

    1. 查看运行中的容器
    docker ps
    
    1. 停止运行中的容器
    docker stop  容器的id
    
    # 或者
    
    docker stop  容器的名称,就是--name给起的哪个名字
    
    1. 启动容器
    docker start 容器id/名字
    
    1. 删除一个容器
    docker rm 容器id/名字
    Copy to clipboardErrorCopied`
    
    1. 启动一个做了端口映射的tomcat
     docker run -d -p 8888:8080 tomcat
    

    -d:后台运行
    -p: 将主机的端口映射到容器的一个端口 主机端口(8888):容器内部的端口(8080)外界通过主机的8888端口就可以访问到tomcat,前提是8888端口开放

    1. 关闭防火墙
    # 查看防火墙状态
    service firewalld status
    
    # 关闭防火墙
    service firewalld stop
    
    1. 查看容器的日志
    docker logs 容器id/名字
    
    • 以MySQL为例
    # 拉取镜像
    docker pull mysql:5.7.28
    
    # 运行mysql容器
    #直接使用端口映射更加方便
    
    docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.28
    

    --name mysql:容器的名字是mysql;

    MYSQL_ROOT_PASSWORD=root:root用户的密码是root (必须指定)

    相关文章

      网友评论

          本文标题:虚拟化技术之Docker

          本文链接:https://www.haomeiwen.com/subject/poqhwhtx.html