debugging登台docker用pycharm编写服务器
我有以下docker-compose.yml
文件:
version: '2' services: postgis: image: mdillon/postgis environment: POSTGRES_USER: ${POSTGIS_ENV_POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGIS_ENV_POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGIS_ENV_POSTGRES_DB} volumes: - /nexchange/database:/var/lib/postgresql/data restart: always app: image: onitsoft/nexchange:${DOCKER_IMAGE_TAG} volumes: - /nexchange/mediafiles:/usr/share/nginx/html/media - /nexchange/staticfiles:/usr/share/nginx/html/static links: - postgis restart: always web: image: onitsoft/nginx volumes: - /nexchange/etc/letsencrypt:/etc/letsencrypt - /nexchange/etc/nginx/ssl:/etc/nginx/ssl - /nexchange/etc/nginx/nginx.conf:/etc/nginx/nginx.conf - /nexchange/mediafiles:/usr/share/nginx/html/media - /nexchange/staticfiles:/usr/share/nginx/html/static ports: - "80:80" - "443:443" links: - app restart: always
出于某种原因,在本地容器上工作的某些function在分段上不起作用。 我想在pycharm中configuration一个remote interpreter
器进行登台,但是看起来这个设置目前还不支持。
我正在使用wercker
+ wercker
docker compose
而我的IDE是pycharm。
编辑:现在的问题是:如何设置Pycharmdebugging器运行在运行docker组成的远程主机上
这个解决scheme虽然不安全,但是通过iptables
将远程目标上的Docker API打开为公共stream量(如果拥有静态IP,可能只能从特定IP进行stream量)。
$ ssh $USER@staging.nexchnage.ru oleg@nexchange-staging:~# sudo iptables -A INPUT -p tcp --dport 2376 -j ACCEPT oleg@nexchange-staging:~# sudo /etc/init.d/iptables restart
然后只需使用JetBrain PyCharm / PhpStrom的docker撰写function或者您最喜欢的select:
干杯