PyCharm连接Docker镜像搭建Python开发环境

文章目录

  • 一、Docker使用Centos镜像安装Openssh服务
  • 二、PyCharm连接Docker
  • 三 docker 开启2375端口,提供外部访问docker
  • 总结


Pycharm的工具是具有通过SSH协议远程访问一个环境作为开发环境的功能的。那么只要创建一个支持SSH远程访问的容器,那么就可以提供作为开发环境了。
需要做的基本步骤:
构建一个支持SSH服务的镜像 centos:7-ssh
构建基于支持SSH服务,支持执行python3环境的镜像 python_env
配置Pycharm的调试环境使用SSH连接上python_env
配置Pycharm自动同步项目的代码文件至python_env容器中,用于调试代码

一、Docker使用Centos镜像安装Openssh服务

PyCharm连接Docker镜像搭建Python开发环境_第1张图片

启动centos容器
docker run -it daocloud.io/centos:7
安装passwd
yum install passwd -y
修改Centos root密码
passwd
安装openssh
yum install openssh-server -y
生成容器的公钥、私钥
cat  /etc/ssh/sshd_config
生成三个HostKey的命令如下:
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_ecdsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_ed25519_key

启动sshd服务
/usr/sbin/sshd

将sshd添加系统自启动
systemctl enable sshd
/usr/sbin/sshd
在这里插入图片描述
docker ps查看刚刚使用的容器,将容器commit为一个新的镜像

docker commit 04cf0b2947c9 centos:7-ssh
启动容器
docker run -it -p 2223:22 centos:7-ssh
#后台运行
docker run -itd --name zwzx -p 8001:8000 centos:7-ssh

测试使用ssh访问容器
ssh [email protected] -p 2223

查询容器sshd 状态
ps -e
PyCharm连接Docker镜像搭建Python开发环境_第2张图片

PyCharm连接Docker镜像搭建Python开发环境_第3张图片

二、PyCharm连接Docker

2.1.构建基于支持SSH服务,支持执行python3环境的镜像 python_env

   编写Dockerfile
# Using Centos for base image
FROM centos:7-ssh

# author label
LABEL maintainer="Aron.li"

# install timezone gcc
ENV ENVIRONMENT DOCKER_PROD
RUN cd / && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
  && yum makecache \
  && yum install -y wget aclocal automake autoconf make gcc gcc-c++ python-devel mysql-devel bzip2 libffi-devel epel-release \
# install python 3.7.1
  && wget https://npm.taobao.org/mirrors/python/3.7.1/Python-3.7.1.tar.xz \
  && tar -xvf Python-3.7.1.tar.xz -C /usr/local/ \
  && rm -rf Python-3.7.1.tar.xz \
  && cd /usr/local/Python-3.7.1 \
  && ./configure && make && make install \
# install pip3
  && yum install -y python-pip \
  && yum install -y python-setuptools \
  && pip3 install --upgrade pip -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com \
  && pip3 install setuptools==33.1.1 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com \
  && yum clean all

# copy project
COPY . /project


PyCharm连接Docker镜像搭建Python开发环境_第4张图片

wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tar.xz

yum install -y wget aclocal automake autoconf make gcc gcc-c++ python-devel mysql-devel bzip2 libffi-devel epel-release

tar -xvf Python-3.7.4.tar.xz -C /usr/local/
./configure && make && make install

2.2 配置Pycharm的调试环境使用SSH连接上python_env

选择菜单栏的File > Setting > Project Interpreter > Add , 添加调试环境
PyCharm连接Docker镜像搭建Python开发环境_第5张图片

在这里插入图片描述
配置添加SSH调试环境中同步项目文件的路径,也就是拷贝文件的目标地址
PyCharm连接Docker镜像搭建Python开发环境_第6张图片
配置完成后自动上传
PyCharm连接Docker镜像搭建Python开发环境_第7张图片
PyCharm连接Docker镜像搭建Python开发环境_第8张图片

PyCharm连接Docker镜像搭建Python开发环境_第9张图片

三 docker 开启2375端口,提供外部访问docker

编辑docker文件:/usr/lib/systemd/system/docker.service

vim /usr/lib/systemd/system/docker.service

修改ExecStart行为下面内容

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H
unix://var/run/docker.sock

重新加载docker配置

systemctl daemon-reload // 1,加载docker守护线程
systemctl restart docker // 2,重启docker

PyCharm连接Docker镜像搭建Python开发环境_第10张图片

PyCharm连接Docker镜像搭建Python开发环境_第11张图片


总结

你可能感兴趣的:(linux,Python,docker,python,pycharm)