gpt4 book ai didi

docker - 使用 pycharm 调试登台 docker compose 服务器

转载 作者:IT老高 更新时间:2023-10-28 12:46:38 26 4
gpt4 key购买 nike

我有以下 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

由于某种原因,在本地容器上运行的某些功能在暂存时不起作用。我想在 pycharm 中配置一个 remote interpreter 用于暂存,但目前似乎不支持此设置。

我正在使用 wercker + docker compose,我的 IDE 是 pycharm。

编辑:问题是:如何设置 Pycharm 调试器在运行 docker compose 的远程主机上运行

最佳答案

虽然不安全,但解决方案是通过 iptables 将远程目标上的 docker API 开放给公共(public)流量(如果您拥有静态 IP,则可能仅来自特定 IP 的流量)。

$ 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 compose 功能或您喜欢的选择:

enter image description here

干杯

关于docker - 使用 pycharm 调试登台 docker compose 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39306713/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com