-
为什么会产生这样的需求
刚刚接受一个项目,是一个基于Python Django的工程。
由于前期开发的团队使用mac开发,程序中读取文件的地方没有指定encoding='utf8'.
而windows默认的编码不是utf8. 在windows环境下执行的话,会发生解码错误。
另外项目使用了一些模块,在windows环境下安装出错。
因此考虑采用Docker+Remote Debug的方式进行开发和调试。
-
安装所需软件
- [Docker工具]DockerToolbox
- [集成开发环境] Pycharm
-
制作Docker镜像
-
Dockerfile
FROM python:3
# maintainer
MAINTAINER zycheng@cn.ibm.com
# make dirs
RUN mkdir -p /opt/ihi/bin
RUN mkdir -p /opt/ihi/project
RUN mkdir -p /opt/ihi/data
RUN mkdir -p /opt/ihi/tmp
WORKDIR /opt/ihi/tmp
# install requirements
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
WORKDIR /opt/ihi/project
# port
EXPOSE 22
EXPOSE 8000
EXPOSE 8080
EXPOSE 19999
EXPOSE 20000
EXPOSE 30000
# mountpoint
VOLUME ["/opt/ihi/bin", "/opt/ihi/project", "/opt/ihi/data", "/opt/ihi/temp"]
#command
CMD ["tail", "-f", "/dev/null"]
-
requirements.txt(项目所需模块)
Django==1.11.5
requests==2.18.4
...等等....
-
制作镜像
3.1 拉取基础镜像 官方python镜像
docker pull python
3.2 在Dockerfile所在的文件夹中 使用Dockerfile制作镜像
docker build -t ihi-env .
-
Pycharm中设置
4.1 在setting-> Project Interpreter 中 添加reomte interperter
4.2 选择Docker 在Image Name中选择对应的镜像
-
使用Pycharm 调试程序
略.