parent
6110a17533
commit
c0898d0df2
@ -39,3 +39,36 @@ jobs:
|
|||||||
--label "traefik.http.routers.chad-server.tls.certresolver=myresolver" \
|
--label "traefik.http.routers.chad-server.tls.certresolver=myresolver" \
|
||||||
--label "traefik.http.services.chad-server.loadbalancer.server.port=80" \
|
--label "traefik.http.services.chad-server.loadbalancer.server.port=80" \
|
||||||
chad-server:latest
|
chad-server:latest
|
||||||
|
|
||||||
|
client:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Keyscan
|
||||||
|
run: |
|
||||||
|
ssh-keyscan git.koptilnya.xyz >> ~/.ssh/known_hosts
|
||||||
|
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||||
|
ssh-strict: false
|
||||||
|
persist-credentials: false
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: docker build -t chad-client ./client
|
||||||
|
|
||||||
|
- name: Stop old container
|
||||||
|
run: docker rm -f chad-client || true
|
||||||
|
|
||||||
|
- name: Run
|
||||||
|
run: |
|
||||||
|
docker run -d \
|
||||||
|
--name chad-client \
|
||||||
|
--network traefik \
|
||||||
|
--label "traefik.enable=true" \
|
||||||
|
--label "traefik.http.routers.chad-client.rule=Host(\`chad.koptilnya.xyz\`)" \
|
||||||
|
--label "traefik.http.routers.chad-client.entrypoints=websecure" \
|
||||||
|
--label "traefik.http.routers.chad-client.tls.certresolver=myresolver" \
|
||||||
|
--label "traefik.http.services.chad-client.loadbalancer.server.port=80" \
|
||||||
|
chad-client:latest
|
||||||
|
|||||||
17
client/Dockerfile
Normal file
17
client/Dockerfile
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
FROM node:lts-alpine AS builder
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY package.json yarn.lock ./
|
||||||
|
|
||||||
|
RUN yarn install --frozen-lockfile
|
||||||
|
COPY . .
|
||||||
|
RUN yarn build
|
||||||
|
|
||||||
|
FROM nginx:stable-alpine
|
||||||
|
|
||||||
|
COPY --from=builder /app/dist /usr/share/nginx/html
|
||||||
|
|
||||||
|
EXPOSE 80
|
||||||
|
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
@ -43,7 +43,13 @@ export const useMediasoup = createGlobalState(() => {
|
|||||||
|
|
||||||
async function createSendTransport() {
|
async function createSendTransport() {
|
||||||
const params = await socket.emitWithAck('createTransport')
|
const params = await socket.emitWithAck('createTransport')
|
||||||
sendTransport = device.createSendTransport(params)
|
sendTransport = device.createSendTransport({
|
||||||
|
...params,
|
||||||
|
iceServers: [
|
||||||
|
{ urls: 'stun:stun.sipnet.ru:3478' },
|
||||||
|
...(params.iceServers ?? []),
|
||||||
|
],
|
||||||
|
})
|
||||||
|
|
||||||
sendTransport.on('connect', async ({ dtlsParameters }, callback, errback) => {
|
sendTransport.on('connect', async ({ dtlsParameters }, callback, errback) => {
|
||||||
try {
|
try {
|
||||||
@ -83,7 +89,13 @@ export const useMediasoup = createGlobalState(() => {
|
|||||||
|
|
||||||
async function createRecvTransport() {
|
async function createRecvTransport() {
|
||||||
const params = await socket.emitWithAck('createTransport')
|
const params = await socket.emitWithAck('createTransport')
|
||||||
recvTransport = device.createRecvTransport(params)
|
recvTransport = device.createRecvTransport({
|
||||||
|
...params,
|
||||||
|
iceServers: [
|
||||||
|
{ urls: 'stun:stun.sipnet.ru:3478' },
|
||||||
|
...(params.iceServers ?? []),
|
||||||
|
],
|
||||||
|
})
|
||||||
|
|
||||||
recvTransport.on('connect', async ({ dtlsParameters }, callback, errback) => {
|
recvTransport.on('connect', async ({ dtlsParameters }, callback, errback) => {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@ -4,7 +4,7 @@ RUN corepack enable
|
|||||||
COPY package.json yarn.lock ./
|
COPY package.json yarn.lock ./
|
||||||
RUN apt update && apt install --yes python3 python3-pip build-essential
|
RUN apt update && apt install --yes python3 python3-pip build-essential
|
||||||
RUN yarn set version latest
|
RUN yarn set version latest
|
||||||
RUN yarn install
|
RUN yarn install --frozen-lockfile
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
ENV PORT=80
|
ENV PORT=80
|
||||||
|
|||||||
@ -55,7 +55,7 @@ io.on("connection", (socket) => {
|
|||||||
socket.on("createTransport", async (cb) => {
|
socket.on("createTransport", async (cb) => {
|
||||||
try {
|
try {
|
||||||
const transport = await router.createWebRtcTransport({
|
const transport = await router.createWebRtcTransport({
|
||||||
listenIps: [{ ip: "0.0.0.0", announcedIp: "127.0.0.1" }],
|
listenIps: [{ ip: "0.0.0.0", announcedIp: "91.144.171.182" }],
|
||||||
enableUdp: true,
|
enableUdp: true,
|
||||||
enableTcp: true,
|
enableTcp: true,
|
||||||
preferUdp: true,
|
preferUdp: true,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user