美文网首页
springboot之docker

springboot之docker

作者: eliteTyc | 来源:发表于2019-12-16 11:25 被阅读0次
    • 安装docker
    yum install docker
    
    • 启动docker
    systemctl start docker
    
    • 检查docker是否启动成功
    docker -v
    显示:Docker version 1.13.1, build 7f2769b/1.13.1
    
    • 修改docker国内镜像加速
      • 访问 阿里云docker加速
      • vim /etc/docker/daemon.json
        {
          "registry-mirrors": ["加速地址"]
        }
        
      • 使生效:sudo systemctl daemon-reload
      • 重启docker服务:sudo systemctl restart docker
    • 设置docker开机自启
    systemctl enable docker
    
    • 停止docker服务
    systemctl stop docker
    
    • docker常用操作
      1. 检索:docker search mysql(需要搜索的镜像名称)
      INDEX       NAME                                        DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
      docker.io   docker.io/mysql                             MySQL is a widely used, open-source relati...   8930      [OK]       
      docker.io   docker.io/mariadb                           MariaDB is a community-developed fork of M...   3140      [OK]       
      docker.io   docker.io/mysql/mysql-server                Optimized MySQL Server Docker images. Crea...   659                  [OK]
      docker.io   docker.io/percona                           Percona Server is a fork of the MySQL rela...   462       [OK]       
      docker.io   docker.io/centos/mysql-57-centos7           MySQL 5.7 SQL database server                   66                   
      docker.io   docker.io/centurylink/mysql                 Image containing mysql. Optimized to be li...   61                   [OK]
      docker.io   docker.io/mysql/mysql-cluster               Experimental MySQL Cluster Docker images. ...   59                   
      docker.io   docker.io/deitch/mysql-backup               REPLACED! Please use http://hub.docker.com...   41                   [OK]
      docker.io   docker.io/bitnami/mysql                     Bitnami MySQL Docker Image                      35                   [OK]
      docker.io   docker.io/tutum/mysql                       Base docker image to run a MySQL database ...   34                   
      docker.io   docker.io/schickling/mysql-backup-s3        Backup MySQL to S3 (supports periodic back...   28                   [OK]
      docker.io   docker.io/prom/mysqld-exporter                                                              23                   [OK]
      docker.io   docker.io/linuxserver/mysql                 A Mysql container, brought to you by Linux...   22                   
      docker.io   docker.io/centos/mysql-56-centos7           MySQL 5.6 SQL database server                   17                   
      docker.io   docker.io/circleci/mysql                    MySQL is a widely used, open-source relati...   16                   
      docker.io   docker.io/mysql/mysql-router                MySQL Router provides transparent routing ...   14                   
      docker.io   docker.io/arey/mysql-client                 Run a MySQL client from a docker container      13                   [OK]
      docker.io   docker.io/openshift/mysql-55-centos7        DEPRECATED: A Centos7 based MySQL v5.5 ima...   6                    
      docker.io   docker.io/fradelg/mysql-cron-backup         MySQL/MariaDB database backup using cron t...   4                    [OK]
      docker.io   docker.io/genschsa/mysql-employees          MySQL Employee Sample Database                  3                    [OK]
      docker.io   docker.io/ansibleplaybookbundle/mysql-apb   An APB which deploys RHSCL MySQL                2                    [OK]
      docker.io   docker.io/devilbox/mysql                    Retagged MySQL, MariaDB and PerconaDB offi...   2                    
      docker.io   docker.io/jelastic/mysql                    An image of the MySQL database server main...   1                    
      docker.io   docker.io/monasca/mysql-init                A minimal decoupled init container for mysql    0                    
      docker.io   docker.io/widdpim/mysql-client              Dockerized MySQL Client (5.7) including Cu...   0                    [OK]
      
      
      1. 拉取镜像:docker pull mysql(镜像名称,也就是上一步搜索结果NAME字段中去掉docker.io/后的名称)
        • 默认下载的是latest版本的镜像,需要下载其他版本可以使用:docker pull mysql:5.5(版本号)
      2. 查看镜像列表:docker images
      3. 删除镜像:
        • 删除未运行过的镜像
          1. 直接:docker rmi 镜像id
        • 删除已运行过的镜像
          1. 先删除运行时生成的容器
            • docker ps -a 查看所有的容器
            • 如果当前容器在运行:docker stop 容器id
            • 当前容器未运行:docker rm 容器id
          2. 删除镜像:docker rmi 镜像id
      4. 运行镜像
      docker run -p 80:8080 --name 自己给容器取的名字 -d 镜像的名称:版本号
      例如:docker run -p 3306:3306 --name MyMySql -d mysql:latest
      --name是给容器去一个别名  -d是表示后台运行,否者命令行窗口关闭,容器就停止运行了
      -p 8888:8080 设置端口映射,前一个端口为主机的端口,后一个端口为docker的端口,意思是访问主机的8888端口相当于访问docker的8080端口
      注意:不同镜像的运行方式,所带参数不同,可以根据官方文档进行运行
      
      1. 查看容器列表 docker ps -a
      2. 查看容器的启动日志: docker logs 容器id
    • 其他操作
      • 修改原镜像生成新的镜像
        1.运行tomcat镜像
         // -d 表示后台运行,否则控制台一退出,tomcat也退出了
         docker run -d -p 8888:8080 tomcat
        
        2.进入tomcat容器删除doc文件夹
        // 进入正在运行的容器
        docker exec -it 容器id /bin/bash
        // 进入/usr/local/tomcat/webapps 删除doc目录
         rm -rf doc
        
        3.生成新的容器
        docker commit -a="tyc" -m="没有doc的tomcat容器" 4f8827c136ee elitetyc/tomcat:1.0
        
        4.查看镜像并且运行
        //docker images
        elitetyc/tomcat                1.0                 51983f8840ee        54 seconds ago      507MB
        // docker run -d -p 8888:8080 51983f8840ee(生成的镜像的id)
        
    • 制作镜像
      • 1.编写Dockerfile文件
    //从那个基础镜像开始构建
    FROM centos
    // 设置一个变量 mypath 为/tmp
    ENV mypath /tmp
    // 将登录目录设置为tmp
    WORKDIR $mypath
    // 执行命令安装vim和网络工具
    RUN yum -y install vim
    RUN yum -y install net-tools
    // 对外暴露80端口
    EXPOSE 80
    // 打印输出提示
    CMD echo "构建成功..."
    CMD /bin/bash
    
    • 构建镜像
      1.进入编写dockerfile的目录执行以下命令
      docker build -t 要生成的镜像名称:版本号 .
      
      注意:最后一个点表示在当前目录下寻找dockerfile文件

    相关文章

      网友评论

          本文标题:springboot之docker

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