zoukankan      html  css  js  c++  java
  • docker 命令总结

    docker pull  获取镜像

    docker build --tag imageName:v1  . 建立镜像

    docker images  查看镜像

    docker run  --name imageName  -d -p 8080:80 运行镜像    

    docker ps  列出container

    docker tag imageid name:tag   修改容器名字及tag

    删除 正在运行的docker

    docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop

    docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm
     
    docker images grep none|awk '{print $3 }'|xargs docker rmi
     
    docker rmi -f imageId
     
    提交
    docker commit -m "update file" -a "Docker Newbee" 0b2616b0e5a8 theme:v2
    其中,-m 来指定提交的说明信息,跟我们使用的版本控制工具一样;-a 可以指定更新的用户信息;之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。
     

     启动容器,并挂在

    #docker run -d -v /home/user/software/:/home/software/ -p 58080:8080 --name javaweb javaweb:0.1 /root/run.sh

    -d:表示以“守护模式”执行/root/run.sh脚本,此时 Tomcat 控制台不会出现在输出终端上。

    -p:表示宿主机与容器的端口映射,此时将容器内部的 8080 端口映射为宿主机的 58080 端口,这样就向外界暴露了58080端口,可通过 Docker 网桥来访问容器内部的 8080 端口了。

    --name:表示容器名称,用一个有意义的名称命名即可。

    -v:冒号指定的路径是Dockfile中VOLUME指定的目录

    docker还提供了一种高级的用法。叫数据卷。
    数据卷:“其实就是一个正常的容器,专门用来提供数据卷供其它容器挂载的”。感觉像是由一个容器定义的一个数据挂载信息。其他的容器启动可以直接挂载数据卷容器中定义的挂载信息。
    eg: docker run -v /home/dock/Downloads:/usr/Downloads --name dataVol ubuntu64 /bin/bash
    创建一个普通的容器。用--name给他指定了一个名(不指定的话会生成一个随机的名子)

    再创建一个新的容器,来使用这个数据卷。
    docker run -it --volumes-from dataVol ubuntu64 /bin/bash

    Dockerfile 语法总结:

      FROM  baseimage

      RUN  执行命令

      ADD  添加文件

      COPY  拷贝文件

      EXPOSE  暴露端口

      WORKDIR  指定路径

      MAINTAINER  维护者

      ENV  设置环境变量

      ENTRYPOINT  容器入口

      USER  指定用户

      VOLUME  mount point   eg:  VOLUME ["/data1","/data2"]

    eg1:  java 镜像 运行jar文件

    FROM hub.c.163.com/library/java
    
    COPY eurekaserver-0.0.1-SNAPSHOT.jar /usr/src/app.jar
    
    ENTRYPOINT ["java","-jar","/usr/src/app.jar"]
    

      

    eg2: mvn clean package -DskipTests=true docker:build

  • 相关阅读:
    代码签名证书原理和作用
    安装SSL证书有什么作用?
    有关如何修复Android手机上的SSL连接错误的快速指南
    可信时间戳如何生成?时间戳基本工作原理
    全球通用的数字证书产品选购指南
    国密SSL证书申请免费试用
    国密SSL证书免费试用申请指南
    哈希算法的原理和用途详解
    https证书安装无效的主要原因
    Anatomy of a Database System学习笔记
  • 原文地址:https://www.cnblogs.com/kaishi/p/7689943.html
Copyright © 2011-2022 走看看