docker 学习记录

Docker 笔记记录

一、docker 常用命令:

  • docker镜像相关命令

    # 查看所有镜像
    docker images
    # 根据名查看镜像,例如:
    docker images tomcat
    # 删除镜像
    docker rmi [镜像名]或[镜像id]
    # 删除所有镜像,根据id删除
    docker rmi $(docker images -aq)
    
  • docker容器相关命令

    # 查看运行的容器
    docker ps
    # 查看所有的容器
    docker ps -a 
    # 删除容器
    docker rm [-f](强制删除,删除运行的容器需要-f) [容器名]或[容器id] 
    # 删除所有容器
    docker rm -f $(docker ps -aq)
    # 根据镜像id/名称启动一个容器
    docker run [-i] [-t] -[d] [--name(指定容器的名称,例如:--name mytomcat)] [-p](指定端口,例如:8080:8080,宿主的8080映射容器的8080端口) [-v(目录挂载,宿主目录:容器目录),例如:-v /usr/local:/usr/data] 镜像名/镜像id [/bin/bash]
    # 启动容器
    docker start 容器名字/容器id
    # 重启容器
    docker restart 容器名字/容器id
    # 停止容器
    docker stop 容器名字/容器id
    
  • 查看容器信息

    [root@localhost tiger-test]# docker inspect --help
    
    Usage:  docker inspect [OPTIONS] NAME|ID [NAME|ID...]
    
    Return low-level information on Docker objects
    
    Options:
      -f, --format string   Format the output using the given Go template
      -s, --size            Display total file sizes if the type is container
          --type string     Return JSON for specified type
      # docker inspect 返回的是 JSON 格式的信息,如果您想获取其中指定的一项内容,可以通过 -f 来指定,如获取镜像大小:    
     # 查看tomcat容器信息
     docker ps inspect tomcat/容器id
     # 根据当前的容器生成新的镜像
     docker commit -a="author"(作者) -m="描述" my-tomcat:1.0(容器id/容器名 新镜像的名字和标签)
    
  • 查看容器日志

    docker logs -t -f [--tail 100(查看最后100日志)]
    

二、编写Dockerfile文件

  • Dockerfile 构建tomcat,java1.8 的镜像文件

    1. 编写Dockerfile文件

      # 制作tomcat镜像
      FROM centos
      MAINTAINER nzg<957608954@qq.com>
      # 把java和tomcat添加到容器中
      ADD ./apache-tomcat-7.0.105.tar.gz /usr/local/ 
      ADD ./jdk-8u251-linux-x64.tar.gz /usr/local/ 
      # 安装vim编辑器
      # RUN yum -y install vim
      # 设置工作访问是的目录,WORKIR,登录落脚点
      ENV MYPATH /usr/local
      WORKDIR $MYPATH
      # 匿名挂载卷,例如:把容器中的 /local/apache-tomcat-7.0.105/webapps 目录挂载到本机的/var/lib/docker/volumes/***
      VOLUME /local/apache-tomcat-7.0.105/webapps
      # 配置java和tomcat环境变量
      ENV JAVA_HOME /usr/local/jdk1.8.0_251 
      ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
      ENV CATALINA_HOME /usr/local/apache-tomcat-7.0.105 
      ENV CATALINA_BASE /usr/local/apache-tomcat-7.0.105 
      ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin 
      # 容器运行是监听的端口
      EXPOSE 8080
      # 启动时运行tomcat
      CMD /usr/local/apache-tomcat-7.0.105/bin/startup.sh && tail -f /usr/local/apache-tomcat-7.0.105/logs/catalina.out
      
    2. 执行build命令,生成镜像

      # 到Dockerfile的目录,执行docker build 命令
      docker build -t tomcat:1.0 .
      

      命令说明:

      ​ -t :镜像的名称:标签

      ​ . :当前目录

三、镜像搜索和下载

  1. 搜索

    docker search 镜像名称
    
  2. 镜像拉取

    docker pull 镜像名称:版本号
    

四、镜像推送push

未完待续...

posted @ 2020-12-15 23:01  一点点、  阅读(37)  评论(0)    收藏  举报