V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ety001
V2EX  ›  Docker

创建了个 httpsqs 的 docker 镜像,大小 28.06M,欢迎使用

  •  
  •   ety001 ·
    ety001 · 2016-09-04 17:56:31 +08:00 · 5105 次点击
    这是一个创建于 3007 天前的主题,其中的信息可能已经有所发展或是发生改变。

    由于之前 docker hub 中的那个 httpsqs 的镜像用起来实在是别扭,又没有文档。

    每次使用还得进到容器里面看看参数是怎么配置。

    于是自己花了一天,重新造了个轮子,且基于 alpine 构建。

    • 容量更小, 28.06M 。
    • 配置是通过环境变量来搞定。

    docker-httpsqs 项目地址:https://github.com/ety001/docker-httpsqs

    httpsqs 项目地址:https://code.google.com/archive/p/httpsqs

    欢迎 star.

    21 条回复    2016-09-06 17:37:21 +08:00
    tinyproxy
        1
    tinyproxy  
       2016-09-04 20:24:33 +08:00 via iPhone
    你觉得配置麻烦,写一个 docker compose 模板完事,用得着这么麻烦么
    Nexvar
        2
    Nexvar  
       2016-09-04 20:26:17 +08:00
    @tinyproxy 就你厉害,但是你能谦虚一点,说话委婉一点?
    notolddriver
        3
    notolddriver  
       2016-09-04 21:01:18 +08:00
    不了解 alpine 不过确实好小啊。 貌似很适合用来当 docker 镜像?
    dockerfile 里编译 居然不用像 centos 那样再安装 gcc 等库。。
    tinyproxy
        4
    tinyproxy  
       2016-09-04 21:48:13 +08:00
    @Nexvar 你好玻璃心。。。请问我这个吐槽哪里不客气,有人身攻击还是啥,你要跟我聊民族团结大于天么。
    ety001
        5
    ety001  
    OP
       2016-09-04 22:06:57 +08:00
    @tinyproxy 显然条条大路通罗马了,我只是提供了另外一套方案而已。除了配置麻烦,体积也是主要解决的问题。
    ety001
        6
    ety001  
    OP
       2016-09-04 22:08:40 +08:00
    @notolddriver 其实我是安装了的,你看 dockerfile 里那个 alpine-sdk 就是各种开发集成包,我先安装了下,然后编译完就卸载掉了。要不然光这个 alpine-sdk 也得小 200M 。
    bobchengbin
        7
    bobchengbin  
       2016-09-04 22:30:56 +08:00   ❤️ 1
    刚才看了下 Dockerfile 应该还有压缩的空间

    1. bash 应该不需要安装,貌似 alpine 默认提供了 ash 的 shell 。
    2. zlib-dev bzip2-dev 这两个依赖在使用完之后是不是可以删除

    参照 PHP 7 的 Dockerfile 他们还使用了 virtual 的概念用起来很爽,但是在官方的 wiki 我都没找着还有这么用的。 https://github.com/docker-library/php/blob/master/7.0/alpine/Dockerfile#L65 https://github.com/docker-library/php/blob/master/7.0/alpine/Dockerfile#L109
    likuku
        8
    likuku  
       2016-09-04 23:00:47 +08:00
    造福他人很好呀,可以节省他人很多时间
    bclerdx
        9
    bclerdx  
       2016-09-04 23:13:58 +08:00
    我擦,这是什么,没看到有什么作用, LZ 能解释一下嘛,谢谢!
    ety001
        10
    ety001  
    OP
       2016-09-04 23:26:53 +08:00
    @bobchengbin 恩, bash 的确可以删,我给漏掉了,不过 zlib-dev 和 bzip-dev 删掉后, httpsqs 启动貌似有问题,我没有再仔细的测试,所以就先带着了的说。 等有空再删掉测试下。你说的那个 virtual 等我明天仔细看看来,貌似很赞~
    ety001
        11
    ety001  
    OP
       2016-09-04 23:28:12 +08:00
    @bclerdx 这个是大神张宴开发一个轻量级的队列系统,处理些轻量级的任务还是不错的选择,详细内容请看这里: http://blog.zyan.cc/httpsqs/
    WendellSun
        12
    WendellSun  
       2016-09-05 00:34:23 +08:00
    @ety001 我之前试过一下,貌似删依赖项并不能减少镜像大小。
    Powered
        13
    Powered  
       2016-09-05 02:42:30 +08:00 via Android
    @tinyproxy 有病。
    Nexvar
        14
    Nexvar  
       2016-09-05 02:49:07 +08:00 via Android
    @tinyproxy
    网络流氓

    你好玻璃人,稍微得个癌症都能死,我们是不是要聊一聊全球医学大跃进?

    Blovked
    loading
        15
    loading  
       2016-09-05 04:54:53 +08:00 via Android
    @tinyproxy talk is cheap.
    POP
        16
    POP  
       2016-09-05 06:11:08 +08:00
    怎么做镜像啊,求指点一下
    loading
        17
    loading  
       2016-09-05 06:48:03 +08:00 via Android
    @POP 其实就是一个脚本。让 docker 去下一个系统镜像,然后在系统里运行一些你写好的脚本。

    那些一键装 lnmp 的脚本,你应该知道吧。 Docker 就是多了一个下载基础系统的过程。

    简单可以这样理解。
    ety001
        18
    ety001  
    OP
       2016-09-05 08:50:47 +08:00
    @POP 17 楼说的对,就是一遍遍来回调试蛋疼。
    Havee
        19
    Havee  
       2016-09-05 10:47:09 +08:00   ❤️ 1
    --no-cache 后,就没有必要再 --update-cache

    --no-cache Read uncached index from network

    显然,有了 --no-cache 就自动会先 apk update

    这个参数就字面上来说,确实具有迷惑性,我以前也被迷惑过,偶尔的一次 apk --help 才发现
    ety001
        20
    ety001  
    OP
       2016-09-05 13:09:48 +08:00
    @Havee 恩,学习了
    ety001
        21
    ety001  
    OP
       2016-09-06 17:37:21 +08:00
    @bobchengbin 那个 virtual 参数的作用我查到了,是用来给一串安装包定义一个别名的,这样再操作的时候,直接输入别名就可以了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3324 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 11:58 · PVG 19:58 · LAX 03:58 · JFK 06:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.