美文网首页
Docker使用教程

Docker使用教程

作者: WalterWong | 来源:发表于2018-05-04 13:16 被阅读0次

    Docker常用命令

    1、常用命令一览表

    命令 解释
    docker images 列出本地所有镜像
    docker search KEYWORDS 在Docker Hub中搜索镜像
    docker pull IMAGE 下载Docker镜像
    docker rmi [OPTIONS] IMAGEID 删除Docker镜像。加参数-f表示强制删除。
    docker run [OPTIONS] IMAGE 启动Docker镜像
    docker ps 列表所有运行中的Docker容器。该命令参数比较多,-a:列表所有容器;-f:过滤;-q 只列表容器的id。
    docker version 查看Docker版本信息
    docker info 查看Docker系统信息,例如:CPU、内存、容器个数等等
    docker kill IMAGEID 杀死id对应容器
    docker start / stop / restart IMAGEID 启动、停止、重启指定容器
    docker build [OPTIONS] PATH 构建Docker镜像,-t 表示指定一个tag
    docker tag 为镜像打标签

    更多命令,请输入--help参数查询;如果想看docker命令可输入docker --help;如果想查询docker run命令的用法,可输入docker run --help

    2、docker run

    参数 解释
    -d 后台运行
    -P 随机端口映射
    -p 指定端口映射 格式: ip:hostPort:containerPort ip::containerPort hostPort:containerPort containerPort

    如:

    docker run -d -p 1000:1000 makeronly/registry:1.0.0
    

    使用Dockerfile构建Docker镜像

    以makeronly-registry项目为例

    1、使用Maven打包项目

    mvn clean package
    

    项目构建成jar包: makeronly-registry-1.0.0.jar

    2、创建Dockerfile

    • 在makeronly-registry-1.0.0.jar所在目录创建文件,命名为Dockerfile
    # 基于哪个镜像
    FROM java:8
    
    # 将本地文件夹挂载到当前容器
    VOLUME /tmp
    
    # 拷贝文件到容器
    ADD makeronly-registry-1.0.0.jar app.jar
    RUN bash -c 'touch /app.jar'
    
    # 开放10001端口
    EXPOSE 10001
    
    # 配置容器启动后执行的命令
    ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
    
    • 构建docker镜像,执行
    # 格式:docker build -t 标签名称:版本 Dockerfile的相对位置
    docker build -t makeronly/registry:1.0.0 .
    

    构建成功:Successfully built a7cc6f4de088

    • 启动镜像
    docker run -d -p 1000:1000 makeronly/registry:1.0.0
    

    删除所有过期容器

    通过命令docker ps -a 查看所有容器,发现很多STATUS为Exited,如果要一个一个删除会很麻烦,所有可以使用脚本

    carbon.png

    创建脚本文件dockerRM.sh

    echo "Remove the containers which status was exited"
    for containerid in $(docker ps -q -f status=exited);
    do
      docker rm $containerid;
    done
    echo "All the exited containers were removed successfully"
    

    相关文章

      网友评论

          本文标题:Docker使用教程

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