python学习笔记--开发与调试环境(1)pycharm远程调试docker容器内部程序

https://blog.csdn.net/Wendy019900107/article/details/81985837

1. 个人开发环境如下:

(1)pycharm专业版(2018.1.2)位于windows10上

(2)docker-daemon(1.13.1)位于centos7上,centos7地址为10.74.53.141

2. 远程调试原理:

    在win10上安装pycharm,在linux上安装docker engine作为docker-host,在docker-container里面安装python解释器;

    pycharm通过tcp/2375端口与docker-host通信,可以直接发送docker指令,然后让linux执行,

    通过docker指令,可以创建image,运行container,实现host与container之间目录挂载,端口映射等操作;

    至于代码的上传,不同的docker部署方式不一样,详细信息,看下文。

3. 开启dacker-daemon远程接入特性,允许pycharm连接

(1)编辑docker服务配置文件,保存修改【vim /lib/systemd/system/docker.service】

(2)重载配置,并重启服务

        $ systemctl daemon-reload

        $ sudo service docker restart

(3)测试

        在另一台主机上,比如windows10上,telnet 10.74.53.141 2475,可以成功访问docker-daemon

4.  pycharm:作为客户端连接docker-host

    (1)新建一个纯python工程,暂时python解释器可忽略

    (2)连接docker-host:

        导航栏依次点击 File ---> Settings,弹窗 Settings对话框,继续点击 Build, Execution, Deployment ---> Docker 

5. pycharm:配置docker-container(程序的运行环境),并开始调试

         依次点击【工具栏下方标题栏右边的下拉箭头】---> Edit Configurations... --->  弹出【Run/Debug Configurations】对话框 --->   依次点击【+】---> Docker ---> 弹出下拉列表,有三个选项:Docker Image,Docker-compose,Dockerfile。区别如下表:

  docker image dockerfile docker-compose

适用场景 适用于docker-host上有程序运行所需的image 适用于docker-host上没有有程序运行所需的image 适用于docker-host上没有有程序运行所需的image

镜像创建 doker-host上已经存在 dockerfile.ini dockerfile.ini

端口映射 pycharm配置 pycharm配置 docker-compose.yml

目录挂载 pycharm配置 pycharm配置 docker-compose.yml

容器启动时执行的命令 pycharm配置 dockerfile.ini dockerfile.ini

代码上传 pycharm通过sftp上传到docker-host,docker-host通过目录挂载同步给docker-container dockerfile.ini dockerfile.ini

针对代码的改变 无须任何变动 需要增加dockefile.ini文件 需要增加dockerfile.ini、docker-compose.yml文件

  6.1 采用docker image方式

        (1)确认docker-host上image已经存在

        (2)配置docker-host和pychram目录映射,上传pycharm源码到docker-host

              导航栏依次点击 Tools ---> Deployment ---> Confiuration ,弹窗 Deployment对话框

               配置账号和密码,测试连接是否成功

              配置pycharm和docker-host上的目录映射

              上传pycharm工程下的代码到docker-host上

    右击工程目录下需要上传到docker-host上的文件或者文件夹,依次选择:Deployment ---> Upload to root@10.74.52.141,即可。

        (3)配置docker环境,并运行程序

    6.2 采用dockerfile方式

        (1)编写dockerfile.ini文件

FROM caowencomeon/uwsgi:1.0

COPY src        /testbed/src

COPY uwsgi.ini  /testbed/uwsgi.ini

VOLUME /var/log

VOLUME /data

EXPOSE 5000

CMD ["uwsgi", "/testbed/uwsgi.ini"]

        (2)配置docker环境,并运行程序

    6.3 采用docker-compose方式

        (1)编写docker-compose.yml文件

version: "2.0"

volumes:

  applog:

  sharedata:

services:

  app:

    container_name: app-dev

    build:

      context: ./testbed

      dockerfile: dockerfile.ini

    image: app-dev:docker-compose

    volumes:

      - applog:/var/log

      - sharedata:/data

    privileged: true

    ports:

      - 5000:5000

        (2)配置docker环境,并运行程序

————————————————

版权声明:本文为CSDN博主「薄荷_红茶」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/Wendy019900107/article/details/81985837

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,064评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,606评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,011评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,550评论 1 269
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,465评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,919评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,428评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,075评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,208评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,185评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,191评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,914评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,482评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,585评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,825评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,194评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,703评论 2 339

推荐阅读更多精彩内容