使用Dockerfile定制ATS的docker镜像 - 开发说
当前位置: 主页 » Apache Traffic Server » 使用Dockerfile定制ATS的docker镜像

使用Dockerfile定制ATS的docker镜像

      2021年08月21日   阅读 1,359 次     0 评论   Tags: ·

在CDN技术中比较常见的软件有ATS,varnish和squid三款,以前博客写了一篇关于varnish的博文,参考:如何建立Varnish CDN集群 ,使用Varnish从内存加速你的WordPress网站,今天用ansible的playbook功能批量部署ATS缓存(四台小鸡)
参考:https://qing.su/article/traffic-server-reverse-proxy.html
ATS下载地址:http://trafficserver.apache.org/

事情起因:昨晚小鸡宕机,然后编译安装ats,编译速度很慢,就有了此文,定制ats的docker镜像

1、ATS Dockerfile 分阶段构建,减小镜像大小



vi Dockerfile

FROM quay.io/centos/centos:stream9 as builder

ARG TRAFFIC_SERVER_VERSION=9.1.2

RUN dnf install -y pkgconfig libtool gcc make tcl-devel openssl-devel pcre pcre-devel libcap flex hwloc lua zlib  ncurses-devel ncurses gcc-c++ bzip2 tcl-devel

RUN  mkdir -p /tmp/trafficserver /opt/trafficserver \
        && curl -L https://downloads.apache.org/trafficserver/trafficserver-${TRAFFIC_SERVER_VERSION}.tar.bz2 | tar xjvf - -C /tmp/trafficserver --strip-components 1 \
        && cd /tmp/trafficserver && ./configure --prefix=/opt/trafficserver --with-user=nobody --with-group=nobody --enable-experimental-plugins \
        && cd /tmp/trafficserver && make -j2 \
        && cd /tmp/trafficserver && make install \
        && mv /opt/trafficserver/etc/trafficserver /etc/trafficserver \
        && ln -sf /etc/trafficserver /opt/trafficserver/etc/trafficserver \
        && rm -rf /tmp/trafficserver

FROM quay.io/centos/centos:stream9


COPY --from=builder --chown=nobody:nobody /opt/trafficserver  /opt/trafficserver

EXPOSE 80 443

VOLUME ["/opt/trafficserver/etc/trafficserver"]

CMD ["/opt/trafficserver/bin/traffic_server"]

2、生成ats镜像

docker build -t ats:9.1.2 .

3、使用方法



# 单机使用
docker run --restart=always --name=ats -d -p 443:443 -v /data/trafficserver:/opt/trafficserver/etc/trafficserver ats:9.1.2

# 因为我部署了三台ATS节点,所以用了ansible

ansible ats -m shell -a "docker run --restart=always --name=ats -d -p 443:443 -v /data/trafficserver:/opt/trafficserver/etc/trafficserver ats:9.1.2"

# docker 压缩镜像和导入镜像小技巧
docker save ats:9.1.2 |gzip > /data/k8s/ats-9.1.2.tar.gz
gunzip -c ats-9.1.2.tar.gz | docker load

  • 版权声明:本文版权归开发说和原作者所有,未经许可不得转载。文章部分来源于网络仅代表作者看法,如有不同观点,欢迎进行交流。除非注明,文章均由 开发说 整理发布,欢迎转载,转载请带版权。

  • 来源:开发说 ( https://www.kaifashuo.com/ ),提供主机优惠信息深度测评和服务器运维编程技术。
  • 链接:https://www.kaifashuo.com/2310.html
  • 评论(0

    1. 还没有任何评论,你来说两句吧

    发表回复

    您的电子邮箱地址不会被公开。 必填项已用 * 标注