diff --git a/.docker-compose.http.yml b/.docker-compose.http.yml index a6d35e6..b9aae34 100644 --- a/.docker-compose.http.yml +++ b/.docker-compose.http.yml @@ -20,7 +20,7 @@ services: websocket-ja: hostname: websocket-ja - image: git.h2-invent.com/meetling/websocket:1.0.13 + image: git.h2-invent.com/meetling/websocket: restart: unless-stopped extra_hosts: - ":" @@ -28,17 +28,17 @@ services: - ./.env - ./.env.local - ./.env.custom + networks: + - external + - internal labels: - "traefik.enable=true" - "traefik.http.routers.websocket-ja.rule=Host(``) && PathPrefix(`/ws`)" - "traefik.http.routers.websocket-ja.entrypoints=web" - networks: - - external - - internal #Here is the Jitsi-Admin app app-ja: - image: git.h2-invent.com/meetling/application:1.0.13 + image: git.h2-invent.com/meetling/application: restart: unless-stopped depends_on: db-ja: @@ -49,10 +49,6 @@ services: - ./.env.custom extra_hosts: - ":" - labels: - - "traefik.enable=true" - - "traefik.http.routers.app-ja.rule=Host(``)" - - "traefik.http.routers.app-ja.entrypoints=web" volumes: - theme_data:/var/www/html/theme - image_upload:/var/www/html/public/uploads/images @@ -60,6 +56,10 @@ services: networks: - external - internal + labels: + - "traefik.enable=true" + - "traefik.http.routers.app-ja.rule=Host(``)" + - "traefik.http.routers.app-ja.entrypoints=web" db-ja: image: mariadb:latest @@ -70,7 +70,9 @@ services: retries: 10 restart: unless-stopped env_file: + - ./.env - ./.env.local + - ./.env.custom environment: MARIADB_ROOT_PASSWORD: test volumes: @@ -85,7 +87,9 @@ services: db-ja: condition: service_healthy env_file: + - ./.env - ./.env.local + - ./.env.custom restart: unless-stopped command: - start-dev diff --git a/.docker-compose.https.yml b/.docker-compose.https.yml index a58e3a7..cdb804f 100644 --- a/.docker-compose.https.yml +++ b/.docker-compose.https.yml @@ -61,11 +61,9 @@ services: - ./data/letsencrypt:/letsencrypt - ./tools/traefik/config.yml:/etc/traefik/dynamic_conf/conf.yml:ro - #Here is the websocket hub websocket-ja: hostname: websocket-ja - image: h2invent/jitsi-admin-websocket:latest -# build: nodejs + image: git.h2-invent.com/meetling/websocket: restart: unless-stopped depends_on: - traefik-ja @@ -98,39 +96,22 @@ services: #Here is the Jitsi-Admin app app-ja: - <<: *jitsi_admin_app + image: git.h2-invent.com/meetling/application: + restart: unless-stopped depends_on: db-ja: condition: service_healthy - restart: unless-stopped - healthcheck: - test: [ "CMD", "curl", "-s", "-f", "-i", "http://localhost:80/health/check" ] - interval: 20s - timeout: 10s - start_period: 30s - retries: 10 env_file: - ./.env - ./.env.local - ./.env.custom - environment: - APACHE_DOCUMENT_ROOT: "public/" - PHP_EXTENSION_XDEBUG: "1" - PHP_INI_MEMORY_LIMIT: "1G" - PHP_EXTENSION_LDAP: 1 - PHP_EXTENSION_INTL: 1 - PHP_INI_UPLOAD_MAX_FILESIZE: 8M - PHP_INI_POST_MAX_SIZE: 8M - MAILER_TRANSPORT: smtp - OAUTH_KEYCLOAK_CLIENT_ID: jitsiadmin - OAUTH_KEYCLOAK_REALM: jitsiadmin - input_settings_allow_timezone: 1 - allowTimeZoneSwitch: 1 - CRON_USER_1: root - CRON_SCHEDULE_1: "* * * * *" - CRON_COMMAND_1: "php /var/www/html/bin/console cron:run" - - + volumes: + - theme_data:/var/www/html/theme + - image_upload:/var/www/html/public/uploads/images + - theme_assests_data:/var/www/html/public/theme + networks: + - external + - internal labels: - "traefik.enable=true" - "traefik.http.routers.app-ja.tls=true" @@ -141,34 +122,6 @@ services: - "traefik.http.services.app-ja.loadbalancer.sticky=true" - "traefik.http.services.app-ja.loadbalancer.sticky.cookie.name=jad" - "traefik.http.services.app-ja.loadbalancer.sticky.cookie.secure=true" - volumes: - - theme_data:/var/www/html/theme - - image_upload:/var/www/html/public/uploads/images - - theme_assests_data:/var/www/html/public/theme - networks: - - external - - internal - - app-queu: - <<: *jitsi_admin_app - - restart: unless-stopped - deploy: - mode: replicated - replicas: 2 - - env_file: - - ./.env - - ./.env.local - - ./.env.custom - depends_on: - app-ja: - condition: service_healthy - command: php /var/www/html/bin/console messenger:consume async --memory-limit=126m - volumes: - - theme_data:/var/www/html/theme - networks: - - internal db-ja: image: mariadb:latest @@ -186,7 +139,7 @@ services: MARIADB_ROOT_PASSWORD: test volumes: - mariadb:/var/lib/mysql - - ./docker/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d + - ./mysql-initdb:/docker-entrypoint-initdb.d networks: - internal @@ -216,9 +169,8 @@ services: - "traefik.http.routers.keycloak-ja.entrypoints=web" - "traefik.http.services.keycloak-ja.loadbalancer.server.port=8080" - "traefik.http.routers.keycloak-ja.tls.certresolver=letsencrypt" - volumes: - - ./docker/keycloak/:/opt/keycloak/data/import + - ./keycloak/:/opt/keycloak/data/import networks: - external - internal diff --git a/setup.sh b/setup.sh index a614b8a..c0ac9a1 100644 --- a/setup.sh +++ b/setup.sh @@ -41,6 +41,13 @@ else echo "NEW_UUID=$NEW_UUID" >> $FILE source $FILE fi + + VERSION=${VERSION:=latest} + read -p "Which Release Version do you want to install [$VERSION]: " input + VERSION=${input:=$VERSION} + sed -i '/VERSION/d' $FILE + echo "VERSION=$VERSION" >> $FILE + ENVIRONMENT=${ENVIRONMENT:=prod} read -p "Enter the environment dev/prod[$ENVIRONMENT]: " input ENVIRONMENT=${input:=$ENVIRONMENT} @@ -141,6 +148,7 @@ echo "" cp .docker-compose.$HTTP_METHOD.yml docker-compose.yml sed -i "s||$PUBLIC_URL|g" docker-compose.yml sed -i "s||$HOST_IP|g" docker-compose.yml +sed -i "s||$VERSION|g" docker-compose.yml echo ------------------------------------------------------------ echo --------- 4. Migrate and Setup Docker Volume User ----------