gpt4 book ai didi

Firefox 代理到 Docker Fiddler 拒绝连接

转载 作者:行者123 更新时间:2023-12-02 20:22:15 28 4
gpt4 key购买 nike

在 Ubuntu-14.04 主机上运行 docker-fiddler 容器。容器启动 fiddler 并将 GUI 重定向到主机,但代理失败。 docker 1.11.1 版,

Firefox 会显示“连接已重置”或“代理服务器拒绝连接”,具体取决于如下所示的设置。

问题:

  • 什么是正确的 Firefox 代理设置、http 和 ssl?
  • docker run cmd 行需要哪些更改?
  • Dockerfile 需要进行哪些更改?

  • 注:我点击的是 http url,而不是 https

    这个配置,localhost,假设端口fwd,FF 输出: 连接已重置
    Firefox proxy: 
    manual proxy
    HTTP Proxy 127.0.0.1 Port 8888
    SSL Proxy 127.0.0.1 Port 8888

    此配置,使用容器 ip,FF 输出: 代理服务器拒绝连接
    Firefox proxy: 
    manual proxy
    HTTP Proxy 172.17.02 Port 8888
    SSL Proxy 172.17.02 Port 8888

    TL;DR

    docker 运行:
     docker run -d -p 8888:8888 -v /tmp/.X11-unix:/tmp/.X11-unix -e \
    DISPLAY=$DISPLAY fiddler -h $HOSTNAME -v \
    $HOME/.Xauthority:/home/$USER/.Xauthority

    docker ps:
    16a4f7531222  fiddler "mono /app/Fiddler.ex"   3 hours ago Up 3 hours 0.0.0.0:8888->8888/tcp   cranky_pare

    Dockerfile jwieringa/docker-fiddler ,我添加了expose 8888和User config来支持bind mount X server
    FROM debian:wheezy
    RUN apt-get update \
    && apt-get install -y curl unzip \
    && rm -rf /var/lib/apt/lists/*
    RUN apt-key adv --keyserver pgp.mit.edu --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
    RUN echo "deb http://download.mono-project.com/repo/debian wheezy/snapshots/3.12.0 main" > /etc/apt/sources.list.d/mono-xamarin.list \
    && apt-get update \
    && apt-get install -y mono-devel ca-certificates-mono fsharp mono-vbnc nuget \
    && rm -rf /var/lib/apt/lists/*
    RUN cd /tmp && curl -O http://ericlawrence.com/dl/MonoFiddler-v4484.zip
    RUN unzip /tmp/MonoFiddler-v4484.zip
    ## I added this for X11 Display of Fiddler GUI on linux Host
    RUN groupadd -g <gid> <user>
    RUN useradd -d /home/<user> -s /bin/bash -m <user> -u <uid> -g <gid>
    USER <user>
    ENV HOME /home/<user>
    # I added this also
    EXPOSE 8888
    ENTRYPOINT ["mono", "/app/Fiddler.exe"]

    最佳答案

    1)主机被认为是docker-fiddler容器的远程计算机

    Fiddler > Tools > Fiddler Options > Connections > [x] Allow remote computers to connect

    2) Fiddler 在更改此属性后需要重置,这将关闭容器。必须将绑定(bind)挂载卷添加到 Dockerfile 以维护配置
    -v /tmp/docker-fiddler/.mono:/home/$USER/.mono 

    3)首先在主机上创建/tmp/docker-fiddler/.mono 并赋予它 $USER 权限。 Docker应该为我做这件事,但是我不知道怎么做

    4) 将 docker run 更改为:
      docker run -d -p 8888:8888 \
    -v /tmp/.X11-unix:/tmp/.X11-unix \
    -h $HOSTNAME \
    -v $HOME/.Xauthority:/home/$USER/.Xauthority \
    -v /tmp/docker-fiddler/.mono:/home/$USER/.mono \
    -e DISPLAY=$DISPLAY fiddler

    5) 对于调试,将上面的第一行更改为添加调试 (-D) 并删除守护程序 (-d),这样做是找到丢失的库的关键
    docker -D run -p 8888:8888   

    6) 缺少几个库,最后一个是 gsettings-desktop-schema,它包含/引入了 gnome 代理模式。这由 fiddler 使用,直到它到位,“AllowRemote”配置设置没有被存储
    .mono/registry/CurrentUser/software/telerik/fiddler/values.xml:<value name="AllowRemote"

    7) 对 Dockerfile 的一些更改,包括使用 ubuntu,会创建一个非常大的镜像,可能能够退出 libglib2.0-bin libcanberra-gtk-module:
    FROM ubuntu:14.04

    RUN apt-get update \
    && apt-get install -y curl unzip libglib2.0-bin libcanberra-gtk-module gsettings-desktop-schemas \
    && rm -f /etc/apt/sources.list.d/mono-xamarin* \
    && rm -rf /var/lib/apt/lists/*

    RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

    RUN echo "deb http://download.mono-project.com/repo/debian wheezy main" > /etc/apt/sources.list.d/mono-xamarin.list \
    && apt-get update \
    && apt-get install -y mono-complete ca-certificates-mono fsharp mono-vbnc nuget \
    && rm -rf /var/lib/apt/lists/*

    RUN cd /tmp && curl -O http://ericlawrence.com/dl/MonoFiddler-v4484.zip

    RUN unzip /tmp/MonoFiddler-v4484.zip

    RUN groupadd -g 1000 <USER>
    RUN useradd -d /home/<USER> -s /bin/bash \
    -m <USER> -u <UID> -g <GID>
    USER <user>
    ENV HOME /home/<USER>

    EXPOSE 8888

    ENTRYPOINT ["mono", "/app/Fiddler.exe"]

    8) Firefox 代理 - 没有解决 HTTPS/SSL
    FF > edit > preferences > Advanced > settings

    manual proxy
    HTTP Proxy <container-ip> Port 8888
    SSL Proxy <left this blank>

    见: Install Mono on Linux

    请参阅:Docker In Practice,Miell/Sayers - CH4 Tech 26 运行 GUI,X11

    关于Firefox 代理到 Docker Fiddler 拒绝连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37221814/

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