美文网首页
入门Docker(二)

入门Docker(二)

作者: 每天多一点 | 来源:发表于2017-10-31 07:58 被阅读29次

    概要

    之前学习过如何使用docker,这是一篇补充。主要讲述如何新建一个docker的镜像并推送到云端的过程

    下载镜像

    可以参考之前的文章。我们可以使用国内的镜像仓库,这样下载速度会大大加快。
    网易云的镜像中心

    这里建议使用 aplpine linux,小巧方便。

    docker pull hub.c.163.com/library/alpine:latest
    
    $ docker images
    REPOSITORY                                  TAG                 IMAGE ID            CREATED             SIZE
    hub.c.163.com/library/alpine   latest              4e38e38c8ce0        16 months ago       3.966 MB
    

    编写Dockfile

    • 先以交互方式来运行镜像alpine:
    docker run -i -t <image tag> /bin/sh
    

    注意: alpine linux只有shell,如果你使用 /bin/bash 将会看到错误提示

    • alpine 使用 apk 作为包管理工具。使用apk安装之前,需要更新:
    apk update
    

    apk update的执行速度会非常的慢,这就需要我们换源

    # 修改为国内的源
    echo "http://mirrors.aliyun.com/alpine/v3.4/main/" > /etc/apk/repositories
    
    • 安装其他的包
    ## 查包
    apk search <包名>
    ## 装包
    apk add <包名>
    

    经过反复实验之后,基本上就了解了大致需要装哪些包,需要修改、删除哪些文件了。

    制作Dockfile

    • 创建Dockfile,并编辑
    • 生成镜像
    docker build -t <name> <path>
    

    比如

    docker build -t test/app .
    
    • 运行
    docker run -d --name=app -p 8080:8000
    

    以deamon方式运行,名字为app,映射端口

    推送到云端

    可以参考网易云的推送说明,可以可以直接在网易云上构建。

    其他

    想尝试时速云或者是DaoCloud等产品,但是私有仓库属于收费项目,所以想免费为自己的镜像找一个hub还真不容易。暂时发现了网易云可以用,所以这里就用网易云为例子进行了说明。

    相关文章

      网友评论

          本文标题:入门Docker(二)

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