Skip to content

Commit

Permalink
Merge pull request #1 from infracloudio/jitsi-meet
Browse files Browse the repository at this point in the history
Add jitsi meet acorn
  • Loading branch information
samkulkarni20 authored Dec 12, 2023
2 parents 656df82 + 0971c2d commit 02c1062
Show file tree
Hide file tree
Showing 4 changed files with 181 additions and 0 deletions.
29 changes: 29 additions & 0 deletions .github/workflows/publish.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Publish Acorn image
on:
workflow_dispatch:
push:
tags:
- "v[0-9]*"

jobs:
publish:
name: Publish
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: acorn-io/actions-setup@v2
with:
acorn-version: "main"
- name: Login to GHCR
uses: acorn-io/actions-login@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and Publish with signature
run: |
TAG=${GITHUB_REF#refs/*/}
acorn build --platform linux/amd64 --platform linux/arm64 --push -t ghcr.io/infracloudio/jitsi-meet-acorn:${TAG} .
144 changes: 144 additions & 0 deletions Acornfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
name: "Jitsi Meet Acorn"
description: "Hosting a video conferencing solution on Acorn"
readme: "./README.md"
icon: "./jitsi-meet-icon.png"

args: {
// Your local timezone ID e.g. America/Los_Angeles, Europe/London, etc. Default is America/Los_Angeles.
TZ: ""
}

containers: {
jicofo: {
image: "jitsi/jicofo:stable-9111"
ports: ["8888:8888", "80:80"]
env: {
JICOFO_AUTH_USER: "secret://jicofo/username"
JICOFO_AUTH_PASSWORD: "secret://jicofo/password"
JICOFO_COMPONENT_SECRET: "secret://jicofo-component-secret/token"
XMPP_AUTH_DOMAIN: "auth.meet.jitsi"
XMPP_INTERNAL_MUC_DOMAIN: "internal-muc.meet.jitsi"
XMPP_MUC_DOMAIN: "muc.meet.jitsi"
XMPP_RECORDER_DOMAIN: "recorder.meet.jitsi"
ENABLE_COLIBRI_WEBSOCKET: "false"
ENABLE_XMPP_WEBSOCKET: "false"
PUBLIC_URL: "meet.jitsi-acorn.com"
TZ: std.ifelse(args.TZ != "", args.TZ, "America/Los_Angeles")
XMPP_DOMAIN: "meet.jitsi"
XMPP_GUEST_DOMAIN: "guest.meet.jitsi"
ENABLE_AUTH: "0"
ENABLE_GUESTS: "1"
JVB_BREWERY_MUC: "jvbbrewery"
XMPP_SERVER: "prosody.@{acorn.namespace}.svc.cluster.local"
}
dependsOn: ["prosody"]
}
jvb: {
image: "jitsi/jvb:stable-9111"
ports: ["10000:10000/udp"]
env: {
JVB_AUTH_USER: "secret://jvb/username"
JVB_AUTH_PASSWORD: "secret://jvb/password"
ENABLE_AUTH: "0"
ENABLE_GUESTS: "1"
PUBLIC_URL: "meet.jitsi-acorn.com"
XMPP_DOMAIN: "meet.jitsi"
XMPP_MUC_DOMAIN: "muc.meet.jitsi"
XMPP_AUTH_DOMAIN: "auth.meet.jitsi"
XMPP_GUEST_DOMAIN: "guest.meet.jitsi"
XMPP_RECORDER_DOMAIN: "recorder.meet.jitsi"
XMPP_INTERNAL_MUC_DOMAIN: "internal-muc.meet.jitsi"
ENABLE_COLIBRI_WEBSOCKET: "false"
ENABLE_XMPP_WEBSOCKET: "false"
TZ: std.ifelse(args.TZ != "", args.TZ, "America/Los_Angeles")
JVB_BREWERY_MUC: "jvbbrewery"
JVB_PORT: "10000"
JVB_STUN_SERVERS: "meet-jit-si-turnrelay.jitsi.net:443"
JVB_TCP_HARVESTER_DISABLED: "1"
XMPP_SERVER: "prosody.@{acorn.namespace}.svc.cluster.local"
COLIBRI_REST_ENABLED: "true"
}
dependsOn: ["prosody"]
}
web: {
image: "jitsi/web:stable-9111"
ports: publish: ["80/http"]
env: {
DISABLE_HTTPS: "1"
ENABLE_HTTP_REDIRECT: "0"
JICOFO_AUTH_USER: "secret://jicofo/username"
XMPP_BOSH_URL_BASE: "http://prosody.@{acorn.namespace}.svc.cluster.local:5280"
ENABLE_AUTH: "0"
ENABLE_GUESTS: "1"
PUBLIC_URL: "meet.jitsi-acorn.com"
XMPP_DOMAIN: "meet.jitsi"
XMPP_MUC_DOMAIN: "muc.meet.jitsi"
XMPP_AUTH_DOMAIN: "auth.meet.jitsi"
XMPP_GUEST_DOMAIN: "guest.meet.jitsi"
XMPP_RECORDER_DOMAIN: "recorder.meet.jitsi"
XMPP_INTERNAL_MUC_DOMAIN: "internal-muc.meet.jitsi"
ENABLE_COLIBRI_WEBSOCKET: "false"
ENABLE_XMPP_WEBSOCKET: "false"
TZ: std.ifelse(args.TZ != "", args.TZ, "America/Los_Angeles")
}
}
prosody: {
image: "jitsi/prosody:stable-9111"
ports: expose: ["5222:5222","5269:5269","5347:5347","5280:5280/http","5281:5281/http"]
dirs: {
"/config/data": "volume://prosody-data"
}
env: {
JICOFO_AUTH_USER: "secret://jicofo/username"
JICOFO_AUTH_PASSWORD: "secret://jicofo/password"
JICOFO_COMPONENT_SECRET: "secret://jicofo-component-secret/token"
JVB_AUTH_USER: "secret://jvb/username"
JVB_AUTH_PASSWORD: "secret://jvb/password"
ENABLE_AUTH: "0"
ENABLE_GUESTS: "1"
PUBLIC_URL: "meet.jitsi-acorn.com"
XMPP_DOMAIN: "meet.jitsi"
XMPP_MUC_DOMAIN: "muc.meet.jitsi"
XMPP_AUTH_DOMAIN: "auth.meet.jitsi"
XMPP_GUEST_DOMAIN: "guest.meet.jitsi"
XMPP_RECORDER_DOMAIN: "recorder.meet.jitsi"
XMPP_INTERNAL_MUC_DOMAIN: "internal-muc.meet.jitsi"
ENABLE_COLIBRI_WEBSOCKET: "false"
ENABLE_XMPP_WEBSOCKET: "false"
TZ: std.ifelse(args.TZ != "", args.TZ, "America/Los_Angeles")
}
}
}

secrets: {
"jicofo-component-secret": type: "token"

jicofo: {
name: "credentials of the jicofo user"
type: "basic"
params: {
passwordLength: 10
passwordCharacters: "A-Za-z0-9"
}
data: {
username: "jicofo"
password: ""
}
}
jvb: {
name: "credentials of the jvb user"
type: "basic"
params: {
passwordLength: 10
passwordCharacters: "A-Za-z0-9"
}
data: {
username: "jvb"
password: ""
}
}
}

volumes: {
"prosody-data": {}
}
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
## What is Jitsi Meet?
[Jitsi Meet](https://jitsi.org/jitsi-meet/) is a free and open source video conferencing solution. You can deploy it yourself for a free private video conferencing solution to meet, video chat with your friends and colleagues. It offers all the features that the other leading video conferencing solutions have, such as screen sharing, recording, polls, etc. It also has client applications available for desktop & mobile devices.

## Acorn
Acorn is designed to simplify running modern cloud-native apps on the public cloud. That makes it the ideal candidate for running applications like Jitsi meet. It also provides a big free sandbox that anyone can use to run their applications.

## Running Jitsi Meet on Acorn
Run the Jitsi Meet application on Acorn by deploying the image `ghcr.io/infracloudio/jitsi-meet-acorn:v#.#.#-#`. Optionally you can specify the timezone of the deployment to your own by updating the `TZ` argument. The default timezone is `America/Los_Angeles`.
Binary file added jitsi-meet-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 02c1062

Please sign in to comment.