diff options
Diffstat (limited to 'rss.xml')
-rw-r--r-- | rss.xml | 28 |
1 files changed, 1 insertions, 27 deletions
@@ -130,34 +130,8 @@ Dockerfile中生成静态html网页,然后在构建的过程中将静态网页 | |||
130 | 之前我们为了得到静态html文件,可能得选用一个python的基础镜像,然后再apt/apk安装一些必要的编译工具,最终只是为了几百kb的html文件,但是 | 130 | 之前我们为了得到静态html文件,可能得选用一个python的基础镜像,然后再apt/apk安装一些必要的编译工具,最终只是为了几百kb的html文件,但是 |
131 | 构建的镜像已经上百MB了。有了multi stage build之后,这个问题便非常好地被解决了。看了下面的Dockerfile之后,整体思路就非常清晰了。目前我 | 131 | 构建的镜像已经上百MB了。有了multi stage build之后,这个问题便非常好地被解决了。看了下面的Dockerfile之后,整体思路就非常清晰了。目前我 |
132 | 在本地写完rst文本,然后git push之后,CircleCI会自动进行Dockerfile的构建,然后将编译生成的静态html推送到gh-pages分支。 | 132 | 在本地写完rst文本,然后git push之后,CircleCI会自动进行Dockerfile的构建,然后将编译生成的静态html推送到gh-pages分支。 |
133 | FROM python:3.6.0 as builder | ||
134 | LABEL maintainer=clarkzjw<[email protected]> | ||
135 | RUN pip install virtualenv | ||
136 | COPY requirements.txt /app/requirements.txt | ||
137 | COPY bootstrap.py /app/bootstrap.py | ||
138 | RUN /app/bootstrap.py | ||
139 | ADD . /app | ||
140 | WORKDIR /app | ||
141 | RUN /bin/bash -c "source /app/.venv/bin/activate && make html && make rss && cp rss.xml _build/html" | ||
142 | |||
143 | |||
144 | FROM alpine:latest | ||
145 | RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories | ||
146 | RUN apk add --update git openssh-client && rm -rf /var/cache/apk/* | ||
147 | WORKDIR /html | ||
148 | ENV COMMIT_USER="clarkzjw" | ||
149 | ENV COMMIT_EMAIL="[email protected]" | ||
150 | ARG GIT_TOKEN="" | ||
151 | RUN git config --global user.email $COMMIT_EMAIL && git config --global user.name $COMMIT_USER | ||
152 | RUN git clone https://clarkzjw:[email protected]/clarkzjw/blog.jinwei.me.git /html && git checkout gh-pages | ||
153 | COPY --from=builder /app/_build/html /html | ||
154 | RUN echo "`date`" > /html/.lastmodify && git add -A && git commit -m "`date`" && git push origin gh-pages | ||
155 | |||
156 | |||
157 | FROM nginx:alpine | ||
158 | COPY --from=builder /app/_build/html /usr/share/nginx/html | ||
159 | |||
160 | 133 | ||
134 | |||
161 | 另外一个问题是博客的RSS。由于Sphinx最初的设计是作为一个文档生成工具,目前市面上有的和Sphinx结合的RSS生成工具大致有: | 135 | 另外一个问题是博客的RSS。由于Sphinx最初的设计是作为一个文档生成工具,目前市面上有的和Sphinx结合的RSS生成工具大致有: |
162 | 136 | ||
163 | Sphinx-contrib模块中的 feed | 137 | Sphinx-contrib模块中的 feed |