diff --git a/apps/mediacms/4.1.0/data.yml b/apps/mediacms/4.1.0/data.yml new file mode 100644 index 00000000..a39884b7 --- /dev/null +++ b/apps/mediacms/4.1.0/data.yml @@ -0,0 +1,133 @@ +additionalProperties: + formFields: + - child: + default: "" + envKey: PANEL_POSTGRES_SERVICE + required: true + type: service + default: postgresql + envKey: PANEL_POSTGRES_TYPE + labelZh: Postgres 服务 (前置检查) + labelEn: Postgres Service (Pre-check) + required: true + type: apps + values: + - label: PostgreSQL + value: postgresql + - child: + default: "" + envKey: PANEL_REDIS_SERVICE + required: true + type: service + default: redis + envKey: PANEL_REDIS_TYPE + labelZh: Redis 服务 (前置检查) + labelEn: Redis Service (Pre-check) + required: true + type: apps + values: + - label: Redis + value: redis + - default: "/home/mediacms" + edit: true + envKey: MEDIACMS_ROOT_PATH + labelZh: 数据持久化路径 + labelEn: Data persistence path + required: true + type: text + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: WebUI 端口 + labelEn: WebUI port + required: true + rule: paramPort + type: number + - default: "" + edit: true + envKey: ADMIN_USER + labelZh: 管理员 用户名 + labelEn: Admin Username + required: true + type: text + - default: "" + edit: true + envKey: ADMIN_EMAIL + labelZh: 管理员邮箱 + labelEn: Admin Email + required: true + type: text + - default: "" + edit: true + envKey: ADMIN_PASSWORD + labelZh: 管理员密码 + labelEn: Admin Password + required: true + type: password + - default: "http://localhost" + edit: true + envKey: FRONTEND_HOST + labelZh: 公开地址 + labelEn: Public address + required: true + type: text + - default: "MediaCMS" + edit: true + envKey: PORTAL_NAME + labelZh: 站点名称 + labelEn: Site Name + required: true + type: text + - default: "MediaCMS" + edit: true + envKey: PORTAL_NAME + labelZh: 站点名称 + labelEn: Site Name + required: true + type: text + - default: "redis://127.0.0.1:6379/1" + edit: true + envKey: REDIS_LOCATION + labelZh: Redis 地址 + labelEn: Redis Location + required: true + type: text + - default: "127.0.0.1" + edit: true + envKey: POSTGRES_HOST + labelZh: 数据库 主机地址 + labelEn: Database Host + required: true + type: text + - default: 5432 + edit: true + envKey: DB_PORT + labelZh: 数据库 端口 + labelEn: Database Port + required: true + rule: paramPort + type: number + - default: "mediacms" + edit: true + envKey: DB_NAME + labelZh: 数据库 名称 + labelEn: Database Name + required: true + rule: paramCommon + type: text + - default: "mediacms" + edit: true + envKey: DB_USER + labelZh: 数据库 用户名 + labelEn: Database Username + required: true + type: text + - default: "" + edit: true + envKey: DB_PASSWORD + labelZh: 数据库 密码 + labelEn: Database Password + random: true + required: true + rule: paramComplexity + type: password diff --git a/apps/mediacms/4.1.0/docker-compose.yml b/apps/mediacms/4.1.0/docker-compose.yml new file mode 100644 index 00000000..b097b403 --- /dev/null +++ b/apps/mediacms/4.1.0/docker-compose.yml @@ -0,0 +1,76 @@ +networks: + 1panel-network: + external: true + +services: + mediacms-migrations: + image: qyg2297248353/mediacms:v4.1.0 + container_name: migrations-${CONTAINER_NAME} + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${MEDIACMS_ROOT_PATH}/data:/home/mediacms.io/mediacms/ + command: "./deploy/docker/prestart.sh" + restart: on-failure + environment: + - ENABLE_UWSGI=no + - ENABLE_NGINX=no + - ENABLE_CELERY_SHORT=no + - ENABLE_CELERY_LONG=no + - ENABLE_CELERY_BEAT=no + - ADMIN_USER=${ADMIN_USER} + - ADMIN_EMAIL=${ADMIN_EMAIL} + - ADMIN_PASSWORD=${ADMIN_PASSWORD} + mediacms: + image: qyg2297248353/mediacms:v4.1.0 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:80 + depends_on: + - mediacms-migrations + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${MEDIACMS_ROOT_PATH}/data:/home/mediacms.io/mediacms/ + command: "./deploy/docker/prestart.sh" + restart: always + environment: + - ENABLE_CELERY_BEAT=no + - ENABLE_CELERY_SHORT=no + - ENABLE_CELERY_LONG=no + - ENABLE_MIGRATIONS=no + mediacms-celery-beat: + image: qyg2297248353/mediacms:v4.1.0 + container_name: celery-beat-${CONTAINER_NAME} + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${MEDIACMS_ROOT_PATH}/data:/home/mediacms.io/mediacms/ + environment: + - ENABLE_UWSGI=no + - ENABLE_NGINX=no + - ENABLE_CELERY_SHORT=no + - ENABLE_CELERY_LONG=no + - ENABLE_MIGRATIONS=no + mediacms-celery-worker: + image: qyg2297248353/mediacms:v4.1.0 + container_name: celery-worker-${CONTAINER_NAME} + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} + volumes: + - ${MEDIACMS_ROOT_PATH}/data:/home/mediacms.io/mediacms/ + environment: + - ENABLE_UWSGI=no + - ENABLE_NGINX=no + - ENABLE_CELERY_BEAT=no + - ENABLE_MIGRATIONS=no + depends_on: + - mediacms-migrations diff --git a/apps/mediacms/4.1.0/scripts/init.sh b/apps/mediacms/4.1.0/scripts/init.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/mediacms/4.1.0/scripts/init.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/mediacms/4.1.0/scripts/uninstall.sh b/apps/mediacms/4.1.0/scripts/uninstall.sh new file mode 100644 index 00000000..c86c4fbc --- /dev/null +++ b/apps/mediacms/4.1.0/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/mediacms/4.1.0/scripts/upgrade.sh b/apps/mediacms/4.1.0/scripts/upgrade.sh new file mode 100644 index 00000000..77b84912 --- /dev/null +++ b/apps/mediacms/4.1.0/scripts/upgrade.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/mediacms/README.md b/apps/mediacms/README.md new file mode 100644 index 00000000..3e0d7c20 --- /dev/null +++ b/apps/mediacms/README.md @@ -0,0 +1,36 @@ +# Media CMS + +现代、功能齐全的开源视频和媒体内容管理系统 + +![Media CMS](https://file.lifebus.top/imgs/mediacms_cover.png) + +MediaCMS 是一个现代、功能齐全的开源视频和媒体内容管理系统。它旨在满足现代网络平台观看和分享媒体的需求。它可以用来在几分钟内构建一个从小型到中型视频和媒体门户。 + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 功能 + ++ 完全控制您的数据:自己托管! ++ 支持多种发布工作流程:公开、私有、未列出和自定义 ++ 现代技术:Django/Python/Celery,React。 ++ 多种媒体类型支持:视频、音频、图片、PDF ++ 多种媒体分类选项:类别、标签和自定义 ++ 多种媒体分享选项:社交媒体分享,视频嵌入代码生成 ++ 轻松媒体搜索:增强实时搜索功能 ++ 音频和视频内容播放列表:创建播放列表,添加和重新排序内容 ++ 响应式设计:包括浅色和深色主题 ++ 高级用户管理:允许自助注册,仅限邀请,封闭。 ++ 可配置操作:允许下载,添加评论,添加点赞,添加不喜欢,举报媒体 ++ 配置选项:更改标志、字体、样式,添加更多页面 ++ 增强视频播放器:具有多种分辨率和播放速度选项的自定义 video.js 播放器 ++ 多个转码配置文件:针对多个维度(240p、360p、480p、720p、1080p)和多个配置文件(h264、h265、vp9)的默认设置 ++ 自适应视频流:通过 HLS 协议实现 ++ 字幕/CC:支持多语言字幕文件 ++ 可扩展转码:通过优先级进行转码。对远程工作人员的实验性支持 ++ 分块文件上传:用于可暂停/可续传的内容上传 ++ REST API:通过 Swagger 进行文档化 ++ 大多数 CMS 已翻译成多种语言 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/mediacms/data.yml b/apps/mediacms/data.yml new file mode 100644 index 00000000..0475a770 --- /dev/null +++ b/apps/mediacms/data.yml @@ -0,0 +1,14 @@ +additionalProperties: + key: mediacms + name: Media CMS + tags: + - WebSite + - Local + shortDescZh: 现代、功能齐全的开源视频和媒体内容管理系统 + shortDescEn: Modern, fully featured open source video and media CMS + type: website + crossVersionUpdate: true + limit: 0 + website: https://mediacms.io/ + github: https://github.com/mediacms-io/mediacms/ + document: https://github.com/mediacms-io/mediacms/ diff --git a/apps/mediacms/logo.png b/apps/mediacms/logo.png new file mode 100644 index 00000000..1602be03 Binary files /dev/null and b/apps/mediacms/logo.png differ