前一段时间重装了系统,然后我还没有备份,导致电脑里的开发环境全都没有了。
一想到又要装 Python 环境,还要装数据库,然后安装过程中还可能报一堆错就头疼。
最近正在学习 Docker,这不正好解决了我当前的痛点了吗?而且,不止这次重装系统,以后再重装都不怕了,只要拿着 Dockerfile 和 docker-compose 文件,不管到什么环境,一条命令轻松跑起来。
之前部署 Python 开发环境,都是用的 virtualenv,或者是 Pipenv。这次使用 Docker 之后,对比下来,还是 Docker 更加方便,下面就来详细介绍。
Dockerfile
FROM python:3.6.8
ENV PYTHONUNBUFFERED 1
RUN mkdir -p /code
COPY ./requirements.txt /code
WORKDIR /code
RUN sed -i "s/archive.ubuntu./mirrors.aliyun./g" /etc/apt/sources.list
RUN sed -i "s/deb.debian.org/mirrors.aliyun.com/g" /etc/apt/sources.list
RUN apt-get clean && apt-get -y update && \
apt-get -y install libsasl2-dev python-dev libldap2-dev libssl-dev libsnmp-dev
RUN pip3 install --index-url https://mirrors.aliyun.com/pypi/simple/ --no-cache-dir -r requirements.txt
COPY ./* /code/
使用 Dockerfile 来创建镜像,Python 版本是 3.6.8,将源代码拷贝到容器中 /code
目录。
docker-compose
version: '3'
services:
web:
build:
context: .
dockerfile: Dockerfile
image