Compare commits

..

No commits in common. "7654bd166063618aa755a22e7629d854b916d827" and "406a098a3cae11681e3377304d0430c6c0f52ec5" have entirely different histories.

3 changed files with 6 additions and 63 deletions

View File

@ -1,43 +0,0 @@
name: Create and publish Docker images for tagged versions
on:
push:
tags:
- 'v*'
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
jobs:
build-docker-image:
runs-on: ubuntu-latest
permissions:
contents: write
packages: write
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Log into GHCR
if: github.event_name != 'pull_request'
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract Docker metadata
id: meta
uses: docker/metadata-action@v4
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
- name: Build and push Docker image
uses: docker/build-push-action@v3
with:
context: .
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.output.labels }}

View File

@ -1,18 +1,5 @@
FROM python:3-slim
LABEL org.opencontainers.image.description='Unwebsockify is a TCP to WebSocket proxy/bridge -- like a reverse websockify.' \
org.opencontainers.image.source='https://github.com/jimparis/unwebsockify' \
org.opencontainers.image.licenses='MIT'
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONFAULTHANDLER=1 \
PYTHONHASHSEED=random \
PYTHONUNBUFFERED=1
FROM docker.io/library/python:3-alpine
WORKDIR /usr/src/app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY unwebsockify.py .
ENTRYPOINT [ "python", "./unwebsockify.py" ]
RUN pip install --no-cache-dir websockets
COPY unwebsockify.py ./
ENTRYPOINT [ "python", "-u", "./unwebsockify.py" ]

View File

@ -48,7 +48,7 @@ class Proxy:
async def handle_client(self, r, w):
peer = w.get_extra_info("peername")
print(f'{peer} connected')
loop = asyncio.get_running_loop()
loop = asyncio.get_event_loop()
try:
async with websockets.connect(
self.url, subprotocols=self.subproto) as ws:
@ -96,8 +96,7 @@ def main(argv):
args = parser.parse_args()
loop = asyncio.new_event_loop()
asyncio.set_event_loop(loop)
loop = asyncio.get_event_loop()
proxy = Proxy(args.port, args.listen, args.url, args.subproto)
loop.run_until_complete(proxy.start())
loop.run_forever()