python代码提示
使用python依赖包时没有提示配置;比如cv2
配置Docker环境调试
pycharm使用ssh连接到docker容器;
- 创建镜像和容器;(容器需要配置ssh)
遇到依赖包、执行程序找不到;注意环境变量问题; ssh建立连接会重置环境变量;注意环境变量加载的文件位置;
##Dockerfile
FROM registry.baidubce.com/paddlepaddle/paddle:2.3.0-gpu-cuda10.2-cudnn7
RUN apt update && apt install -y openssh-server
RUN mkdir -p /var/run/sshd
RUN echo 'root:password' | chpasswd \
&& sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config \
&& sed 's@session\s*required\s*pam_loginuid.so@session optional pam_loginuid.so@g' -i /etc/pam.d/sshd \
&& echo "export VISIBLE=now" >> /etc/profile
RUN echo 'export $(cat /proc/1/environ |tr "\\0" "\\n" | xargs)' >> /etc/profile \
&& echo 'export $(cat /proc/1/environ |tr "\\0" "\\n" | xargs)' >> /etc/bash.bashrc \
&& echo 'export $(cat /proc/1/environ |tr "\\0" "\\n" | xargs)' >> ~/.bashrc
RUN pip install tqdm scikit-learn opencv-python visualdl easydict albumentations -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn
RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo $TZ > /etc/timezone
CMD service ssh restart && /bin/bash
##创建镜像和容器
docker build -t paddle_train:v1.0 .
docker stop paddle_train_zcx && docker rm paddle_train_zcx
docker run --name paddle_train_zcx -p 10022:22 --shm-size=6g -v $PWD/../project/:/project -v $PWD/../data/:/data --gpus all -itd paddle_train:v1.0
##在宿主机上执行;连接进入容器则测试成功;
ssh -p 10022 root@127.0.0.1
- pycharm配置连接
File >>> Settuings >>> Build,E… >>> Deployment
File >>> Settuings >>> Project:… >>> Add
选择python执行程序(docker容器中);
选择容器中代码存放位置(设置同容器映射的文件位置一致;可去掉打钩,不同步代码)