diff --git a/dungeon/Dockerfile b/dungeon/Dockerfile new file mode 100644 index 00000000..9072d2dd --- /dev/null +++ b/dungeon/Dockerfile @@ -0,0 +1,22 @@ +FROM ubuntu:22.04 + +RUN apt-get update +RUN apt-get install -y telnet + +COPY run-app.sh /run-app.sh + +WORKDIR /app + +COPY . . + +RUN chmod +x add-ttyd.sh +RUN ./add-ttyd.sh + +RUN rm add-ttyd.sh +RUN rm -rf ttyd + +RUN chmod +x /run-app.sh + +EXPOSE 8989 + +ENTRYPOINT [ "/run-app.sh" ] diff --git a/dungeon/add-ttyd.sh b/dungeon/add-ttyd.sh new file mode 100644 index 00000000..bcaca76f --- /dev/null +++ b/dungeon/add-ttyd.sh @@ -0,0 +1,7 @@ +#!/bin/bash +apt-get update +apt-get install -y build-essential cmake git libjson-c-dev libwebsockets-dev +git clone https://github.com/tsl0922/ttyd.git +cd ttyd && mkdir build && cd build +cmake .. +make && make install diff --git a/dungeon/run-app.sh b/dungeon/run-app.sh new file mode 100644 index 00000000..a23febf4 --- /dev/null +++ b/dungeon/run-app.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +ulimit -n 65536 + +ttyd --port 8989 -W telnet 172.238.63.244 4000 diff --git a/terminalcraft/app/dungeon/page.tsx b/terminalcraft/app/dungeon/page.tsx new file mode 100644 index 00000000..0b46eac2 --- /dev/null +++ b/terminalcraft/app/dungeon/page.tsx @@ -0,0 +1,40 @@ +export default function DungeonPage() { + const remoteUrl = "https://o4s8sossskck88cwos0kw88o.a.selfhosted.hackclub.com"; + + return ( +