From 3576dee75a1623aa2385b6afe8b922ad5affca26 Mon Sep 17 00:00:00 2001 From: Heiner Lohaus Date: Wed, 6 Dec 2023 09:35:36 +0100 Subject: Add selenium to dockerfile Load model and provider list in gui Remove needs_auth in HuggingChat Add default model and login url in gui --- docker/Dockerfile | 42 ++++++++++++++++++++++++++++++++++++++++++ docker/start-selenium-node.sh | 17 +++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 docker/Dockerfile create mode 100755 docker/start-selenium-node.sh (limited to 'docker') diff --git a/docker/Dockerfile b/docker/Dockerfile new file mode 100644 index 00000000..354f66d1 --- /dev/null +++ b/docker/Dockerfile @@ -0,0 +1,42 @@ +FROM selenium/node-chrome + +ENV SE_SCREEN_WIDTH 1920 +ENV G4F_LOGIN_URL http://localhost:7900/?autoconnect=1&resize=scale&password=secret + +USER root + +# Python packages +RUN apt-get -qqy update \ + && apt-get -qqy install \ + python3 \ + python-is-python3 \ + pip + +# Cleanup +RUN rm -rf /var/lib/apt/lists/* /var/cache/apt/* \ + && apt-get -qyy autoremove \ + && apt-get -qyy clean + +# Update entrypoint +COPY docker/start-selenium-node.sh /opt/bin/ + +# Change background image +COPY g4f.png /usr/share/images/fluxbox/ubuntu-light.png + +# Switch user +USER 1200 + +# Set the working directory in the container. +WORKDIR /app + +# Copy the project's requirements file into the container. +COPY requirements.txt /app/ + +# Upgrade pip for the latest features and install the project's Python dependencies. +RUN pip install --upgrade pip && pip install -r requirements.txt + +# Copy the entire package into the container. +COPY g4f /app/g4f + +# Expose ports +EXPOSE 80 1337 \ No newline at end of file diff --git a/docker/start-selenium-node.sh b/docker/start-selenium-node.sh new file mode 100755 index 00000000..a02d0e82 --- /dev/null +++ b/docker/start-selenium-node.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +# Start the pulseaudio server +pulseaudio -D --exit-idle-time=-1 + +# Load the virtual sink and set it as default +pacmd load-module module-virtual-sink sink_name=v1 +pacmd set-default-sink v1 + +# Set the monitor of v1 sink to be the default source +pacmd set-default-source v1.monitor + +rm -f /tmp/.X*lock + +# Start app servers +python -m g4f.cli api & +python -m g4f.cli gui \ No newline at end of file -- cgit v1.2.3