从Docker容器构建和发布python库的更好方法是什么?

时间:2019-06-12 05:06:28

标签: python docker pypiserver

我正在使用hatch库构建和发布python库并将其发布到我们的本地pypiserver。我想从Docker容器中构建和发布它。

这样做的正确方法是什么?我是否需要运行容器然后连接到它,提取源代码,进行构建,测试和发布?其他方法?

我当前的实现是在docker构建新映像时构建和发布库:

FROM python:3.6.8-stretch

ARG PYPI_USERNAME
ARG PYPI_PASSWORD

RUN mkdir /code

WORKDIR /code

RUN echo "machine pypi.myserver.com\n\tlogin $PYPI_USERNAME\n\tpassword $PYPI_PASSWORD" >> ~/.netrc && \
    mkdir ~/.pip && \
    echo "[global]\nextra-index-url = https://pypi.myserver.com\ntrusted-host = pypi.myserver.com" >> ~/.pip/pip.conf

RUN echo "\n[distutils]\nindex-servers=\n    myserver\n\n[myserver]\nrepository: https://pypi.myserver.com/\nusername: $PYPI_USERNAME\npassword: $PYPI_PASSWORD\n" > ~/.pypirc

COPY . .

RUN pip install . && rm -r ~/.pip && rm ~/.netrc

RUN py.test

RUN hatch build && hatch release -r myserver -u admin
RUN rm ~/.pypirc

CMD [ "echo", "OK" ]

然后,我验证退出状态代码($?)并得出是否成功的结论。

最后,我从Docker中删除了所有映像。

谢谢。

0 个答案:

没有答案