From c0a22bab375ab26322e33ac8e973181a43b34f42 Mon Sep 17 00:00:00 2001 From: Ian Rasmussen Date: Sat, 10 Aug 2024 17:56:11 +0000 Subject: [PATCH 001/224] wordpress_elderseth --- apps/wordpress_elderseth/config.json | 30 +++++++++ apps/wordpress_elderseth/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_elderseth/metadata/logo.jpg | Bin 0 -> 15007 bytes 4 files changed, 130 insertions(+) create mode 100644 apps/wordpress_elderseth/config.json create mode 100644 apps/wordpress_elderseth/docker-compose.yml create mode 100644 apps/wordpress_elderseth/metadata/description.md create mode 100644 apps/wordpress_elderseth/metadata/logo.jpg diff --git a/apps/wordpress_elderseth/config.json b/apps/wordpress_elderseth/config.json new file mode 100644 index 0000000000..2073bf13f4 --- /dev/null +++ b/apps/wordpress_elderseth/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Elderseth", + "available": true, + "port": 8214, + "exposable": true, + "id": "wordpress_elderseth", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml new file mode 100644 index 0000000000..e59281c4b2 --- /dev/null +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_elderseth: + container_name: wordpress_elderseth + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=elderseth-db + - WORDPRESS_DB_NAME=elderseth + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/elderseth:/var/www/elderseth + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + elderseth-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=elderseth + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/elderseth-db:/var/lib/elderseth-db + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_elderseth/metadata/description.md b/apps/wordpress_elderseth/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_elderseth/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_elderseth/metadata/logo.jpg b/apps/wordpress_elderseth/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From f9a1bd35f0b6f5bd5a3aed3619f1e6fe317f4bb6 Mon Sep 17 00:00:00 2001 From: Ian Rasmussen Date: Sat, 10 Aug 2024 18:33:19 +0000 Subject: [PATCH 002/224] wordpress_elderseth --- apps/wordpress_elderseth/docker-compose.yml | 44 ++++++++++----------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index e59281c4b2..64d6a690a0 100644 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -10,41 +10,41 @@ services: - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/elderseth:/var/www/elderseth + - ${APP_DATA_DIR}/data/wordpress_elderseth:/var/www/wordrpess_elderseth ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_elderseth-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_elderseth-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_elderseth.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_elderseth-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-insecure.entrypoints: web + traefik.http.routers.wordpress_elderseth-insecure.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-insecure.middlewares: wordpress_elderseth-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_elderseth.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_elderseth.entrypoints: websecure + traefik.http.routers.wordpress_elderseth.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_elderseth-local-insecure.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-local-insecure.entrypoints: web + traefik.http.routers.wordpress_elderseth-local-insecure.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-local-insecure.middlewares: wordpress_elderseth-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_elderseth-local.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-local.entrypoints: websecure + traefik.http.routers.wordpress_elderseth-local.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-local.tls: true runtipi.managed: true - elderseth-db: + woredpress_elderseth-db: container_name: wordpress-db image: mariadb:11.1.3 environment: @@ -53,7 +53,7 @@ services: - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/elderseth-db:/var/lib/elderseth-db + - ${APP_DATA_DIR}/data/wordpress_elderseth-db:/var/lib/wordpress_elderseth-db restart: unless-stopped networks: - tipi_main_network From 1bc7cdf29ad0cec2560ea17d9a16a156759e0d9e Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 10 Aug 2024 20:00:29 +0000 Subject: [PATCH 003/224] add test --- testing.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 testing.txt diff --git a/testing.txt b/testing.txt new file mode 100644 index 0000000000..e69de29bb2 From 65ca64b7949e6322443480ccfa52b92b0236e7f4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 10 Aug 2024 20:02:13 +0000 Subject: [PATCH 004/224] remove testing --- testing.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 testing.txt diff --git a/testing.txt b/testing.txt deleted file mode 100644 index e69de29bb2..0000000000 From d0383a2840daf68f8f5555f35d4492e23d9f527b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 10 Aug 2024 21:47:34 +0000 Subject: [PATCH 005/224] Add wordpress_elderseth" : ; --- apps/wordpress_elderseth/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index 64d6a690a0..955e81de79 100644 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -44,7 +44,7 @@ services: traefik.http.routers.wordpress_elderseth-local.service: wordpress_elderseth traefik.http.routers.wordpress_elderseth-local.tls: true runtipi.managed: true - woredpress_elderseth-db: + wordpress_elderseth-db: container_name: wordpress-db image: mariadb:11.1.3 environment: From 0fbd6b5dae0b022e7795385a7232c4af2ab491a0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 10 Aug 2024 21:56:59 +0000 Subject: [PATCH 006/224] Add wordpress_elderseth --- apps/wordpress_elderseth/docker-compose.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index 955e81de79..6025fa4cdd 100644 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -5,8 +5,8 @@ services: container_name: wordpress_elderseth image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=elderseth-db - - WORDPRESS_DB_NAME=elderseth + - WORDPRESS_DB_HOST=wordpress_elderseth-db + - WORDPRESS_DB_NAME=wordpress_elderseth - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: @@ -45,11 +45,11 @@ services: traefik.http.routers.wordpress_elderseth-local.tls: true runtipi.managed: true wordpress_elderseth-db: - container_name: wordpress-db + container_name: wordpress_elderseth-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=elderseth + - MYSQL_DATABASE=wordpress_elderseth - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: From 313c9759011f190983e63affad3638ddae08bbf5 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 10 Aug 2024 22:15:21 +0000 Subject: [PATCH 007/224] Add wordpress_elderseth --- apps/wordpress_stepparentpath/config.json | 30 +++++++++ .../docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ .../metadata/logo.jpg | Bin 0 -> 15007 bytes 4 files changed, 130 insertions(+) create mode 100644 apps/wordpress_stepparentpath/config.json create mode 100644 apps/wordpress_stepparentpath/docker-compose.yml create mode 100644 apps/wordpress_stepparentpath/metadata/description.md create mode 100644 apps/wordpress_stepparentpath/metadata/logo.jpg diff --git a/apps/wordpress_stepparentpath/config.json b/apps/wordpress_stepparentpath/config.json new file mode 100644 index 0000000000..7f5b71e028 --- /dev/null +++ b/apps/wordpress_stepparentpath/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress StepParent Path", + "available": true, + "port": 8215, + "exposable": true, + "id": "wordpress_stepparentpath", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_stepparentpath/docker-compose.yml b/apps/wordpress_stepparentpath/docker-compose.yml new file mode 100644 index 0000000000..fe49bedc13 --- /dev/null +++ b/apps/wordpress_stepparentpath/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress_stepparentpath + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_stepparentpath-db + - WORDPRESS_DB_NAME=wordpress_stepparentpath + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_stepparentpath:/var/www/stepparentpath + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_stepparentpath-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_stepparentpath-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_stepparentpath.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_stepparentpath-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-insecure.service: wordpress + traefik.http.routers.wordpress_stepparentpath-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress_stepparentpath.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_stepparentpath-local-insecure.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-local-insecure.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local-insecure.middlewares: wordpress_stepparentpath-redirect + # Local domain secure + traefik.http.routers.wordpress_stepparentpath-local.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath-local.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local.tls: true + runtipi.managed: true + wordpress_stepparentpath-db: + container_name: wordpress_stepparentpath-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress_stepparentpath + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/stepparentpath:/var/lib/stepparentpath + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_stepparentpath/metadata/description.md b/apps/wordpress_stepparentpath/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_stepparentpath/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_stepparentpath/metadata/logo.jpg b/apps/wordpress_stepparentpath/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From e784b769a30ca94f4115aae1af3e1c8e968d182b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 05:15:16 +0000 Subject: [PATCH 008/224] Add wordpress_elderseth --- apps/wordpress_aidanras/config.json | 30 +++++++++ apps/wordpress_aidanras/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_aidanras/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_aweggly/config.json | 30 +++++++++ apps/wordpress_aweggly/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress_aweggly/metadata/description.md | 39 +++++++++++ apps/wordpress_aweggly/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_blondesagainsttrump/config.json | 30 +++++++++ .../docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ .../metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_christianras/config.json | 30 +++++++++ .../wordpress_christianras/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_christianras/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_corbieplays/config.json | 30 +++++++++ apps/wordpress_corbieplays/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_corbieplays/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_cuddleconfessions/config.json | 30 +++++++++ .../docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ .../metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_desirearts/config.json | 30 +++++++++ apps/wordpress_desirearts/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_desirearts/metadata/logo.jpg | Bin 0 -> 15007 bytes .../config.json | 30 +++++++++ .../docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ .../metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_kiracuts/config.json | 30 +++++++++ apps/wordpress_kiracuts/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_kiracuts/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_lickingvape/config.json | 30 +++++++++ apps/wordpress_lickingvape/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_lickingvape/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_marleebean/config.json | 30 +++++++++ apps/wordpress_marleebean/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_marleebean/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_visionarytalentkids/config.json | 30 +++++++++ .../docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ .../metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_yoginilist/config.json | 30 +++++++++ apps/wordpress_yoginilist/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_yoginilist/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes 56 files changed, 1820 insertions(+) create mode 100644 apps/wordpress_aidanras/config.json create mode 100644 apps/wordpress_aidanras/docker-compose.yml create mode 100644 apps/wordpress_aidanras/metadata/description.md create mode 100644 apps/wordpress_aidanras/metadata/logo.jpg create mode 100644 apps/wordpress_aweggly/config.json create mode 100644 apps/wordpress_aweggly/docker-compose.yml create mode 100644 apps/wordpress_aweggly/metadata/description.md create mode 100644 apps/wordpress_aweggly/metadata/logo.jpg create mode 100644 apps/wordpress_blondesagainsttrump/config.json create mode 100644 apps/wordpress_blondesagainsttrump/docker-compose.yml create mode 100644 apps/wordpress_blondesagainsttrump/metadata/description.md create mode 100644 apps/wordpress_blondesagainsttrump/metadata/logo.jpg create mode 100644 apps/wordpress_christianras/config.json create mode 100644 apps/wordpress_christianras/docker-compose.yml create mode 100644 apps/wordpress_christianras/metadata/description.md create mode 100644 apps/wordpress_christianras/metadata/logo.jpg create mode 100644 apps/wordpress_corbieplays/config.json create mode 100644 apps/wordpress_corbieplays/docker-compose.yml create mode 100644 apps/wordpress_corbieplays/metadata/description.md create mode 100644 apps/wordpress_corbieplays/metadata/logo.jpg create mode 100644 apps/wordpress_cuddleconfessions/config.json create mode 100644 apps/wordpress_cuddleconfessions/docker-compose.yml create mode 100644 apps/wordpress_cuddleconfessions/metadata/description.md create mode 100644 apps/wordpress_cuddleconfessions/metadata/logo.jpg create mode 100644 apps/wordpress_desirearts/config.json create mode 100644 apps/wordpress_desirearts/docker-compose.yml create mode 100644 apps/wordpress_desirearts/metadata/description.md create mode 100644 apps/wordpress_desirearts/metadata/logo.jpg create mode 100644 apps/wordpress_hometownheartstrings/config.json create mode 100644 apps/wordpress_hometownheartstrings/docker-compose.yml create mode 100644 apps/wordpress_hometownheartstrings/metadata/description.md create mode 100644 apps/wordpress_hometownheartstrings/metadata/logo.jpg create mode 100644 apps/wordpress_kiracuts/config.json create mode 100644 apps/wordpress_kiracuts/docker-compose.yml create mode 100644 apps/wordpress_kiracuts/metadata/description.md create mode 100644 apps/wordpress_kiracuts/metadata/logo.jpg create mode 100644 apps/wordpress_lickingvape/config.json create mode 100644 apps/wordpress_lickingvape/docker-compose.yml create mode 100644 apps/wordpress_lickingvape/metadata/description.md create mode 100644 apps/wordpress_lickingvape/metadata/logo.jpg create mode 100644 apps/wordpress_marleebean/config.json create mode 100644 apps/wordpress_marleebean/docker-compose.yml create mode 100644 apps/wordpress_marleebean/metadata/description.md create mode 100644 apps/wordpress_marleebean/metadata/logo.jpg create mode 100644 apps/wordpress_visionarytalentkids/config.json create mode 100644 apps/wordpress_visionarytalentkids/docker-compose.yml create mode 100644 apps/wordpress_visionarytalentkids/metadata/description.md create mode 100644 apps/wordpress_visionarytalentkids/metadata/logo.jpg create mode 100644 apps/wordpress_yoginilist/config.json create mode 100644 apps/wordpress_yoginilist/docker-compose.yml create mode 100644 apps/wordpress_yoginilist/metadata/description.md create mode 100644 apps/wordpress_yoginilist/metadata/logo.jpg create mode 100644 apps/wordpress_yoginilist/wordpress/config.json create mode 100644 apps/wordpress_yoginilist/wordpress/docker-compose.yml create mode 100644 apps/wordpress_yoginilist/wordpress/metadata/description.md create mode 100644 apps/wordpress_yoginilist/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_aidanras/config.json b/apps/wordpress_aidanras/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_aidanras/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_aidanras/docker-compose.yml b/apps/wordpress_aidanras/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_aidanras/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_aidanras/metadata/description.md b/apps/wordpress_aidanras/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_aidanras/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_aidanras/metadata/logo.jpg b/apps/wordpress_aidanras/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_aweggly/config.json b/apps/wordpress_aweggly/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_aweggly/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_aweggly/docker-compose.yml b/apps/wordpress_aweggly/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_aweggly/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_aweggly/metadata/description.md b/apps/wordpress_aweggly/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_aweggly/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_aweggly/metadata/logo.jpg b/apps/wordpress_aweggly/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_blondesagainsttrump/config.json b/apps/wordpress_blondesagainsttrump/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_blondesagainsttrump/docker-compose.yml b/apps/wordpress_blondesagainsttrump/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_blondesagainsttrump/metadata/description.md b/apps/wordpress_blondesagainsttrump/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_blondesagainsttrump/metadata/logo.jpg b/apps/wordpress_blondesagainsttrump/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_christianras/config.json b/apps/wordpress_christianras/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_christianras/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_christianras/docker-compose.yml b/apps/wordpress_christianras/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_christianras/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_christianras/metadata/description.md b/apps/wordpress_christianras/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_christianras/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_christianras/metadata/logo.jpg b/apps/wordpress_christianras/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_corbieplays/config.json b/apps/wordpress_corbieplays/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_corbieplays/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_corbieplays/docker-compose.yml b/apps/wordpress_corbieplays/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_corbieplays/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_corbieplays/metadata/description.md b/apps/wordpress_corbieplays/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_corbieplays/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_corbieplays/metadata/logo.jpg b/apps/wordpress_corbieplays/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_cuddleconfessions/config.json b/apps/wordpress_cuddleconfessions/config.json new file mode 100644 index 0000000000..3c6c9672db --- /dev/null +++ b/apps/wordpress_cuddleconfessions/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress CuddleConfessions" + "available": true, + "port": 8216, + "exposable": true, + "id": "wordpress_cuddleconfessions", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_cuddleconfessions/docker-compose.yml b/apps/wordpress_cuddleconfessions/docker-compose.yml new file mode 100644 index 0000000000..3a347f9e66 --- /dev/null +++ b/apps/wordpress_cuddleconfessions/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_cuddleconfessions: + container_name: wordpress_cuddleconfessions + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_cuddleconfessions-db + - WORDPRESS_DB_NAME= + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_cuddleconfessions:/var/www/wordpress_cuddleconfessions + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_cuddleconfessions-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_cuddleconfessions-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_cuddleconfessions.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_cuddleconfessions-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-insecure.entrypoints: web + traefik.http.routers.wordpress_cuddleconfessions-insecure.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-insecure.middlewares: wordpress_cuddleconfessions-redirect + # Websecure + traefik.http.routers.wordpress_cuddleconfessions.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions.entrypoints: websecure + traefik.http.routers.wordpress_cuddleconfessions.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.entrypoints: web + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.middlewares: wordpress_cuddleconfessions-redirect + # Local domain secure + traefik.http.routers.wordpress_cuddleconfessions-local.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-local.entrypoints: websecure + traefik.http.routers.wordpress_cuddleconfessions-local.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-local.tls: true + runtipi.managed: true + wordpress_cuddleconfessions-db: + container_name: wordpress_cuddleconfessions-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress_cuddleconfessions + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_cuddleconfessions:/var/lib/wordpress_cuddleconfessions + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_cuddleconfessions/metadata/description.md b/apps/wordpress_cuddleconfessions/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_cuddleconfessions/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_cuddleconfessions/metadata/logo.jpg b/apps/wordpress_cuddleconfessions/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_desirearts/config.json b/apps/wordpress_desirearts/config.json new file mode 100644 index 0000000000..67cc386406 --- /dev/null +++ b/apps/wordpress_desirearts/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress DesireArts", + "available": true, + "port": 8217, + "exposable": true, + "id": "wordpress_desirearts", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_desirearts/docker-compose.yml b/apps/wordpress_desirearts/docker-compose.yml new file mode 100644 index 0000000000..91fe04401c --- /dev/null +++ b/apps/wordpress_desirearts/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_desirearts: + container_name: wordpress_desirearts + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_desirearts-db + - WORDPRESS_DB_NAME=wordpress_desirearts + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_desirearts:/var/www/desirearts + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_desirearts-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_desirearts-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_desirearts.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_desirearts-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-insecure.entrypoints: web + traefik.http.routers.wordpress_desirearts-insecure.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-insecure.middlewares: wordpress_desirearts-redirect + # Websecure + traefik.http.routers.wordpress_desirearts.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_desirearts.entrypoints: websecure + traefik.http.routers.wordpress_desirearts.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_desirearts-local-insecure.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-local-insecure.entrypoints: web + traefik.http.routers.wordpress_desirearts-local-insecure.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-local-insecure.middlewares: wordpress_desirearts-redirect + # Local domain secure + traefik.http.routers.wordpress_desirearts-local.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-local.entrypoints: websecure + traefik.http.routers.wordpress_desirearts-local.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-local.tls: true + runtipi.managed: true + wordpress_desirearts-db: + container_name: wordpress_desirearts-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress_desirearts + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_desirearts:/var/lib/wordpress_desirearts + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_desirearts/metadata/description.md b/apps/wordpress_desirearts/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_desirearts/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_desirearts/metadata/logo.jpg b/apps/wordpress_desirearts/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_hometownheartstrings/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_hometownheartstrings/docker-compose.yml b/apps/wordpress_hometownheartstrings/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_hometownheartstrings/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_hometownheartstrings/metadata/description.md b/apps/wordpress_hometownheartstrings/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_hometownheartstrings/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_hometownheartstrings/metadata/logo.jpg b/apps/wordpress_hometownheartstrings/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_kiracuts/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_kiracuts/docker-compose.yml b/apps/wordpress_kiracuts/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_kiracuts/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_kiracuts/metadata/description.md b/apps/wordpress_kiracuts/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_kiracuts/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_kiracuts/metadata/logo.jpg b/apps/wordpress_kiracuts/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_lickingvape/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_lickingvape/metadata/description.md b/apps/wordpress_lickingvape/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_lickingvape/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_lickingvape/metadata/logo.jpg b/apps/wordpress_lickingvape/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_marleebean/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_marleebean/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_marleebean/metadata/description.md b/apps/wordpress_marleebean/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_marleebean/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_marleebean/metadata/logo.jpg b/apps/wordpress_marleebean/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_visionarytalentkids/config.json b/apps/wordpress_visionarytalentkids/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_visionarytalentkids/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_visionarytalentkids/docker-compose.yml b/apps/wordpress_visionarytalentkids/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_visionarytalentkids/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_visionarytalentkids/metadata/description.md b/apps/wordpress_visionarytalentkids/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_visionarytalentkids/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_visionarytalentkids/metadata/logo.jpg b/apps/wordpress_visionarytalentkids/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json new file mode 100644 index 0000000000..24e5083d9f --- /dev/null +++ b/apps/wordpress_yoginilist/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress YoginiList", + "available": true, + "port": 8218, + "exposable": true, + "id": "wordpress_yoginilist", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml new file mode 100644 index 0000000000..7a4b53c680 --- /dev/null +++ b/apps/wordpress_yoginilist/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_yoginilist: + container_name: wordpress_yoginilist + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_yoginilist-db + - WORDPRESS_DB_NAME=wordpress_yoginilist + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_yoginilist:/var/www/wordpress_yoginilist + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_yoginilist-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_yoginilist-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_yoginilist.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_yoginilist-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-insecure.entrypoints: web + traefik.http.routers.wordpress_yoginilist-insecure.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-insecure.middlewares: wordpress_yoginilist-redirect + # Websecure + traefik.http.routers.wordpress_yoginilist.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist.entrypoints: websecure + traefik.http.routers.wordpress_yoginilist.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_yoginilist-local-insecure.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-local-insecure.entrypoints: web + traefik.http.routers.wordpress_yoginilist-local-insecure.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-local-insecure.middlewares: wordpress_yoginilist-redirect + # Local domain secure + traefik.http.routers.wordpress_yoginilist-local.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-local.entrypoints: websecure + traefik.http.routers.wordpress_yoginilist-local.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-local.tls: true + runtipi.managed: true + wordpress_yoginilist-db: + container_name: wordpress_yoginilist-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress_yoginilist + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_yoginilist:/var/lib/wordpress_yoginilist + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_yoginilist/metadata/description.md b/apps/wordpress_yoginilist/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_yoginilist/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_yoginilist/metadata/logo.jpg b/apps/wordpress_yoginilist/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_yoginilist/wordpress/config.json b/apps/wordpress_yoginilist/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_yoginilist/wordpress/docker-compose.yml b/apps/wordpress_yoginilist/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_yoginilist/wordpress/metadata/description.md b/apps/wordpress_yoginilist/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg b/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 94430006c0f84aea83afe826b20cd6e16464d715 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 15:22:51 +0000 Subject: [PATCH 009/224] Add wordpress_elderseth --- .../config.json | 4 +- .../docker-compose.yml | 58 +++++++++---------- apps/wordpress_kiracuts/config.json | 6 +- apps/wordpress_kiracuts/docker-compose.yml | 58 +++++++++---------- apps/wordpress_marleebean/config.json | 4 +- apps/wordpress_marleebean/docker-compose.yml | 58 +++++++++---------- .../wordpress_visionarytalentkids/config.json | 6 +- .../docker-compose.yml | 58 +++++++++---------- 8 files changed, 126 insertions(+), 126 deletions(-) diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json index fd08465589..368122a165 100644 --- a/apps/wordpress_hometownheartstrings/config.json +++ b/apps/wordpress_hometownheartstrings/config.json @@ -1,9 +1,9 @@ { "name": "WordPress", "available": true, - "port": 8213, + "port": 8220, "exposable": true, - "id": "wordpress", + "id": "wordpress_hometownheartstrings", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_hometownheartstrings/docker-compose.yml b/apps/wordpress_hometownheartstrings/docker-compose.yml index 9adb1f8156..0429f117e4 100644 --- a/apps/wordpress_hometownheartstrings/docker-compose.yml +++ b/apps/wordpress_hometownheartstrings/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_hometownheartstrings: + container_name: wordpress_hometownheartstrings image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_HOST=wordpress_hometownheartstrings-db + - WORDPRESS_DB_NAME=wordpress_hometownheartstrings - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - ${APP_DATA_DIR}/data/wordpress_hometownheartstrings:/var/www/wordpress_hometownheartstrings ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_hometownheartstrings-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_hometownheartstrings-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_hometownheartstrings.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_hometownheartstrings-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-insecure.entrypoints: web + traefik.http.routers.wordpress_hometownheartstrings-insecure.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-insecure.middlewares: wordpress_hometownheartstrings-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_hometownheartstrings.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings.entrypoints: websecure + traefik.http.routers.wordpress_hometownheartstrings.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.entrypoints: web + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.middlewares: wordpress_hometownheartstrings-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_hometownheartstrings-local.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-local.entrypoints: websecure + traefik.http.routers.wordpress_hometownheartstrings-local.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_hometownheartstrings-db: + container_name: wordpress_hometownheartstrings-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress + - MYSQL_DATABASE=wordpress_hometownheartstrings - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + - ${APP_DATA_DIR}/data/wordpress_hometownheartstrings:/var/lib/wordpress_hometownheartstrings restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json index fd08465589..5d8eece49b 100644 --- a/apps/wordpress_kiracuts/config.json +++ b/apps/wordpress_kiracuts/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress KiraCuts", "available": true, - "port": 8213, + "port": 8221, "exposable": true, - "id": "wordpress", + "id": "wordpress_kiracuts", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_kiracuts/docker-compose.yml b/apps/wordpress_kiracuts/docker-compose.yml index 9adb1f8156..56a610cdf4 100644 --- a/apps/wordpress_kiracuts/docker-compose.yml +++ b/apps/wordpress_kiracuts/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_kiracuts: + container_name: wordpress_kiracuts image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_HOST=wordpress_kiracuts-db + - WORDPRESS_DB_NAME=wordpress_kiracuts - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - ${APP_DATA_DIR}/data/wordpress_kiracuts:/var/www/wordpress_kiracuts ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_kiracuts-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_kiracuts-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_kiracuts.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_kiracuts-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-insecure.entrypoints: web + traefik.http.routers.wordpress_kiracuts-insecure.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-insecure.middlewares: wordpress_kiracuts-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_kiracuts.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts.entrypoints: websecure + traefik.http.routers.wordpress_kiracuts.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_kiracuts-local-insecure.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-local-insecure.entrypoints: web + traefik.http.routers.wordpress_kiracuts-local-insecure.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-local-insecure.middlewares: wordpress_kiracuts-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_kiracuts-local.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-local.entrypoints: websecure + traefik.http.routers.wordpress_kiracuts-local.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_kiracuts-db: + container_name: wordpress_kiracuts-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress + - MYSQL_DATABASE=wordpress_kiracuts - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + - ${APP_DATA_DIR}/data/wordpress_kiracuts:/var/lib/wordpress_kiracuts restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index fd08465589..f31271cafc 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,9 +1,9 @@ { "name": "WordPress", "available": true, - "port": 8213, + "port": 8222, "exposable": true, - "id": "wordpress", + "id": "wordpress_marleebean", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml index 9adb1f8156..60e5a4c857 100644 --- a/apps/wordpress_marleebean/docker-compose.yml +++ b/apps/wordpress_marleebean/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_marleebean: + container_name: wordpress_marleebean image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_HOST=wordpress_marleebean-db + - WORDPRESS_DB_NAME=wordpress_marleebean - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - ${APP_DATA_DIR}/data/wordpress_marleebean:/var/www/wordpress_marleebean ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_marleebean-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_marleebean-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_marleebean.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_marleebean-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-insecure.entrypoints: web + traefik.http.routers.wordpress_marleebean-insecure.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-insecure.middlewares: wordpress_marleebean-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_marleebean.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_marleebean.entrypoints: websecure + traefik.http.routers.wordpress_marleebean.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_marleebean-local-insecure.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-local-insecure.entrypoints: web + traefik.http.routers.wordpress_marleebean-local-insecure.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-local-insecure.middlewares: wordpress_marleebean-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_marleebean-local.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-local.entrypoints: websecure + traefik.http.routers.wordpress_marleebean-local.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_marleebean-db: + container_name: wordpress_marleebean-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress + - MYSQL_DATABASE=wordpress_marleebean - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + - ${APP_DATA_DIR}/data/wordpress_marleebean:/var/lib/wordpress_marleebean restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_visionarytalentkids/config.json b/apps/wordpress_visionarytalentkids/config.json index fd08465589..669da968a2 100644 --- a/apps/wordpress_visionarytalentkids/config.json +++ b/apps/wordpress_visionarytalentkids/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress VisionaryTalentKids", "available": true, - "port": 8213, + "port": 8219, "exposable": true, - "id": "wordpress", + "id": "wordpress_visionarytalentkids", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_visionarytalentkids/docker-compose.yml b/apps/wordpress_visionarytalentkids/docker-compose.yml index 9adb1f8156..e3d588b821 100644 --- a/apps/wordpress_visionarytalentkids/docker-compose.yml +++ b/apps/wordpress_visionarytalentkids/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_visionarytalentkids: + container_name: wordpress_visionarytalentkids image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_HOST=wordpress_visionarytalentkids-db + - WORDPRESS_DB_NAME=wordpress_visionarytalentkids - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - ${APP_DATA_DIR}/data/wordpress_visionarytalentkids:/var/www/wordpress_visionarytalentkids ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_visionarytalentkids-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_visionarytalentkids-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_visionarytalentkids.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_visionarytalentkids-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-insecure.entrypoints: web + traefik.http.routers.wordpress_visionarytalentkids-insecure.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-insecure.middlewares: wordpress_visionarytalentkids-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_visionarytalentkids.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids.entrypoints: websecure + traefik.http.routers.wordpress_visionarytalentkids.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.entrypoints: web + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.middlewares: wordpress_visionarytalentkids-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_visionarytalentkids-local.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-local.entrypoints: websecure + traefik.http.routers.wordpress_visionarytalentkids-local.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_visionarytalentkids-db: + container_name: wordpress_visionarytalentkids-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress + - MYSQL_DATABASE=wordpress_visionarytalentkids - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + - ${APP_DATA_DIR}/data/wordpressvisionarytalentkids:/var/lib/visionarytalentkids restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true From e495ad700f92f6205cbc435f16b99c5829c84d03 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 15:27:57 +0000 Subject: [PATCH 010/224] Add wordpress_elderseth --- apps/wordpress_cuddleconfessions/config.json | 2 +- apps/wordpress_hometownheartstrings/config.json | 2 +- apps/wordpress_marleebean/config.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/wordpress_cuddleconfessions/config.json b/apps/wordpress_cuddleconfessions/config.json index 3c6c9672db..66ebed63cd 100644 --- a/apps/wordpress_cuddleconfessions/config.json +++ b/apps/wordpress_cuddleconfessions/config.json @@ -1,5 +1,5 @@ { - "name": "WordPress CuddleConfessions" + "name": "Wordpress Cuddleconfessions" "available": true, "port": 8216, "exposable": true, diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json index 368122a165..8beb2d9c0d 100644 --- a/apps/wordpress_hometownheartstrings/config.json +++ b/apps/wordpress_hometownheartstrings/config.json @@ -1,5 +1,5 @@ { - "name": "WordPress", + "name": "WordPress HomeTownHeartStrings", "available": true, "port": 8220, "exposable": true, diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index f31271cafc..12dd06d791 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,5 +1,5 @@ { - "name": "WordPress", + "name": "WordPress MarleeBean", "available": true, "port": 8222, "exposable": true, From 069123759c34dfe41014cb8e0ad66aa7f762853f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 16:26:09 +0000 Subject: [PATCH 011/224] Add wordpress_elderseth --- apps/wordpress_lickingvape/config.json | 6 +- apps/wordpress_lickingvape/docker-compose.yml | 59 ++++++++++--------- 2 files changed, 33 insertions(+), 32 deletions(-) diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json index fd08465589..2f29f4884d 100644 --- a/apps/wordpress_lickingvape/config.json +++ b/apps/wordpress_lickingvape/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress LickingVape", "available": true, - "port": 8213, + "port": 8223, "exposable": true, - "id": "wordpress", + "id": "wordpress_likingvape", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml index 9adb1f8156..032d8aed34 100644 --- a/apps/wordpress_lickingvape/docker-compose.yml +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -1,61 +1,62 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_lickingvape: + container_name: wordpress_lickingvape image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_HOST=wordpress_lickingvape-db + - WORDPRESS_DB_NAME=wordpress_lickingvape - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/www/wordpress_lickingvape + - ./wordpress.ini:/data/runtipi/runtipi/user-config/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_lickingvape-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_lickingvape-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_lickingvape.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_lickingvape-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-insecure.entrypoints: web + traefik.http.routers.wordpress_lickingvape-insecure.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-insecure.middlewares: wordpress_lickingvape-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_lickingvape.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape.entrypoints: websecure + traefik.http.routers.wordpress_lickingvape.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_lickingvape-local-insecure.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-local-insecure.entrypoints: web + traefik.http.routers.wordpress_lickingvape-local-insecure.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-local-insecure.middlewares: wordpress_lickingvape-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_lickingvape-local.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-local.entrypoints: websecure + traefik.http.routers.wordpress_lickingvape-local.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_lickingvape-db: + container_name: wordpress_lickingvape-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress + - MYSQL_DATABASE=wordpress_lickingvape - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/lib/wordpress_lickingvape restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true From 024ece07642689244c82098e3ca13a1568aa6686 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 16:28:44 +0000 Subject: [PATCH 012/224] Add wordpress_elderseth --- apps/wordpress_lickingvape/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json index 2f29f4884d..e2b890137e 100644 --- a/apps/wordpress_lickingvape/config.json +++ b/apps/wordpress_lickingvape/config.json @@ -3,7 +3,7 @@ "available": true, "port": 8223, "exposable": true, - "id": "wordpress_likingvape", + "id": "wordpress_lickingvape", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", From b674d042c78ca092a82c7d2c2ec9df140ac0efee Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 17:30:39 +0000 Subject: [PATCH 013/224] Add wordpress_elderseth --- apps/wordpress_lickingvape/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml index 032d8aed34..92a9ee1ac7 100644 --- a/apps/wordpress_lickingvape/docker-compose.yml +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -11,7 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/www/wordpress_lickingvape - - ./wordpress.ini:/data/runtipi/runtipi/user-config/wordpress.ini + - ./uploads.ini:user-config/uploads.ini ports: - ${APP_PORT}:80 restart: unless-stopped From 235d077cfd3636f13036b178418e22c893101ff7 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 11 Aug 2024 17:35:25 +0000 Subject: [PATCH 014/224] Add wordpress_elderseth --- apps/wordpress_lickingvape/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml index 92a9ee1ac7..b9424c0a7d 100644 --- a/apps/wordpress_lickingvape/docker-compose.yml +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -11,7 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/www/wordpress_lickingvape - - ./uploads.ini:user-config/uploads.ini + - ./uploads.ini:/user-config/uploads.ini ports: - ${APP_PORT}:80 restart: unless-stopped From 68d9a024eae34360b10b5040ad95dc3016b75fa5 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 16 Aug 2024 14:33:02 +0000 Subject: [PATCH 015/224] Add wordpress_elderseth --- apps/wordpress_rasies/config.json | 30 +++++++++ apps/wordpress_rasies/docker-compose.yml | 61 ++++++++++++++++++ apps/wordpress_rasies/metadata/description.md | 39 +++++++++++ apps/wordpress_rasies/metadata/logo.jpg | Bin 0 -> 15007 bytes 4 files changed, 130 insertions(+) create mode 100644 apps/wordpress_rasies/config.json create mode 100644 apps/wordpress_rasies/docker-compose.yml create mode 100644 apps/wordpress_rasies/metadata/description.md create mode 100644 apps/wordpress_rasies/metadata/logo.jpg diff --git a/apps/wordpress_rasies/config.json b/apps/wordpress_rasies/config.json new file mode 100644 index 0000000000..0bc4deee53 --- /dev/null +++ b/apps/wordpress_rasies/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Rasies", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress_rasies", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml new file mode 100644 index 0000000000..a32beca4f3 --- /dev/null +++ b/apps/wordpress_rasies/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_rasies: + container_name: wordpress_rasies + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_rasies-db + - WORDPRESS_DB_NAME=wordpress_rasies + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_rasies:/var/www/wordpress_rasies + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_rasies-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + # Websecure + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + # Local domain secure + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true + runtipi.managed: true + wordpress_rasies-db: + container_name: wordpress_rasies-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress_rasies + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress_rasies:/var/lib/wordpress_rasies + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_rasies/metadata/description.md b/apps/wordpress_rasies/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_rasies/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_rasies/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 8cc9d64c65bd46353106622995ec2a841cd593f1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 16 Aug 2024 19:37:00 +0000 Subject: [PATCH 016/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 1 + apps/wordpress_rasies/wordpress.ini | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 apps/wordpress_rasies/wordpress.ini diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index a32beca4f3..52fc93c185 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -11,6 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress_rasies:/var/www/wordpress_rasies + - ./wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped diff --git a/apps/wordpress_rasies/wordpress.ini b/apps/wordpress_rasies/wordpress.ini new file mode 100644 index 0000000000..7235af81f7 --- /dev/null +++ b/apps/wordpress_rasies/wordpress.ini @@ -0,0 +1,6 @@ +file_uploads = On +memory_limit = 1024M +upload_max_filesize = 1024M +post_max_size = 1024M +max_execution_time = 600 +max_input_time = 1000 From 0cf9c3278231d0a4099af226b1f3a0d3912b5213 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 17 Aug 2024 02:30:14 +0000 Subject: [PATCH 017/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 52fc93c185..86f36bce37 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -10,7 +10,7 @@ services: - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_rasies:/var/www/wordpress_rasies + - ${APP_DATA_DIR}/data/wordpress_rasies:/var/www/wordpress - ./wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 @@ -54,7 +54,7 @@ services: - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_rasies:/var/lib/wordpress_rasies + - ${APP_DATA_DIR}/data/wordpress_rasies:/var/lib/wordpress restart: unless-stopped networks: - tipi_main_network From b8b030e8075a8ed0943187e885784193a93ce32a Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 17 Aug 2024 02:48:37 +0000 Subject: [PATCH 018/224] Add wordpress_elderseth --- apps/wordpress_rasies/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_rasies/config.json b/apps/wordpress_rasies/config.json index 0bc4deee53..de208d4a8b 100644 --- a/apps/wordpress_rasies/config.json +++ b/apps/wordpress_rasies/config.json @@ -1,7 +1,7 @@ { "name": "WordPress Rasies", "available": true, - "port": 8213, + "port": 8215, "exposable": true, "id": "wordpress_rasies", "description": "WordPress is a popular content management system for creating websites and blogs.", From af09074e548ea15037e79b7583b5c947dff0167a Mon Sep 17 00:00:00 2001 From: root Date: Sat, 17 Aug 2024 03:04:19 +0000 Subject: [PATCH 019/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 86f36bce37..ef9a39e0d1 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -10,7 +10,7 @@ services: - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_rasies:/var/www/wordpress + - ${APP_DATA_DIR}/data/wordpress:/var/www/wordpress - ./wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 @@ -54,7 +54,7 @@ services: - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_rasies:/var/lib/wordpress + - ${APP_DATA_DIR}/data/wordpress:/var/lib/wordpress restart: unless-stopped networks: - tipi_main_network From 520f7e92d79bc469163a3469723d1c05fc3ea044 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 17 Aug 2024 03:27:02 +0000 Subject: [PATCH 020/224] Add wordpress_elderseth --- apps/wordpress_rasies/config.json | 2 +- apps/wordpress_rasies/docker-compose.yml | 59 +++++++++-------- apps/wordpress_rasies/wordpress.ini | 6 -- apps/wordpress_rasies/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes 7 files changed, 160 insertions(+), 37 deletions(-) delete mode 100644 apps/wordpress_rasies/wordpress.ini create mode 100644 apps/wordpress_rasies/wordpress/config.json create mode 100644 apps/wordpress_rasies/wordpress/docker-compose.yml create mode 100644 apps/wordpress_rasies/wordpress/metadata/description.md create mode 100644 apps/wordpress_rasies/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_rasies/config.json b/apps/wordpress_rasies/config.json index de208d4a8b..fd477ca33d 100644 --- a/apps/wordpress_rasies/config.json +++ b/apps/wordpress_rasies/config.json @@ -1,7 +1,7 @@ { "name": "WordPress Rasies", "available": true, - "port": 8215, + "port": 8214, "exposable": true, "id": "wordpress_rasies", "description": "WordPress is a popular content management system for creating websites and blogs.", diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index ef9a39e0d1..9adb1f8156 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -1,62 +1,61 @@ version: "3.9" services: - wordpress_rasies: - container_name: wordpress_rasies + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_rasies-db - - WORDPRESS_DB_NAME=wordpress_rasies + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/wordpress - - ./wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_rasies-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies.entrypoints: websecure - traefik.http.routers.wordpress_rasies.service: wordpress_rasies - traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local.entrypoints: websecure - traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_rasies-db: - container_name: wordpress_rasies-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_rasies + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/lib/wordpress + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_rasies/wordpress.ini b/apps/wordpress_rasies/wordpress.ini deleted file mode 100644 index 7235af81f7..0000000000 --- a/apps/wordpress_rasies/wordpress.ini +++ /dev/null @@ -1,6 +0,0 @@ -file_uploads = On -memory_limit = 1024M -upload_max_filesize = 1024M -post_max_size = 1024M -max_execution_time = 600 -max_input_time = 1000 diff --git a/apps/wordpress_rasies/wordpress/config.json b/apps/wordpress_rasies/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_rasies/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_rasies/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_rasies/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_rasies/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_rasies/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_rasies/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From a6eb8509418a1963f7c808f0a1ff432512216d55 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 17 Aug 2024 03:38:58 +0000 Subject: [PATCH 021/224] Add wordpress_elderseth --- apps/wordpress_cuddleconfessions/config.json | 6 +- .../docker-compose.yml | 58 ++++++++--------- apps/wordpress_desirearts/config.json | 6 +- apps/wordpress_desirearts/docker-compose.yml | 58 ++++++++--------- apps/wordpress_elderseth/config.json | 6 +- apps/wordpress_elderseth/docker-compose.yml | 58 ++++++++--------- .../config.json | 6 +- .../docker-compose.yml | 58 ++++++++--------- apps/wordpress_kiracuts/config.json | 6 +- apps/wordpress_kiracuts/docker-compose.yml | 58 ++++++++--------- apps/wordpress_lickingvape/config.json | 6 +- apps/wordpress_lickingvape/docker-compose.yml | 59 +++++++++-------- apps/wordpress_marleebean/config.json | 6 +- apps/wordpress_marleebean/docker-compose.yml | 58 ++++++++--------- apps/wordpress_rasies/docker-compose.yml | 8 +-- apps/wordpress_stepparentpath/config.json | 6 +- .../docker-compose.yml | 56 ++++++++-------- .../wordpress_visionarytalentkids/config.json | 6 +- .../docker-compose.yml | 58 ++++++++--------- apps/wordpress_yoginilist/config.json | 6 +- apps/wordpress_yoginilist/docker-compose.yml | 58 ++++++++--------- .../wordpress/config.json | 30 --------- .../wordpress/docker-compose.yml | 61 ------------------ .../wordpress/metadata/description.md | 39 ----------- .../wordpress/metadata/logo.jpg | Bin 15007 -> 0 bytes 25 files changed, 323 insertions(+), 454 deletions(-) delete mode 100644 apps/wordpress_yoginilist/wordpress/config.json delete mode 100644 apps/wordpress_yoginilist/wordpress/docker-compose.yml delete mode 100644 apps/wordpress_yoginilist/wordpress/metadata/description.md delete mode 100644 apps/wordpress_yoginilist/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_cuddleconfessions/config.json b/apps/wordpress_cuddleconfessions/config.json index 66ebed63cd..fd08465589 100644 --- a/apps/wordpress_cuddleconfessions/config.json +++ b/apps/wordpress_cuddleconfessions/config.json @@ -1,9 +1,9 @@ { - "name": "Wordpress Cuddleconfessions" + "name": "WordPress", "available": true, - "port": 8216, + "port": 8213, "exposable": true, - "id": "wordpress_cuddleconfessions", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_cuddleconfessions/docker-compose.yml b/apps/wordpress_cuddleconfessions/docker-compose.yml index 3a347f9e66..9adb1f8156 100644 --- a/apps/wordpress_cuddleconfessions/docker-compose.yml +++ b/apps/wordpress_cuddleconfessions/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_cuddleconfessions: - container_name: wordpress_cuddleconfessions + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_cuddleconfessions-db - - WORDPRESS_DB_NAME= + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_cuddleconfessions:/var/www/wordpress_cuddleconfessions + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_cuddleconfessions-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_cuddleconfessions-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_cuddleconfessions.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_cuddleconfessions-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_cuddleconfessions-insecure.entrypoints: web - traefik.http.routers.wordpress_cuddleconfessions-insecure.service: wordpress_cuddleconfessions - traefik.http.routers.wordpress_cuddleconfessions-insecure.middlewares: wordpress_cuddleconfessions-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_cuddleconfessions.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_cuddleconfessions.entrypoints: websecure - traefik.http.routers.wordpress_cuddleconfessions.service: wordpress_cuddleconfessions - traefik.http.routers.wordpress_cuddleconfessions.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_cuddleconfessions-local-insecure.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_cuddleconfessions-local-insecure.entrypoints: web - traefik.http.routers.wordpress_cuddleconfessions-local-insecure.service: wordpress_cuddleconfessions - traefik.http.routers.wordpress_cuddleconfessions-local-insecure.middlewares: wordpress_cuddleconfessions-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_cuddleconfessions-local.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_cuddleconfessions-local.entrypoints: websecure - traefik.http.routers.wordpress_cuddleconfessions-local.service: wordpress_cuddleconfessions - traefik.http.routers.wordpress_cuddleconfessions-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_cuddleconfessions-db: - container_name: wordpress_cuddleconfessions-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_cuddleconfessions + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_cuddleconfessions:/var/lib/wordpress_cuddleconfessions + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_desirearts/config.json b/apps/wordpress_desirearts/config.json index 67cc386406..fd08465589 100644 --- a/apps/wordpress_desirearts/config.json +++ b/apps/wordpress_desirearts/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress DesireArts", + "name": "WordPress", "available": true, - "port": 8217, + "port": 8213, "exposable": true, - "id": "wordpress_desirearts", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_desirearts/docker-compose.yml b/apps/wordpress_desirearts/docker-compose.yml index 91fe04401c..9adb1f8156 100644 --- a/apps/wordpress_desirearts/docker-compose.yml +++ b/apps/wordpress_desirearts/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_desirearts: - container_name: wordpress_desirearts + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_desirearts-db - - WORDPRESS_DB_NAME=wordpress_desirearts + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_desirearts:/var/www/desirearts + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_desirearts-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_desirearts-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_desirearts.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_desirearts-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_desirearts-insecure.entrypoints: web - traefik.http.routers.wordpress_desirearts-insecure.service: wordpress_desirearts - traefik.http.routers.wordpress_desirearts-insecure.middlewares: wordpress_desirearts-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_desirearts.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_desirearts.entrypoints: websecure - traefik.http.routers.wordpress_desirearts.service: wordpress_desirearts - traefik.http.routers.wordpress_desirearts.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_desirearts-local-insecure.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_desirearts-local-insecure.entrypoints: web - traefik.http.routers.wordpress_desirearts-local-insecure.service: wordpress_desirearts - traefik.http.routers.wordpress_desirearts-local-insecure.middlewares: wordpress_desirearts-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_desirearts-local.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_desirearts-local.entrypoints: websecure - traefik.http.routers.wordpress_desirearts-local.service: wordpress_desirearts - traefik.http.routers.wordpress_desirearts-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_desirearts-db: - container_name: wordpress_desirearts-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_desirearts + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_desirearts:/var/lib/wordpress_desirearts + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_elderseth/config.json b/apps/wordpress_elderseth/config.json index 2073bf13f4..fd08465589 100644 --- a/apps/wordpress_elderseth/config.json +++ b/apps/wordpress_elderseth/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress Elderseth", + "name": "WordPress", "available": true, - "port": 8214, + "port": 8213, "exposable": true, - "id": "wordpress_elderseth", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index 6025fa4cdd..9adb1f8156 100644 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_elderseth: - container_name: wordpress_elderseth + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_elderseth-db - - WORDPRESS_DB_NAME=wordpress_elderseth + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_elderseth:/var/www/wordrpess_elderseth + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_elderseth-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_elderseth-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_elderseth.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_elderseth-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_elderseth-insecure.entrypoints: web - traefik.http.routers.wordpress_elderseth-insecure.service: wordpress_elderseth - traefik.http.routers.wordpress_elderseth-insecure.middlewares: wordpress_elderseth-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_elderseth.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_elderseth.entrypoints: websecure - traefik.http.routers.wordpress_elderseth.service: wordpress_elderseth - traefik.http.routers.wordpress_elderseth.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_elderseth-local-insecure.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_elderseth-local-insecure.entrypoints: web - traefik.http.routers.wordpress_elderseth-local-insecure.service: wordpress_elderseth - traefik.http.routers.wordpress_elderseth-local-insecure.middlewares: wordpress_elderseth-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_elderseth-local.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_elderseth-local.entrypoints: websecure - traefik.http.routers.wordpress_elderseth-local.service: wordpress_elderseth - traefik.http.routers.wordpress_elderseth-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_elderseth-db: - container_name: wordpress_elderseth-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_elderseth + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_elderseth-db:/var/lib/wordpress_elderseth-db + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json index 8beb2d9c0d..fd08465589 100644 --- a/apps/wordpress_hometownheartstrings/config.json +++ b/apps/wordpress_hometownheartstrings/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress HomeTownHeartStrings", + "name": "WordPress", "available": true, - "port": 8220, + "port": 8213, "exposable": true, - "id": "wordpress_hometownheartstrings", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_hometownheartstrings/docker-compose.yml b/apps/wordpress_hometownheartstrings/docker-compose.yml index 0429f117e4..9adb1f8156 100644 --- a/apps/wordpress_hometownheartstrings/docker-compose.yml +++ b/apps/wordpress_hometownheartstrings/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_hometownheartstrings: - container_name: wordpress_hometownheartstrings + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_hometownheartstrings-db - - WORDPRESS_DB_NAME=wordpress_hometownheartstrings + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_hometownheartstrings:/var/www/wordpress_hometownheartstrings + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_hometownheartstrings-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_hometownheartstrings-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_hometownheartstrings.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_hometownheartstrings-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_hometownheartstrings-insecure.entrypoints: web - traefik.http.routers.wordpress_hometownheartstrings-insecure.service: wordpress_hometownheartstrings - traefik.http.routers.wordpress_hometownheartstrings-insecure.middlewares: wordpress_hometownheartstrings-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_hometownheartstrings.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_hometownheartstrings.entrypoints: websecure - traefik.http.routers.wordpress_hometownheartstrings.service: wordpress_hometownheartstrings - traefik.http.routers.wordpress_hometownheartstrings.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_hometownheartstrings-local-insecure.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_hometownheartstrings-local-insecure.entrypoints: web - traefik.http.routers.wordpress_hometownheartstrings-local-insecure.service: wordpress_hometownheartstrings - traefik.http.routers.wordpress_hometownheartstrings-local-insecure.middlewares: wordpress_hometownheartstrings-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_hometownheartstrings-local.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_hometownheartstrings-local.entrypoints: websecure - traefik.http.routers.wordpress_hometownheartstrings-local.service: wordpress_hometownheartstrings - traefik.http.routers.wordpress_hometownheartstrings-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_hometownheartstrings-db: - container_name: wordpress_hometownheartstrings-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_hometownheartstrings + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_hometownheartstrings:/var/lib/wordpress_hometownheartstrings + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json index 5d8eece49b..fd08465589 100644 --- a/apps/wordpress_kiracuts/config.json +++ b/apps/wordpress_kiracuts/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress KiraCuts", + "name": "WordPress", "available": true, - "port": 8221, + "port": 8213, "exposable": true, - "id": "wordpress_kiracuts", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_kiracuts/docker-compose.yml b/apps/wordpress_kiracuts/docker-compose.yml index 56a610cdf4..9adb1f8156 100644 --- a/apps/wordpress_kiracuts/docker-compose.yml +++ b/apps/wordpress_kiracuts/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_kiracuts: - container_name: wordpress_kiracuts + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_kiracuts-db - - WORDPRESS_DB_NAME=wordpress_kiracuts + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_kiracuts:/var/www/wordpress_kiracuts + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_kiracuts-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_kiracuts-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_kiracuts.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_kiracuts-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_kiracuts-insecure.entrypoints: web - traefik.http.routers.wordpress_kiracuts-insecure.service: wordpress_kiracuts - traefik.http.routers.wordpress_kiracuts-insecure.middlewares: wordpress_kiracuts-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_kiracuts.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_kiracuts.entrypoints: websecure - traefik.http.routers.wordpress_kiracuts.service: wordpress_kiracuts - traefik.http.routers.wordpress_kiracuts.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_kiracuts-local-insecure.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_kiracuts-local-insecure.entrypoints: web - traefik.http.routers.wordpress_kiracuts-local-insecure.service: wordpress_kiracuts - traefik.http.routers.wordpress_kiracuts-local-insecure.middlewares: wordpress_kiracuts-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_kiracuts-local.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_kiracuts-local.entrypoints: websecure - traefik.http.routers.wordpress_kiracuts-local.service: wordpress_kiracuts - traefik.http.routers.wordpress_kiracuts-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_kiracuts-db: - container_name: wordpress_kiracuts-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_kiracuts + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_kiracuts:/var/lib/wordpress_kiracuts + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json index e2b890137e..fd08465589 100644 --- a/apps/wordpress_lickingvape/config.json +++ b/apps/wordpress_lickingvape/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress LickingVape", + "name": "WordPress", "available": true, - "port": 8223, + "port": 8213, "exposable": true, - "id": "wordpress_lickingvape", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml index b9424c0a7d..9adb1f8156 100644 --- a/apps/wordpress_lickingvape/docker-compose.yml +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -1,62 +1,61 @@ version: "3.9" services: - wordpress_lickingvape: - container_name: wordpress_lickingvape + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_lickingvape-db - - WORDPRESS_DB_NAME=wordpress_lickingvape + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/www/wordpress_lickingvape - - ./uploads.ini:/user-config/uploads.ini + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_lickingvape-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_lickingvape-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_lickingvape.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_lickingvape-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_lickingvape-insecure.entrypoints: web - traefik.http.routers.wordpress_lickingvape-insecure.service: wordpress_lickingvape - traefik.http.routers.wordpress_lickingvape-insecure.middlewares: wordpress_lickingvape-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_lickingvape.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_lickingvape.entrypoints: websecure - traefik.http.routers.wordpress_lickingvape.service: wordpress_lickingvape - traefik.http.routers.wordpress_lickingvape.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_lickingvape-local-insecure.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_lickingvape-local-insecure.entrypoints: web - traefik.http.routers.wordpress_lickingvape-local-insecure.service: wordpress_lickingvape - traefik.http.routers.wordpress_lickingvape-local-insecure.middlewares: wordpress_lickingvape-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_lickingvape-local.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_lickingvape-local.entrypoints: websecure - traefik.http.routers.wordpress_lickingvape-local.service: wordpress_lickingvape - traefik.http.routers.wordpress_lickingvape-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_lickingvape-db: - container_name: wordpress_lickingvape-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_lickingvape + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_lickingvape:/var/lib/wordpress_lickingvape + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index 12dd06d791..fd08465589 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress MarleeBean", + "name": "WordPress", "available": true, - "port": 8222, + "port": 8213, "exposable": true, - "id": "wordpress_marleebean", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml index 60e5a4c857..9adb1f8156 100644 --- a/apps/wordpress_marleebean/docker-compose.yml +++ b/apps/wordpress_marleebean/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_marleebean: - container_name: wordpress_marleebean + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_marleebean-db - - WORDPRESS_DB_NAME=wordpress_marleebean + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_marleebean:/var/www/wordpress_marleebean + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_marleebean-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_marleebean-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_marleebean.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_marleebean-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_marleebean-insecure.entrypoints: web - traefik.http.routers.wordpress_marleebean-insecure.service: wordpress_marleebean - traefik.http.routers.wordpress_marleebean-insecure.middlewares: wordpress_marleebean-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_marleebean.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_marleebean.entrypoints: websecure - traefik.http.routers.wordpress_marleebean.service: wordpress_marleebean - traefik.http.routers.wordpress_marleebean.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_marleebean-local-insecure.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_marleebean-local-insecure.entrypoints: web - traefik.http.routers.wordpress_marleebean-local-insecure.service: wordpress_marleebean - traefik.http.routers.wordpress_marleebean-local-insecure.middlewares: wordpress_marleebean-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_marleebean-local.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_marleebean-local.entrypoints: websecure - traefik.http.routers.wordpress_marleebean-local.service: wordpress_marleebean - traefik.http.routers.wordpress_marleebean-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_marleebean-db: - container_name: wordpress_marleebean-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_marleebean + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_marleebean:/var/lib/wordpress_marleebean + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 9adb1f8156..65b971a96f 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -2,10 +2,10 @@ version: "3.9" services: wordpress: - container_name: wordpress + container_name: wordpress_rasies image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_rasies-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -45,7 +45,7 @@ services: traefik.http.routers.wordpress-local.tls: true runtipi.managed: true wordpress-db: - container_name: wordpress-db + container_name: wordpress_rasies-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_stepparentpath/config.json b/apps/wordpress_stepparentpath/config.json index 7f5b71e028..fd08465589 100644 --- a/apps/wordpress_stepparentpath/config.json +++ b/apps/wordpress_stepparentpath/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress StepParent Path", + "name": "WordPress", "available": true, - "port": 8215, + "port": 8213, "exposable": true, - "id": "wordpress_stepparentpath", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_stepparentpath/docker-compose.yml b/apps/wordpress_stepparentpath/docker-compose.yml index fe49bedc13..9adb1f8156 100644 --- a/apps/wordpress_stepparentpath/docker-compose.yml +++ b/apps/wordpress_stepparentpath/docker-compose.yml @@ -2,60 +2,60 @@ version: "3.9" services: wordpress: - container_name: wordpress_stepparentpath + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_stepparentpath-db - - WORDPRESS_DB_NAME=wordpress_stepparentpath + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_stepparentpath:/var/www/stepparentpath + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_stepparentpath-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_stepparentpath-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_stepparentpath.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_stepparentpath-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-insecure.entrypoints: web - traefik.http.routers.wordpress_stepparentpath-insecure.service: wordpress - traefik.http.routers.wordpress_stepparentpath-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_stepparentpath.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath.entrypoints: websecure - traefik.http.routers.wordpress_stepparentpath.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_stepparentpath-local-insecure.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-local-insecure.entrypoints: web - traefik.http.routers.wordpress_stepparentpath-local-insecure.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath-local-insecure.middlewares: wordpress_stepparentpath-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_stepparentpath-local.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-local.entrypoints: websecure - traefik.http.routers.wordpress_stepparentpath-local.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_stepparentpath-db: - container_name: wordpress_stepparentpath-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_stepparentpath + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/stepparentpath:/var/lib/stepparentpath + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_visionarytalentkids/config.json b/apps/wordpress_visionarytalentkids/config.json index 669da968a2..fd08465589 100644 --- a/apps/wordpress_visionarytalentkids/config.json +++ b/apps/wordpress_visionarytalentkids/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress VisionaryTalentKids", + "name": "WordPress", "available": true, - "port": 8219, + "port": 8213, "exposable": true, - "id": "wordpress_visionarytalentkids", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_visionarytalentkids/docker-compose.yml b/apps/wordpress_visionarytalentkids/docker-compose.yml index e3d588b821..9adb1f8156 100644 --- a/apps/wordpress_visionarytalentkids/docker-compose.yml +++ b/apps/wordpress_visionarytalentkids/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_visionarytalentkids: - container_name: wordpress_visionarytalentkids + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_visionarytalentkids-db - - WORDPRESS_DB_NAME=wordpress_visionarytalentkids + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_visionarytalentkids:/var/www/wordpress_visionarytalentkids + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_visionarytalentkids-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_visionarytalentkids-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_visionarytalentkids.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_visionarytalentkids-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_visionarytalentkids-insecure.entrypoints: web - traefik.http.routers.wordpress_visionarytalentkids-insecure.service: wordpress_visionarytalentkids - traefik.http.routers.wordpress_visionarytalentkids-insecure.middlewares: wordpress_visionarytalentkids-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_visionarytalentkids.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_visionarytalentkids.entrypoints: websecure - traefik.http.routers.wordpress_visionarytalentkids.service: wordpress_visionarytalentkids - traefik.http.routers.wordpress_visionarytalentkids.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_visionarytalentkids-local-insecure.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_visionarytalentkids-local-insecure.entrypoints: web - traefik.http.routers.wordpress_visionarytalentkids-local-insecure.service: wordpress_visionarytalentkids - traefik.http.routers.wordpress_visionarytalentkids-local-insecure.middlewares: wordpress_visionarytalentkids-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_visionarytalentkids-local.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_visionarytalentkids-local.entrypoints: websecure - traefik.http.routers.wordpress_visionarytalentkids-local.service: wordpress_visionarytalentkids - traefik.http.routers.wordpress_visionarytalentkids-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_visionarytalentkids-db: - container_name: wordpress_visionarytalentkids-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_visionarytalentkids + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpressvisionarytalentkids:/var/lib/visionarytalentkids + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json index 24e5083d9f..fd08465589 100644 --- a/apps/wordpress_yoginilist/config.json +++ b/apps/wordpress_yoginilist/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress YoginiList", + "name": "WordPress", "available": true, - "port": 8218, + "port": 8213, "exposable": true, - "id": "wordpress_yoginilist", + "id": "wordpress", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml index 7a4b53c680..9adb1f8156 100644 --- a/apps/wordpress_yoginilist/docker-compose.yml +++ b/apps/wordpress_yoginilist/docker-compose.yml @@ -1,61 +1,61 @@ version: "3.9" services: - wordpress_yoginilist: - container_name: wordpress_yoginilist + wordpress: + container_name: wordpress image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_yoginilist-db - - WORDPRESS_DB_NAME=wordpress_yoginilist + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_yoginilist:/var/www/wordpress_yoginilist + - ${APP_DATA_DIR}/data/wordpress:/var/www/html ports: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_yoginilist-db + - wordpress-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_yoginilist-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_yoginilist.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_yoginilist-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_yoginilist-insecure.entrypoints: web - traefik.http.routers.wordpress_yoginilist-insecure.service: wordpress_yoginilist - traefik.http.routers.wordpress_yoginilist-insecure.middlewares: wordpress_yoginilist-redirect + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect # Websecure - traefik.http.routers.wordpress_yoginilist.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_yoginilist.entrypoints: websecure - traefik.http.routers.wordpress_yoginilist.service: wordpress_yoginilist - traefik.http.routers.wordpress_yoginilist.tls.certresolver: myresolver + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_yoginilist-local-insecure.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_yoginilist-local-insecure.entrypoints: web - traefik.http.routers.wordpress_yoginilist-local-insecure.service: wordpress_yoginilist - traefik.http.routers.wordpress_yoginilist-local-insecure.middlewares: wordpress_yoginilist-redirect + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect # Local domain secure - traefik.http.routers.wordpress_yoginilist-local.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_yoginilist-local.entrypoints: websecure - traefik.http.routers.wordpress_yoginilist-local.service: wordpress_yoginilist - traefik.http.routers.wordpress_yoginilist-local.tls: true + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true runtipi.managed: true - wordpress_yoginilist-db: - container_name: wordpress_yoginilist-db + wordpress-db: + container_name: wordpress-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress_yoginilist + - MYSQL_DATABASE=wordpress - MYSQL_USER=tipi - MYSQL_PASSWORD=${DB_PASSWORD} volumes: - - ${APP_DATA_DIR}/data/wordpress_yoginilist:/var/lib/wordpress_yoginilist + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql restart: unless-stopped networks: - tipi_main_network labels: - runtipi.managed: true + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_yoginilist/wordpress/config.json b/apps/wordpress_yoginilist/wordpress/config.json deleted file mode 100644 index fd08465589..0000000000 --- a/apps/wordpress_yoginilist/wordpress/config.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "WordPress", - "available": true, - "port": 8213, - "exposable": true, - "id": "wordpress", - "description": "WordPress is a popular content management system for creating websites and blogs.", - "tipi_version": 10, - "version": "6.6.1", - "categories": ["social"], - "short_desc": "Popular CMS for websites and blogs", - "author": "WordPress.org", - "source": "https://github.com/WordPress/WordPress", - "website": "https://wordpress.org", - "form_fields": [ - { - "type": "random", - "label": "Database Password", - "min": 32, - "env_variable": "DB_PASSWORD" - }, - { - "type": "random", - "label": "Database Root Password", - "min": 32, - "env_variable": "DB_ROOT_PASSWORD" - } - ], - "supported_architectures": ["amd64", "arm64"] -} diff --git a/apps/wordpress_yoginilist/wordpress/docker-compose.yml b/apps/wordpress_yoginilist/wordpress/docker-compose.yml deleted file mode 100644 index 9adb1f8156..0000000000 --- a/apps/wordpress_yoginilist/wordpress/docker-compose.yml +++ /dev/null @@ -1,61 +0,0 @@ -version: "3.9" -services: - - wordpress: - container_name: wordpress - image: wordpress:6.6.1 - environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress - - WORDPRESS_DB_USER=tipi - - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} - volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html - ports: - - ${APP_PORT}:80 - restart: unless-stopped - depends_on: - - wordpress-db - networks: - - tipi_main_network - labels: - # Main - traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 - # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect - # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver - # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect - # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true - runtipi.managed: true - wordpress-db: - container_name: wordpress-db - image: mariadb:11.1.3 - environment: - - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress - - MYSQL_USER=tipi - - MYSQL_PASSWORD=${DB_PASSWORD} - volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql - restart: unless-stopped - networks: - - tipi_main_network - labels: - runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_yoginilist/wordpress/metadata/description.md b/apps/wordpress_yoginilist/wordpress/metadata/description.md deleted file mode 100644 index 1021d7912f..0000000000 --- a/apps/wordpress_yoginilist/wordpress/metadata/description.md +++ /dev/null @@ -1,39 +0,0 @@ -# WordPress - The Ultimate Content Management System - -WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. - -## Unleash Your Creativity - -Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. - -## Endless Possibilities with Themes and Plugins - -WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. - -## SEO-Friendly and Mobile-Responsive - -WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. - -## Community and Support - -Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. - -## Open Source and Constant Innovation - -WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. - -## Get Started Today - -Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. - -**Official Website:** [WordPress.org](https://wordpress.org) - -**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) - -**Documentation:** [WordPress Codex](https://codex.wordpress.org/) - -**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) - -**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) - -**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg b/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg deleted file mode 100644 index 366c287c9f7d062baea1721d411736eedd6d9225..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! From f8e5c100326bf8c6e690246f74b30276ee1c2ad0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 17 Aug 2024 03:47:48 +0000 Subject: [PATCH 022/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 42 ++++++++++++------------ 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 65b971a96f..60890a16a5 100644 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: - wordpress: + wordpress_rasies: container_name: wordpress_rasies image: wordpress:6.6.1 environment: @@ -15,36 +15,36 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_rasies-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true runtipi.managed: true - wordpress-db: + wordpress_rasies-db: container_name: wordpress_rasies-db image: mariadb:11.1.3 environment: From 59f18cabe4cfb032175113d628832a5dd1a3dd41 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 18 Aug 2024 13:14:54 +0000 Subject: [PATCH 023/224] Add wordpress_elderseth --- apps/wordpress_aidanras/config.json | 6 +- apps/wordpress_aidanras/docker-compose.yml | 50 +++++++------- .../wordpress}/config.json | 0 .../wordpress}/docker-compose.yml | 0 .../wordpress}/metadata/description.md | 0 .../wordpress}/metadata/logo.jpg | Bin apps/wordpress_aweggly/config.json | 6 +- apps/wordpress_aweggly/docker-compose.yml | 50 +++++++------- apps/wordpress_aweggly/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_blondesagainsttrump/config.json | 6 +- .../docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_corbieplays/config.json | 6 +- apps/wordpress_corbieplays/docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_rasies/config.json | 30 +++++++++ .../wordpress_rasies/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress_rasies/metadata/description.md | 39 +++++++++++ .../wordpress_rasies/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_rasies/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_cuddleconfessions/config.json | 6 +- .../docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_desirearts/config.json | 6 +- apps/wordpress_desirearts/docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_elderseth/config.json | 6 +- apps/wordpress_elderseth/docker-compose.yml | 50 +++++++------- .../wordpress_elderseth/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_rasies/config.json | 30 +++++++++ .../wordpress_rasies/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress_rasies/metadata/description.md | 39 +++++++++++ .../wordpress_rasies/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_rasies/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes .../config.json | 6 +- .../docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_kiracuts/config.json | 6 +- apps/wordpress_kiracuts/docker-compose.yml | 50 +++++++------- apps/wordpress_kiracuts/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_lickingvape/config.json | 6 +- apps/wordpress_lickingvape/docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_marleebean/config.json | 6 +- apps/wordpress_marleebean/docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_stepparentpath/config.json | 6 +- .../docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress_visionarytalentkids/config.json | 6 +- .../docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_yoginilist/config.json | 6 +- apps/wordpress_yoginilist/docker-compose.yml | 50 +++++++------- .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes 100 files changed, 2602 insertions(+), 392 deletions(-) rename apps/{wordpress_christianras => wordpress_aidanras/wordpress}/config.json (100%) rename apps/{wordpress_christianras => wordpress_aidanras/wordpress}/docker-compose.yml (100%) rename apps/{wordpress_christianras => wordpress_aidanras/wordpress}/metadata/description.md (100%) rename apps/{wordpress_christianras => wordpress_aidanras/wordpress}/metadata/logo.jpg (100%) create mode 100644 apps/wordpress_aweggly/wordpress/config.json create mode 100644 apps/wordpress_aweggly/wordpress/docker-compose.yml create mode 100644 apps/wordpress_aweggly/wordpress/metadata/description.md create mode 100644 apps/wordpress_aweggly/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_blondesagainsttrump/wordpress/config.json create mode 100644 apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml create mode 100644 apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md create mode 100644 apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_corbieplays/wordpress/config.json create mode 100644 apps/wordpress_corbieplays/wordpress/docker-compose.yml create mode 100644 apps/wordpress_corbieplays/wordpress/metadata/description.md create mode 100644 apps/wordpress_corbieplays/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/config.json create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md create mode 100644 apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_cuddleconfessions/wordpress/config.json create mode 100644 apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml create mode 100644 apps/wordpress_cuddleconfessions/wordpress/metadata/description.md create mode 100644 apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_desirearts/wordpress/config.json create mode 100644 apps/wordpress_desirearts/wordpress/docker-compose.yml create mode 100644 apps/wordpress_desirearts/wordpress/metadata/description.md create mode 100644 apps/wordpress_desirearts/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_elderseth/wordpress/config.json create mode 100644 apps/wordpress_elderseth/wordpress/docker-compose.yml create mode 100644 apps/wordpress_elderseth/wordpress/metadata/description.md create mode 100644 apps/wordpress_elderseth/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_elderseth/wordpress_rasies/config.json create mode 100644 apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml create mode 100644 apps/wordpress_elderseth/wordpress_rasies/metadata/description.md create mode 100644 apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg create mode 100644 apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json create mode 100644 apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml create mode 100644 apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md create mode 100644 apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_hometownheartstrings/wordpress/config.json create mode 100644 apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml create mode 100644 apps/wordpress_hometownheartstrings/wordpress/metadata/description.md create mode 100644 apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_kiracuts/wordpress/config.json create mode 100644 apps/wordpress_kiracuts/wordpress/docker-compose.yml create mode 100644 apps/wordpress_kiracuts/wordpress/metadata/description.md create mode 100644 apps/wordpress_kiracuts/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_lickingvape/wordpress/config.json create mode 100644 apps/wordpress_lickingvape/wordpress/docker-compose.yml create mode 100644 apps/wordpress_lickingvape/wordpress/metadata/description.md create mode 100644 apps/wordpress_lickingvape/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_marleebean/wordpress/config.json create mode 100644 apps/wordpress_marleebean/wordpress/docker-compose.yml create mode 100644 apps/wordpress_marleebean/wordpress/metadata/description.md create mode 100644 apps/wordpress_marleebean/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_stepparentpath/wordpress/config.json create mode 100644 apps/wordpress_stepparentpath/wordpress/docker-compose.yml create mode 100644 apps/wordpress_stepparentpath/wordpress/metadata/description.md create mode 100644 apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_visionarytalentkids/wordpress/config.json create mode 100644 apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml create mode 100644 apps/wordpress_visionarytalentkids/wordpress/metadata/description.md create mode 100644 apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg create mode 100644 apps/wordpress_yoginilist/wordpress/config.json create mode 100644 apps/wordpress_yoginilist/wordpress/docker-compose.yml create mode 100644 apps/wordpress_yoginilist/wordpress/metadata/description.md create mode 100644 apps/wordpress_yoginilist/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_aidanras/config.json b/apps/wordpress_aidanras/config.json index fd08465589..cb72089cf8 100644 --- a/apps/wordpress_aidanras/config.json +++ b/apps/wordpress_aidanras/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress Aidanras", "available": true, - "port": 8213, + "port": 8219, "exposable": true, - "id": "wordpress", + "id": "wordpress_aidanras", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_aidanras/docker-compose.yml b/apps/wordpress_aidanras/docker-compose.yml index 9adb1f8156..174b9d8587 100644 --- a/apps/wordpress_aidanras/docker-compose.yml +++ b/apps/wordpress_aidanras/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_aidanras: + container_name: wordpress_aidanras image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_aidanras-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_aidanras-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_aidanras-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_aidanras.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_aidanras-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_aidanras-insecure.entrypoints: web + traefik.http.routers.wordpress_aidanras-insecure.service: wordpress_aidanras + traefik.http.routers.wordpress_aidanras-insecure.middlewares: wordpress_aidanras-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_aidanras.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_aidanras.entrypoints: websecure + traefik.http.routers.wordpress_aidanras.service: wordpress_aidanras + traefik.http.routers.wordpress_aidanras.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_aidanras-local-insecure.rule: Host(`wordpress_aidanras.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_aidanras-local-insecure.entrypoints: web + traefik.http.routers.wordpress_aidanras-local-insecure.service: wordpress_aidanras + traefik.http.routers.wordpress_aidanras-local-insecure.middlewares: wordpress_aidanras-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_aidanras-local.rule: Host(`wordpress_aidanras.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_aidanras-local.entrypoints: websecure + traefik.http.routers.wordpress_aidanras-local.service: wordpress_aidanras + traefik.http.routers.wordpress_aidanras-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_aidanras-db: + container_name: wordpress_aidanras-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_christianras/config.json b/apps/wordpress_aidanras/wordpress/config.json similarity index 100% rename from apps/wordpress_christianras/config.json rename to apps/wordpress_aidanras/wordpress/config.json diff --git a/apps/wordpress_christianras/docker-compose.yml b/apps/wordpress_aidanras/wordpress/docker-compose.yml similarity index 100% rename from apps/wordpress_christianras/docker-compose.yml rename to apps/wordpress_aidanras/wordpress/docker-compose.yml diff --git a/apps/wordpress_christianras/metadata/description.md b/apps/wordpress_aidanras/wordpress/metadata/description.md similarity index 100% rename from apps/wordpress_christianras/metadata/description.md rename to apps/wordpress_aidanras/wordpress/metadata/description.md diff --git a/apps/wordpress_christianras/metadata/logo.jpg b/apps/wordpress_aidanras/wordpress/metadata/logo.jpg similarity index 100% rename from apps/wordpress_christianras/metadata/logo.jpg rename to apps/wordpress_aidanras/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_aweggly/config.json b/apps/wordpress_aweggly/config.json index fd08465589..766a477d8f 100644 --- a/apps/wordpress_aweggly/config.json +++ b/apps/wordpress_aweggly/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress Aweggly", "available": true, - "port": 8213, + "port": 8220, "exposable": true, - "id": "wordpress", + "id": "wordpress_aweggly", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_aweggly/docker-compose.yml b/apps/wordpress_aweggly/docker-compose.yml index 9adb1f8156..207aac246b 100644 --- a/apps/wordpress_aweggly/docker-compose.yml +++ b/apps/wordpress_aweggly/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_aweggly: + container_name: wordpress_aweggly image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_aweggly-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_aweggly-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_aweggly-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_aweggly.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_aweggly-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_aweggly-insecure.entrypoints: web + traefik.http.routers.wordpress_aweggly-insecure.service: wordpress_aweggly + traefik.http.routers.wordpress_aweggly-insecure.middlewares: wordpress_aweggly-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_aweggly.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_aweggly.entrypoints: websecure + traefik.http.routers.wordpress_aweggly.service: wordpress_aweggly + traefik.http.routers.wordpress_aweggly.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_aweggly-local-insecure.rule: Host(`wordpress_aweggly.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_aweggly-local-insecure.entrypoints: web + traefik.http.routers.wordpress_aweggly-local-insecure.service: wordpress_aweggly + traefik.http.routers.wordpress_aweggly-local-insecure.middlewares: wordpress_aweggly-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_aweggly-local.rule: Host(`wordpress_aweggly.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_aweggly-local.entrypoints: websecure + traefik.http.routers.wordpress_aweggly-local.service: wordpress_aweggly + traefik.http.routers.wordpress_aweggly-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_aweggly-db: + container_name: wordpress_aweggly-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_aweggly/wordpress/config.json b/apps/wordpress_aweggly/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_aweggly/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_aweggly/wordpress/docker-compose.yml b/apps/wordpress_aweggly/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_aweggly/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_aweggly/wordpress/metadata/description.md b/apps/wordpress_aweggly/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_aweggly/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_aweggly/wordpress/metadata/logo.jpg b/apps/wordpress_aweggly/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_blondesagainsttrump/config.json b/apps/wordpress_blondesagainsttrump/config.json index fd08465589..e18b10e3c7 100644 --- a/apps/wordpress_blondesagainsttrump/config.json +++ b/apps/wordpress_blondesagainsttrump/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress ", "available": true, - "port": 8213, + "port": 8221, "exposable": true, - "id": "wordpress", + "id": "wordpress_blondesagainsttrump", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_blondesagainsttrump/docker-compose.yml b/apps/wordpress_blondesagainsttrump/docker-compose.yml index 9adb1f8156..e094260052 100644 --- a/apps/wordpress_blondesagainsttrump/docker-compose.yml +++ b/apps/wordpress_blondesagainsttrump/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_blondesagainsttrump: + container_name: wordpress_blondesagainsttrump image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_blondesagainsttrump-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_blondesagainsttrump-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_blondesagainsttrump-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_blondesagainsttrump.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_blondesagainsttrump-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_blondesagainsttrump-insecure.entrypoints: web + traefik.http.routers.wordpress_blondesagainsttrump-insecure.service: wordpress_blondesagainsttrump + traefik.http.routers.wordpress_blondesagainsttrump-insecure.middlewares: wordpress_blondesagainsttrump-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_blondesagainsttrump.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_blondesagainsttrump.entrypoints: websecure + traefik.http.routers.wordpress_blondesagainsttrump.service: wordpress_blondesagainsttrump + traefik.http.routers.wordpress_blondesagainsttrump.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_blondesagainsttrump-local-insecure.rule: Host(`wordpress_blondesagainsttrump.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_blondesagainsttrump-local-insecure.entrypoints: web + traefik.http.routers.wordpress_blondesagainsttrump-local-insecure.service: wordpress_blondesagainsttrump + traefik.http.routers.wordpress_blondesagainsttrump-local-insecure.middlewares: wordpress_blondesagainsttrump-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_blondesagainsttrump-local.rule: Host(`wordpress_blondesagainsttrump.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_blondesagainsttrump-local.entrypoints: websecure + traefik.http.routers.wordpress_blondesagainsttrump-local.service: wordpress_blondesagainsttrump + traefik.http.routers.wordpress_blondesagainsttrump-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_blondesagainsttrump-db: + container_name: wordpress_blondesagainsttrump-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_blondesagainsttrump/wordpress/config.json b/apps/wordpress_blondesagainsttrump/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml b/apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md b/apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg b/apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_corbieplays/config.json b/apps/wordpress_corbieplays/config.json index fd08465589..50a59350e5 100644 --- a/apps/wordpress_corbieplays/config.json +++ b/apps/wordpress_corbieplays/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress CorbiePlays", "available": true, - "port": 8213, + "port": 8222, "exposable": true, - "id": "wordpress", + "id": "wordpress_corbieplays", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_corbieplays/docker-compose.yml b/apps/wordpress_corbieplays/docker-compose.yml index 9adb1f8156..b3c798ac7e 100644 --- a/apps/wordpress_corbieplays/docker-compose.yml +++ b/apps/wordpress_corbieplays/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_corbieplays: + container_name: wordpress_corbieplays image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_corbieplays-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_corbieplays-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_corbieplays-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_corbieplays.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_corbieplays-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_corbieplays-insecure.entrypoints: web + traefik.http.routers.wordpress_corbieplays-insecure.service: wordpress_corbieplays + traefik.http.routers.wordpress_corbieplays-insecure.middlewares: wordpress_corbieplays-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_corbieplays.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_corbieplays.entrypoints: websecure + traefik.http.routers.wordpress_corbieplays.service: wordpress_corbieplays + traefik.http.routers.wordpress_corbieplays.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_corbieplays-local-insecure.rule: Host(`wordpress_corbieplays.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_corbieplays-local-insecure.entrypoints: web + traefik.http.routers.wordpress_corbieplays-local-insecure.service: wordpress_corbieplays + traefik.http.routers.wordpress_corbieplays-local-insecure.middlewares: wordpress_corbieplays-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_corbieplays-local.rule: Host(`wordpress_corbieplays.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_corbieplays-local.entrypoints: websecure + traefik.http.routers.wordpress_corbieplays-local.service: wordpress_corbieplays + traefik.http.routers.wordpress_corbieplays-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_corbieplays-db: + container_name: wordpress_corbieplays-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_corbieplays/wordpress/config.json b/apps/wordpress_corbieplays/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_corbieplays/wordpress/docker-compose.yml b/apps/wordpress_corbieplays/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_corbieplays/wordpress/metadata/description.md b/apps/wordpress_corbieplays/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_corbieplays/wordpress/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/config.json b/apps/wordpress_corbieplays/wordpress_rasies/config.json new file mode 100644 index 0000000000..fd477ca33d --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Rasies", + "available": true, + "port": 8214, + "exposable": true, + "id": "wordpress_rasies", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml b/apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml new file mode 100644 index 0000000000..60890a16a5 --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_rasies: + container_name: wordpress_rasies + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_rasies-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_rasies-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + # Websecure + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + # Local domain secure + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true + runtipi.managed: true + wordpress_rasies-db: + container_name: wordpress_rasies-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md b/apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_cuddleconfessions/config.json b/apps/wordpress_cuddleconfessions/config.json index fd08465589..8616184dcd 100644 --- a/apps/wordpress_cuddleconfessions/config.json +++ b/apps/wordpress_cuddleconfessions/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress CuddleConfessions", "available": true, - "port": 8213, + "port": 8215, "exposable": true, - "id": "wordpress", + "id": "wordpress_cuddleconfessions", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_cuddleconfessions/docker-compose.yml b/apps/wordpress_cuddleconfessions/docker-compose.yml index 9adb1f8156..3b36952652 100644 --- a/apps/wordpress_cuddleconfessions/docker-compose.yml +++ b/apps/wordpress_cuddleconfessions/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_cuddleconfessions: + container_name: wordpress_cuddleconfessions image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_cuddleconfessions-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_cuddleconfessions-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_cuddleconfessions-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_cuddleconfessions.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_cuddleconfessions-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-insecure.entrypoints: web + traefik.http.routers.wordpress_cuddleconfessions-insecure.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-insecure.middlewares: wordpress_cuddleconfessions-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_cuddleconfessions.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions.entrypoints: websecure + traefik.http.routers.wordpress_cuddleconfessions.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.entrypoints: web + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-local-insecure.middlewares: wordpress_cuddleconfessions-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_cuddleconfessions-local.rule: Host(`wordpress_cuddleconfessions.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_cuddleconfessions-local.entrypoints: websecure + traefik.http.routers.wordpress_cuddleconfessions-local.service: wordpress_cuddleconfessions + traefik.http.routers.wordpress_cuddleconfessions-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_cuddleconfessions-db: + container_name: wordpress_cuddleconfessions-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_cuddleconfessions/wordpress/config.json b/apps/wordpress_cuddleconfessions/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_cuddleconfessions/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml b/apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_cuddleconfessions/wordpress/metadata/description.md b/apps/wordpress_cuddleconfessions/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_cuddleconfessions/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg b/apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_desirearts/config.json b/apps/wordpress_desirearts/config.json index fd08465589..ecb8cf56bf 100644 --- a/apps/wordpress_desirearts/config.json +++ b/apps/wordpress_desirearts/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress DesireArts", "available": true, - "port": 8213, + "port": 8216, "exposable": true, - "id": "wordpress", + "id": "wordpress_desirearts", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_desirearts/docker-compose.yml b/apps/wordpress_desirearts/docker-compose.yml index 9adb1f8156..9e6a62fd70 100644 --- a/apps/wordpress_desirearts/docker-compose.yml +++ b/apps/wordpress_desirearts/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_desirearts: + container_name: wordpress_desirearts image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_desirearts-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_desirearts-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_desirearts-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_desirearts.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_desirearts-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-insecure.entrypoints: web + traefik.http.routers.wordpress_desirearts-insecure.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-insecure.middlewares: wordpress_desirearts-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_desirearts.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_desirearts.entrypoints: websecure + traefik.http.routers.wordpress_desirearts.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_desirearts-local-insecure.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-local-insecure.entrypoints: web + traefik.http.routers.wordpress_desirearts-local-insecure.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-local-insecure.middlewares: wordpress_desirearts-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_desirearts-local.rule: Host(`wordpress_desirearts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_desirearts-local.entrypoints: websecure + traefik.http.routers.wordpress_desirearts-local.service: wordpress_desirearts + traefik.http.routers.wordpress_desirearts-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_desirearts-db: + container_name: wordpress_desirearts-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_desirearts/wordpress/config.json b/apps/wordpress_desirearts/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_desirearts/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_desirearts/wordpress/docker-compose.yml b/apps/wordpress_desirearts/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_desirearts/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_desirearts/wordpress/metadata/description.md b/apps/wordpress_desirearts/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_desirearts/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_desirearts/wordpress/metadata/logo.jpg b/apps/wordpress_desirearts/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_elderseth/config.json b/apps/wordpress_elderseth/config.json index fd08465589..fd477ca33d 100644 --- a/apps/wordpress_elderseth/config.json +++ b/apps/wordpress_elderseth/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress Rasies", "available": true, - "port": 8213, + "port": 8214, "exposable": true, - "id": "wordpress", + "id": "wordpress_rasies", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index 9adb1f8156..60890a16a5 100644 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_rasies: + container_name: wordpress_rasies image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_rasies-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_rasies-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_rasies-db: + container_name: wordpress_rasies-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_elderseth/wordpress/config.json b/apps/wordpress_elderseth/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_elderseth/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_elderseth/wordpress/docker-compose.yml b/apps/wordpress_elderseth/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_elderseth/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_elderseth/wordpress/metadata/description.md b/apps/wordpress_elderseth/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_elderseth/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_elderseth/wordpress/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_elderseth/wordpress_rasies/config.json b/apps/wordpress_elderseth/wordpress_rasies/config.json new file mode 100644 index 0000000000..fd477ca33d --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Rasies", + "available": true, + "port": 8214, + "exposable": true, + "id": "wordpress_rasies", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml b/apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml new file mode 100644 index 0000000000..60890a16a5 --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_rasies: + container_name: wordpress_rasies + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_rasies-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_rasies-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + # Websecure + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + # Local domain secure + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true + runtipi.managed: true + wordpress_rasies-db: + container_name: wordpress_rasies-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_elderseth/wordpress_rasies/metadata/description.md b/apps/wordpress_elderseth/wordpress_rasies/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json b/apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json index fd08465589..e6becd2b52 100644 --- a/apps/wordpress_hometownheartstrings/config.json +++ b/apps/wordpress_hometownheartstrings/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress HomeTownHeartStrings", "available": true, - "port": 8213, + "port": 8223, "exposable": true, - "id": "wordpress", + "id": "wordpress_hometownheartstrings", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_hometownheartstrings/docker-compose.yml b/apps/wordpress_hometownheartstrings/docker-compose.yml index 9adb1f8156..8ee870f3d5 100644 --- a/apps/wordpress_hometownheartstrings/docker-compose.yml +++ b/apps/wordpress_hometownheartstrings/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_hometownheartstrings: + container_name: wordpress_hometownheartstrings image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_hometownheartstrings-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_hometownheartstrings-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_hometownheartstrings-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_hometownheartstrings.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_hometownheartstrings-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-insecure.entrypoints: web + traefik.http.routers.wordpress_hometownheartstrings-insecure.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-insecure.middlewares: wordpress_hometownheartstrings-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_hometownheartstrings.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings.entrypoints: websecure + traefik.http.routers.wordpress_hometownheartstrings.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.entrypoints: web + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-local-insecure.middlewares: wordpress_hometownheartstrings-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_hometownheartstrings-local.rule: Host(`wordpress_hometownheartstrings.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_hometownheartstrings-local.entrypoints: websecure + traefik.http.routers.wordpress_hometownheartstrings-local.service: wordpress_hometownheartstrings + traefik.http.routers.wordpress_hometownheartstrings-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_hometownheartstrings-db: + container_name: wordpress_hometownheartstrings-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_hometownheartstrings/wordpress/config.json b/apps/wordpress_hometownheartstrings/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_hometownheartstrings/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml b/apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_hometownheartstrings/wordpress/metadata/description.md b/apps/wordpress_hometownheartstrings/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_hometownheartstrings/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg b/apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json index fd08465589..b2eb5d07d1 100644 --- a/apps/wordpress_kiracuts/config.json +++ b/apps/wordpress_kiracuts/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress Kiracuts", "available": true, - "port": 8213, + "port": 8223, "exposable": true, - "id": "wordpress", + "id": "wordpress_kiracuts", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_kiracuts/docker-compose.yml b/apps/wordpress_kiracuts/docker-compose.yml index 9adb1f8156..b557fa97a4 100644 --- a/apps/wordpress_kiracuts/docker-compose.yml +++ b/apps/wordpress_kiracuts/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_kiracuts: + container_name: wordpress_kiracuts image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_kiracuts-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_kiracuts-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_kiracuts-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_kiracuts.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_kiracuts-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-insecure.entrypoints: web + traefik.http.routers.wordpress_kiracuts-insecure.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-insecure.middlewares: wordpress_kiracuts-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_kiracuts.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts.entrypoints: websecure + traefik.http.routers.wordpress_kiracuts.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_kiracuts-local-insecure.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-local-insecure.entrypoints: web + traefik.http.routers.wordpress_kiracuts-local-insecure.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-local-insecure.middlewares: wordpress_kiracuts-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_kiracuts-local.rule: Host(`wordpress_kiracuts.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_kiracuts-local.entrypoints: websecure + traefik.http.routers.wordpress_kiracuts-local.service: wordpress_kiracuts + traefik.http.routers.wordpress_kiracuts-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_kiracuts-db: + container_name: wordpress_kiracuts-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_kiracuts/wordpress/config.json b/apps/wordpress_kiracuts/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_kiracuts/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_kiracuts/wordpress/docker-compose.yml b/apps/wordpress_kiracuts/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_kiracuts/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_kiracuts/wordpress/metadata/description.md b/apps/wordpress_kiracuts/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_kiracuts/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_kiracuts/wordpress/metadata/logo.jpg b/apps/wordpress_kiracuts/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c z;h_@B$B~&B-^WuYY=o}zuWE>%^zaFh`Rn+XLo}0qMvT3-_1TZKl^TxG&f{+f|Wh-02W5(MkZiYRQ(B61*7%W_wEBFYIP0Ysc)8E8nnxaGkd7kxoZ%2K%>C?BW9xCZJ zsp+n0+G6C@xIMHSktLAb<&h1RDgb$^F5zh4gRG^?v56DrdghmBnK{?yh-{GZUTqBX zcz;F{xnv}!7SwPz3+CKbGV}0r;;0FbVE?T`#1-99vuvgk{RD^lt8R4J0nci~5yIqz zeiz%N!;Y*&OVP;CH7`x!Pa2NnyYX3QV03Su<@|jv-@c-LI9od^uwc(VIL_&!?}qW6 zR=_w7H#`zJ97~HVzA!l;fm`+}n=Bhs@ahMx1lwd@I`E+e9>Az)nzQ;YM^^%Qvuubb zs`0YqfvA9Ac^^RLVHGRw5HY7wRY2lH=%0&tV-s!r6}MFi9?6%RDymwIQG#u(b0F9M zo{<%bd5cDu5|2?4>6dJ2h76BwtM6pOJb!QM9LmXyWBEOVvbrDzW5M2Lj-xe(Q3;RM zCZ_~0IB|gR`d3getp_=(S{`DgqyQ1fO&X2d;iz)y+>-&bbFS1zP4ndRvS$z0r8~^t z-miwCt*b%YE+&oPOn${0 z(n6&>h4UbIlKRo``P@}F#22f!PF7R%0!D47?-RID;!~d4fp%BkM1NVt1$&^;kEu`$ zi(72B4Q-QFfRR~+U?X5LH1;v_oSX5*H%CLi;MM8Nc5DLvHI-j&^kcH>pkckW$f^%|G&DPnZEjDuX|g{c?1eGTF+`K*azY8`@#G1*j28kcMq8X!JT+gQ zOiYF1>5)z_tyg()Bsn3O?OS?ZbX4&-;KouoYP1R=>vj?n?F*@4vV0?9v`a36eEal+ zZrx(!pGJL3NE9+LiUxBReL<4LeUS%1^DRz{>9( zQ<&%Hf-}twShChBT`H7L(gYyu$lp4-2L%BCyVM@>ApCVu=q+xc;)3$ir;QdR>CDR5h3S~ip>-7^^FmH44O_9#NWGCTJFx)Oljja`R+7Q;rzS9$;z9aDFcBCG2%U^p%gYHKhPQsuDmORA0nv z7&9SfldYhG6K}jHi?luwH1=vp5b~kw6W|!e##OTAM)R5* zfK+SGLw3HiCoip^L&L0Wn5o^`1VrVzI8shHa8Z&{GYpS;CHQ+z5!r|J)!JxgL+g31 z#Ld4U8hyLS%ZBT-9>OnRB2hK-P&K6>`VuuVDk{yz7onm!7Olt&pH_{P&LSNI4}eA#js$2_HQGIO}#q3#rZ}tI>2ykH(AKHn_dwd#eR;@rWm#V`c;~+6fO4T$52V zoF>5DL`FMqs;rvdZ(>|0SvI=A&I*t44&6q-o;H;SjWYEBx|B5+%`sh(lxTe+=LcEC z+Y-sY>e)(j;Sh$##iV zXV;TxBo8ImcSh=?Ykrgmhh9&iU);m*bK-taH#KfXVnV|6gb%9&ANiz$K$ecyxDgDo zuP6sihj2abDUej?UfER?TY*-2ujw#kF%jd#VW9Z5q>I{(I6XG`D9gBic1KaaNEdub zCRSBzJV?gy)t&DVFesvh^V;vIyo-;%tdV@`qpi#>%A5dSs8)JMi`BvEu`5awBhCT^ zyi`EXr7_^u8T$6aeS#ExA)|T2#L=pzm>AjXCxhR|bN805_z-&3uS7xR$KRiROK;Qi z*ODTo0#Ja7z5;cX^aDzCi9-f9Bzj#Q8GsJAdG9*)>!D;9QB6T6G${xBQ z1*7L(R^*Ae*rI$}!v^>+XD=S0llkg8OS-yph)kQXp+CAew;5$8Xxxm?B-u<9G_Lav zovm~zR?<&Rm}*LFav>!zT{{Ak;}yG!b|Ctw^=aiSVMd~t>6A*LS~}JEIjgk~Cebe= z)F7+4J|;Q}3RGcN1q4g?6=Gutp^}%0CSjq88t0lQeuFghs->K97JtaXky` z#k-2e8apD9Z zMfzEK{MU7gS%lU`rH-PaB+vZ2f*c>@mzLOyPjgQc;jv|+9TE;GY~wKD<5gWR_(F_7 zuYZ;`8b^zeQSgNuj~~TwZ9B`YIL_H5|6ZqBR_j zk#N*Adh9|PWB{y`4pBpxye6Uc9FV$y1*9UD``k;5AZ0%&<5p~dN4UBW4bSjcRVRwk zHk^*lSV2Pk9sRZ64PkeO(yyl`ikU~kdB!peRIqcI@3Y;g$z>)jk*%Hm9|CryA`+8O z0!|DJtNZkDt&s+BcDRIyXh3-g=-BfFi&`V(*5P0%JX)UY8clURj)Y2ut_3O^{bs++ zb3`!ZVqSxEQZApJZVG(sQvwZ|TJ{erwMQZ zJWw&3f9Oguoc&P5H86mU-47qZ^OqU`K-eQgKnAy!!0@A=p#9q~07MD}m_UgAFr3m6 zK=MEA06@zD{hcfZAcsqp>*C1wOEi9K3-8c{8f=HjgnD$z|> zxm5<|W0_1>#l)DOTE|TP8j7hLk=|J!%#Fzw((G=*;=mr^z+Oi;Bfx9H$~suzUe~zr zDD^Y(YTmxK&f!F3Ge=|`u^!ndJC(!J(y@E$*m`c4vtO3ToNciE?LXLIVfuf;|Ak%3 zgPQvf_TOQB81_V_vc!uyyPbEelNsJ}YWM;M2^b@u)vdiK7?*Cil>YeB>wYE=+cNJC zPMWtp%&>5XG?&mBxoq zP!M%<)Dmc2ncm|Gg%mA4C?Cgh=u>D@MqtPtt<&7=>z3`jd%^k64*vyH>n{Q$yRvup zum6MuU?~7#IArj@S#%%>01F93{D}!tI#=V`p<->} zYY*B4XHD(jIR+QKRZ>yt<7O^19j5oQPRM+UHFi}i;|V3{5b z5Txr)U+h@Q+(kvM@%@L}d7$(WhooL08p*U7%6Ls&MntJW_JGJWc3!pbG1E}@nWo+7 z=!@3!^=lQT^0oIe2gzI_q^2H$*}=q9AzDk9DoizuC`8W6l?z?89AobcvJ*s>K?!vc z!g@I8T)xbqsRp%e6}q1p8S5Lv3{sbI_=I|Ep(oU@Yn~Wv8xXW+A9Ntszun{z(f9au z6M5V~z{^Ixd21w`9{;r7>MmHuTfP!M?w13*^Tv`fIZj0ym{f#dE>tge0mmmm>}_?d zYyia%j=T>KTg_Wr!3!7DSl@*R%Pi3aq`jsWO8|I8#19CX=qnb4Xo#5=SuvdB7I?-U zIgZSc7b7k!GPTw2mTSytQOoevS!tDE&rw}bU-Z0t>bA`<$507G>I+&* zjXi`g+B&+#(_d?#uLVS>9#K`C5pG+a%7r7Nr>(oudJa2*=r-6V*EOdsuVZN2bYA7X zneT4bU&WMf$T4$YwB1hehwR1QD0DCjl$dr0dY59$E8NklBIt#qnkB=v-39M27N8n@ z71nxs;UJ+svf`f0o4AJ7pvFKJ5yGIsklA0Uq1hQ$D5#lzf#Owl77&dv12<51<2A|} z?k4V+Q>?DF-9PuG02TME5Z`My7T0K9#*^M9BdTF_H0~)s^OB-T96^_WX_i{c-NzQ*huyrIcPOyB(60mn{nQD`z zCQ%{b@ME(QIg&@RXxP!P;HkJrm9b@;g-_KovJvdlXbV&ipf~2uX{9D3P`GIddSHoG zHUoQmEj1@Zs`T@9KfKC~rgiv*FR_fDsXL(ee2_PA{dO)kMXW*CyYZlR(Sqf+bo=6K z&`^GJ2}?Lm18o{QWyEn{C>Io&zC&ZK5M7y-I?zLywEW#(`_u01W7;X%GkOgpt96%| z;vJ3Z1yNgXulg_*4?}VZXP!%p9D6bz@0D9B^i{I7h0`9?Eutp4e2tQ50oS3@h_}Ly zkuxoG`Gq!*fJNf)_j9cczW29cQ;z^A{#p`$2*TZnWDUQhXTM_0CiNFHX z>lB&6(zONGCl>2W#Gr}7PHd4DSXBWrP*;qFy!qr~8TcFlIl31(2J>W9J|O3G9gY?+ zX@z-4y>AgCZY7+xsDIGAzN{M3uh3uBR$f9!?&`8!CVbKrDs9*jWj^!S)b60^os?BQ zNsEvBq9OC1a{JLIRH8;&HKGqs@~ouSJW$Unj9ElF59)OkDe<#q+Ro$9^KVNnU*cBCHR7J4pCkfKZjhS{L=B5nYOryRs`^ z7=7_|PHAa~(>#L(j|(hCjtUv$3O5y9RV_zoZpR%NDW+NgIWj7|Bg~LiYeeqFQRp`0#1j%u zQ+SG>G^&mFgA^M%la8KCR%I$SPsd_^vYnsv@1`J&z%ZFezK~I{ zxB7y%7GPBaPKG1k=BKO5R4$NW+?-+MREW?nx1M+nS20_GXd3M*9R;;kahaT2;1%b= zef@NphCZ3L{%sTkD!&i<3%BRm$OZB_s-0yIGJ%rbLukcUNyNx&H^mL#o(>qgKzqYU zWSV7gIiy)56FmJ04QsZ2_fEnn@JuqY-zwy&o~fS1WtxA+Lv4m{KeY8dcSDR`a+*{- z#XwY>cb3A9tc{eNb6U!cBeKVdFPG1kopOp)yzpi_v{OD~ zC?tdK6K+56D5ccb%8@o=m8*bI@l(BVteX#L-JOu!!UWtDzG6NAFl?EvnImo|bB8nA z%SdRQT%;u3fP~9=5R#LCRy@`t`25|Z;B9+pYhVHW5VnPm=Ru|i79QcN8N!T{=>kfm ze9J8qf|R6m?9*NFMNR>l-f$0ZliAi+aG{i5rnipY9@YXrh6@c$P-cG$&hw-|iK@hC z#FMxD=$PLLNb{IOmK08uW8RfIiU=w<_BVHpJ@+-RtaC9{=K+sQyx zusUw@)R^+Sbjizt9|~V66cOJW-zxlYQIZl}cqO70@&O~BXOv%I^bTZ5BTizMwZ+>f zS`&b7<@<)8t}%b+o{F-T7|FVSzJa!i59aPimA2eyM2EhjaHKa)^?yUDJO2m-QYLN| zne*Acp>A({1S~_2q#$&P%J%Du8y^c*jwftmc?^Vn=^o&jquHX1YI=}y=olFaH{NXp zFq}LB5O5^$NvzN03gt&fh+?scDq%&<3|sFbfH%Y5tL*VL{qsR4R>OqRh0$@aTNw%j zH%l?YodqU3z~GL9#ZIbeAnPv2%KM#sEIV;LEB>25rEJfb=jj`M++}nmeVvNqW-z$_ps@Y6V~+d`8zX-@TXT`PKh)l~9!`C?D~GJVG~n4KrFh zHNjnrb7mt+$S+zGY4w?eGVdeMMIk^HOX~$aBYmZ7QN7!PoPdMdz%xvtd7?HDX(vG^ z*8aq>ho)i+^z^+t-eOl9PA18^VnMeT?rTD}v^^t#Jk);t`Ks`QiTqu^7lzs%Xv^^e zn26D&@inol;lYhVlE0VgPbI5uSkGqDM&o74`X7M?#h*zYM8Su~VsWHci5bzhZf;bb zA6nJe)$eoWL|c@n?&3Uy+|*=W*MuLu&u6gBt$qX|s@}a+&*GpindmuI47cu-udJ4Z zWDKmF@K7Ai#V^}_h)k`!$>K0ZxE5he# z&fCO-7rz2%6w|Zg)9uhs`1}LDVbyJz)H;RJ{+Tp7*rct>6Vs3}B(XE4FUu|ni|f#z z9cD) zK?)^N?JfaE=1`e;r<*x1%Li(-T3pT2mzZS;X~PTiTvRV{+w)&dnYzd$HGcuLXr#4U zrCjB%V^e3?P|}||u0;0Gw4r-gjXE|zc?hw7Qv9ii?sG^4FF~BQPpZ-KhxWr43H~~u zgSM)1nsgyAGje^t)u&|Ste}R=F9ussZnwW?qiY^jX%_7U0|21d_&7_-;?cBb1Dc9# z!-x$eR`%cN>)NP}r%x#k@u{>Tt<^cA+l{4U!l~|KLkEq_ji1d|G0>lL3zMXC@(}$JOk<31J~m=oe65nD&bJ1@NM(V7J7aG0W5dVUOXH3t+wGUVa`j< zKxwR{|B}1w+QlUshd<6S8wO$I`(nCm50BE)WxWh8f%!5}y{pTr?*?ZrWXP=pC7p() z9XVL5cE7!+DL?j+SZ>lc@(dfu3ADCVk=d!Njt3TgknUnqo#Ug{3uKF|gw^~7xc#52 zsh`UQQ7eX79+>pP;WC_y$j(jX%ej}FkY<|uc+|q2D@_|mkHG&Hh9yUd73mf zUU4CnTGcw~r6a|E3uJlHlNVd>)X6|h#KEC(^vY|IIwwxv%{Og76b<*~v;yn__UGRB z?;O;E8=iVM3dN6FGiES7y%o@4es!`OSaS<8hha!%4U^?p9D)}uTM>5v3L?9-*Jyv7EET(=I)*T=q8fw z7syxeiv)6_2nqA=F_TTZy6KtPDwI}TT$R(gUxHXy8q8KZjui;=+xG#JZ)?m$WxH&^ zI1h6Jw)+E2xEB%O|}nXXIV;%io^*WUA%4uS0>c z#}fx&$v4*{;}ytysJ(ign9B-RClW@85A@EU=WEMWAM5Me;9ED5mu@c<+@A93Ik4nh z$0D%xn;qU=@5|=_u&ly4*h=TCn4J_z4K1h>8xEwAfE=0fl)jbAD&k{RH=un3Rz5u* zwOH50x8(Jx>EVH{(tV14=c8Xx3vR+UdNKkRRmA_rpcb|Zyr2n>aTog~JPRAlUu>H~ zHf=MF{F2@EPrHlxF56U!+Qb}*-XY8vwE8$gX=o$ez@hX*hT5!yP_d|;2y+}h3`=ot zR5vWmVO{@f58cIqu?q~am@QKV1rKP=f-mU?gxFdF3+1KM!uGfN3CTQWC^Lf6sjr-P zm+ZfGJv<{@O?y$`K;~G`v-wM&RTbqeZq)m#G#o>673a4i&6m+}TGdikj{wm-<;gX)}a|H2O_9R&~^H-m)(EIXoPn@4Xewy z-MWaGv?$BjWBZQp!3fZpt7E2E7!WRXRp<&eQoUK0EN)v+*NYcl|QL|W~vInV#nZPK$*s{1VV zwe|I{!0c5hW{Uc`(iP^SK#TxAVdPcKc*HoR2nxB?r`X0fnk3`JCi{34p#9O@5pkgp z^~EMf{JuNkcsL?MErH2-1>vXF?abXwy-085&($sxaY(~~*@q8#jOq6as@=~~kL8#d l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json index fd08465589..1c77009193 100644 --- a/apps/wordpress_lickingvape/config.json +++ b/apps/wordpress_lickingvape/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress LickingVape", "available": true, - "port": 8213, + "port": 8224, "exposable": true, - "id": "wordpress", + "id": "wordpress_lickingvape", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml index 9adb1f8156..23354cbdcf 100644 --- a/apps/wordpress_lickingvape/docker-compose.yml +++ b/apps/wordpress_lickingvape/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_lickingvape: + container_name: wordpress_lickingvape image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_lickingvape-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_lickingvape-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_lickingvape-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_lickingvape.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_lickingvape-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-insecure.entrypoints: web + traefik.http.routers.wordpress_lickingvape-insecure.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-insecure.middlewares: wordpress_lickingvape-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_lickingvape.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape.entrypoints: websecure + traefik.http.routers.wordpress_lickingvape.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_lickingvape-local-insecure.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-local-insecure.entrypoints: web + traefik.http.routers.wordpress_lickingvape-local-insecure.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-local-insecure.middlewares: wordpress_lickingvape-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_lickingvape-local.rule: Host(`wordpress_lickingvape.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_lickingvape-local.entrypoints: websecure + traefik.http.routers.wordpress_lickingvape-local.service: wordpress_lickingvape + traefik.http.routers.wordpress_lickingvape-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_lickingvape-db: + container_name: wordpress_lickingvape-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_lickingvape/wordpress/config.json b/apps/wordpress_lickingvape/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_lickingvape/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_lickingvape/wordpress/docker-compose.yml b/apps/wordpress_lickingvape/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_lickingvape/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_lickingvape/wordpress/metadata/description.md b/apps/wordpress_lickingvape/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_lickingvape/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_lickingvape/wordpress/metadata/logo.jpg b/apps/wordpress_lickingvape/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index fd08465589..d865399f91 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress MarleeBean", "available": true, - "port": 8213, + "port": 8225, "exposable": true, - "id": "wordpress", + "id": "wordpress_marleebean", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml index 9adb1f8156..60890a16a5 100644 --- a/apps/wordpress_marleebean/docker-compose.yml +++ b/apps/wordpress_marleebean/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_rasies: + container_name: wordpress_rasies image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_rasies-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_rasies-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_rasies.entrypoints: websecure + traefik.http.routers.wordpress_rasies.service: wordpress_rasies + traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web + traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_rasies-local.entrypoints: websecure + traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies + traefik.http.routers.wordpress_rasies-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_rasies-db: + container_name: wordpress_rasies-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_marleebean/wordpress/config.json b/apps/wordpress_marleebean/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_marleebean/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_marleebean/wordpress/docker-compose.yml b/apps/wordpress_marleebean/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_marleebean/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_marleebean/wordpress/metadata/description.md b/apps/wordpress_marleebean/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_marleebean/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_marleebean/wordpress/metadata/logo.jpg b/apps/wordpress_marleebean/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_stepparentpath/config.json b/apps/wordpress_stepparentpath/config.json index fd08465589..31e157ea2e 100644 --- a/apps/wordpress_stepparentpath/config.json +++ b/apps/wordpress_stepparentpath/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress StepParentPath", "available": true, - "port": 8213, + "port": 8226, "exposable": true, - "id": "wordpress", + "id": "wordpress_stepparentpath", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_stepparentpath/docker-compose.yml b/apps/wordpress_stepparentpath/docker-compose.yml index 9adb1f8156..9e31023266 100644 --- a/apps/wordpress_stepparentpath/docker-compose.yml +++ b/apps/wordpress_stepparentpath/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_stepparentpath: + container_name: wordpress_stepparentpath image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_stepparentpath-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_stepparentpath-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_stepparentpath-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_stepparentpath.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_stepparentpath-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-insecure.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-insecure.middlewares: wordpress_stepparentpath-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_stepparentpath.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_stepparentpath-local-insecure.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-local-insecure.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local-insecure.middlewares: wordpress_stepparentpath-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_stepparentpath-local.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath-local.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_stepparentpath-db: + container_name: wordpress_stepparentpath-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_stepparentpath/wordpress/config.json b/apps/wordpress_stepparentpath/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_stepparentpath/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_stepparentpath/wordpress/docker-compose.yml b/apps/wordpress_stepparentpath/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_stepparentpath/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_stepparentpath/wordpress/metadata/description.md b/apps/wordpress_stepparentpath/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_stepparentpath/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg b/apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_visionarytalentkids/config.json b/apps/wordpress_visionarytalentkids/config.json index fd08465589..59eb22df02 100644 --- a/apps/wordpress_visionarytalentkids/config.json +++ b/apps/wordpress_visionarytalentkids/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress VisionaryTalentKids", "available": true, - "port": 8213, + "port": 8218, "exposable": true, - "id": "wordpress", + "id": "wordpress_visionarytalentkids", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_visionarytalentkids/docker-compose.yml b/apps/wordpress_visionarytalentkids/docker-compose.yml index 9adb1f8156..845f5f0f30 100644 --- a/apps/wordpress_visionarytalentkids/docker-compose.yml +++ b/apps/wordpress_visionarytalentkids/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_visionarytalentkids: + container_name: wordpress_visionarytalentkids image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_visionarytalentkids-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_visionarytalentkids-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_visionarytalentkids-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_visionarytalentkids.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_visionarytalentkids-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-insecure.entrypoints: web + traefik.http.routers.wordpress_visionarytalentkids-insecure.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-insecure.middlewares: wordpress_visionarytalentkids-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_visionarytalentkids.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids.entrypoints: websecure + traefik.http.routers.wordpress_visionarytalentkids.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.entrypoints: web + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-local-insecure.middlewares: wordpress_visionarytalentkids-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_visionarytalentkids-local.rule: Host(`wordpress_visionarytalentkids.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_visionarytalentkids-local.entrypoints: websecure + traefik.http.routers.wordpress_visionarytalentkids-local.service: wordpress_visionarytalentkids + traefik.http.routers.wordpress_visionarytalentkids-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_visionarytalentkids-db: + container_name: wordpress_visionarytalentkids-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_visionarytalentkids/wordpress/config.json b/apps/wordpress_visionarytalentkids/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_visionarytalentkids/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml b/apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_visionarytalentkids/wordpress/metadata/description.md b/apps/wordpress_visionarytalentkids/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_visionarytalentkids/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg b/apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json index fd08465589..00a7da465b 100644 --- a/apps/wordpress_yoginilist/config.json +++ b/apps/wordpress_yoginilist/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress", + "name": "WordPress YoginiList", "available": true, - "port": 8213, + "port": 8227, "exposable": true, - "id": "wordpress", + "id": "wordpress_yoginilist", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml index 9adb1f8156..1bfcd817c8 100644 --- a/apps/wordpress_yoginilist/docker-compose.yml +++ b/apps/wordpress_yoginilist/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress: - container_name: wordpress + wordpress_stepparentpath: + container_name: wordpress_yoginilist image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_HOST=wordpress_stepparentpah-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress-db + - wordpress_stepparentpath-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_stepparentpath-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_stepparentpath.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_stepparentpath-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-insecure.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-insecure.middlewares: wordpress_stepparentpath-redirect # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver + traefik.http.routers.wordpress_stepparentpath.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + traefik.http.routers.wordpress_stepparentpath-local-insecure.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local-insecure.entrypoints: web + traefik.http.routers.wordpress_stepparentpath-local-insecure.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local-insecure.middlewares: wordpress_stepparentpath-redirect # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true + traefik.http.routers.wordpress_stepparentpath-local.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_stepparentpath-local.entrypoints: websecure + traefik.http.routers.wordpress_stepparentpath-local.service: wordpress_stepparentpath + traefik.http.routers.wordpress_stepparentpath-local.tls: true runtipi.managed: true - wordpress-db: - container_name: wordpress-db + wordpress_stepparentpath-db: + container_name: wordpress_stepparentpath-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} @@ -58,4 +58,4 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true \ No newline at end of file + runtipi.managed: true diff --git a/apps/wordpress_yoginilist/wordpress/config.json b/apps/wordpress_yoginilist/wordpress/config.json new file mode 100644 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_yoginilist/wordpress/docker-compose.yml b/apps/wordpress_yoginilist/wordpress/docker-compose.yml new file mode 100644 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_yoginilist/wordpress/metadata/description.md b/apps/wordpress_yoginilist/wordpress/metadata/description.md new file mode 100644 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_yoginilist/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg b/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 8bb73870d805b448f172e968fe3e4e762eeed2b1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 18 Aug 2024 13:30:40 +0000 Subject: [PATCH 024/224] Add wordpress_elderseth --- apps/wordpress_blondesagainsttrump/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_blondesagainsttrump/config.json b/apps/wordpress_blondesagainsttrump/config.json index e18b10e3c7..fb0970f0ac 100644 --- a/apps/wordpress_blondesagainsttrump/config.json +++ b/apps/wordpress_blondesagainsttrump/config.json @@ -1,5 +1,5 @@ { - "name": "WordPress ", + "name": "WordPress BlondesAgainstTrump", "available": true, "port": 8221, "exposable": true, From 738349dd7df94e3a2301a1a1666c0fbd0f62ee07 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 13:33:40 +0000 Subject: [PATCH 025/224] Add wordpress_elderseth --- apps/wordpress_kiracuts/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json index b2eb5d07d1..f77145f968 100644 --- a/apps/wordpress_kiracuts/config.json +++ b/apps/wordpress_kiracuts/config.json @@ -1,7 +1,7 @@ { "name": "WordPress Kiracuts", "available": true, - "port": 8223, + "port": 8229, "exposable": true, "id": "wordpress_kiracuts", "description": "WordPress is a popular content management system for creating websites and blogs.", From 3483705936c8bb91698136319679a316abca06d1 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 13:35:44 +0000 Subject: [PATCH 026/224] Add wordpress_elderseth --- apps/wordpress_marleebean/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index d865399f91..38ec6673f6 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,7 +1,7 @@ { "name": "WordPress MarleeBean", "available": true, - "port": 8225, + "port": 8228, "exposable": true, "id": "wordpress_marleebean", "description": "WordPress is a popular content management system for creating websites and blogs.", From f1175d937763e5714f5771b5cb246c14c86355b8 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 18 Aug 2024 13:43:54 +0000 Subject: [PATCH 027/224] Add wordpress_elderseth --- apps/wordpress_lickingvape/config.json | 2 +- apps/wordpress_marleebean/config.json | 2 +- apps/wordpress_yoginilist/config.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json index 1c77009193..2277cb4005 100644 --- a/apps/wordpress_lickingvape/config.json +++ b/apps/wordpress_lickingvape/config.json @@ -1,7 +1,7 @@ { "name": "WordPress LickingVape", "available": true, - "port": 8224, + "port": 8230, "exposable": true, "id": "wordpress_lickingvape", "description": "WordPress is a popular content management system for creating websites and blogs.", diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json index 38ec6673f6..a4aea91380 100644 --- a/apps/wordpress_marleebean/config.json +++ b/apps/wordpress_marleebean/config.json @@ -1,7 +1,7 @@ { "name": "WordPress MarleeBean", "available": true, - "port": 8228, + "port": 8231, "exposable": true, "id": "wordpress_marleebean", "description": "WordPress is a popular content management system for creating websites and blogs.", diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json index 00a7da465b..e379e9230b 100644 --- a/apps/wordpress_yoginilist/config.json +++ b/apps/wordpress_yoginilist/config.json @@ -1,7 +1,7 @@ { "name": "WordPress YoginiList", "available": true, - "port": 8227, + "port": 8233, "exposable": true, "id": "wordpress_yoginilist", "description": "WordPress is a popular content management system for creating websites and blogs.", From 5f1647b8ff8f2078981636f546f0b4170205a1fd Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 13:45:40 +0000 Subject: [PATCH 028/224] Add wordpress_elderseth --- apps/2fauth/config.json | 0 apps/2fauth/docker-compose.json | 0 apps/2fauth/docker-compose.yml | 0 apps/2fauth/metadata/description.md | 0 apps/2fauth/metadata/logo.jpg | Bin apps/__tests__/app-config.ts | 0 apps/__tests__/apps.test.ts | 0 apps/activepieces/config.json | 0 apps/activepieces/docker-compose.yml | 0 apps/activepieces/metadata/description.md | 0 apps/activepieces/metadata/logo.jpg | Bin apps/actual-budget/config.json | 0 apps/actual-budget/docker-compose.yml | 0 apps/actual-budget/metadata/description.md | 0 apps/actual-budget/metadata/logo.jpg | Bin apps/adguard/config.json | 0 apps/adguard/data/conf/AdGuardHome.yaml | 0 apps/adguard/docker-compose.yml | 0 apps/adguard/metadata/description.md | 0 apps/adguard/metadata/logo.jpg | Bin apps/affine/config.json | 0 apps/affine/docker-compose.yml | 0 apps/affine/metadata/logo.jpg | Bin apps/anse/metadata/logo.jpg | Bin apps/archivebox/metadata/logo.jpg | Bin apps/atuin/metadata/logo.jpg | Bin apps/audiobookshelf/config.json | 0 apps/audiobookshelf/docker-compose.yml | 0 apps/audiobookshelf/metadata/description.md | 0 apps/audiobookshelf/metadata/logo.jpg | Bin apps/authentik/config.json | 0 apps/authentik/docker-compose.yml | 0 apps/authentik/metadata/description.md | 0 apps/authentik/metadata/logo.jpg | Bin apps/autobrr/config.json | 0 apps/autobrr/docker-compose.yml | 0 apps/autobrr/metadata/description.md | 0 apps/autobrr/metadata/logo.jpg | Bin apps/baikal/config.json | 0 apps/baikal/docker-compose.yml | 0 apps/baikal/metadata/description.md | 0 apps/baikal/metadata/logo.jpg | Bin apps/barrage/config.json | 0 apps/barrage/docker-compose.yml | 0 apps/barrage/metadata/description.md | 0 apps/barrage/metadata/logo.jpg | Bin apps/bazarr/config.json | 0 apps/bazarr/docker-compose.yml | 0 apps/bazarr/metadata/description.md | 0 apps/bazarr/metadata/logo.jpg | Bin apps/bitcoind/config.json | 0 apps/bitcoind/docker-compose.yml | 0 apps/bitcoind/metadata/description.md | 0 apps/bitcoind/metadata/logo.jpg | Bin apps/bitmagnet/config.json | 0 apps/bitmagnet/docker-compose.yml | 0 apps/bitmagnet/metadata/description.md | 0 apps/bitmagnet/metadata/logo.jpg | Bin apps/booksonic/config.json | 0 apps/booksonic/config/.keep | 0 apps/booksonic/docker-compose.yml | 0 apps/booksonic/metadata/description.md | 0 apps/booksonic/metadata/logo.jpg | Bin apps/bookstack/config.json | 0 apps/bookstack/docker-compose.yml | 0 apps/bookstack/metadata/description.md | 0 apps/bookstack/metadata/logo.jpg | Bin apps/budibase/config.json | 0 apps/budibase/docker-compose.yml | 0 apps/budibase/metadata/description.md | 0 apps/budibase/metadata/logo.jpg | Bin apps/calcom/config.json | 0 apps/calcom/docker-compose.yml | 0 apps/calcom/metadata/description.md | 0 apps/calcom/metadata/logo.jpg | Bin apps/calibre-web/config.json | 0 apps/calibre-web/data/books/metadata.db | Bin apps/calibre-web/docker-compose.yml | 0 apps/calibre-web/metadata/description.md | 0 apps/calibre-web/metadata/logo.jpg | Bin apps/changedetection/config.json | 0 apps/changedetection/docker-compose.yml | 0 apps/changedetection/metadata/description.md | 0 apps/changedetection/metadata/logo.jpg | Bin apps/chatgpt-ui/config.json | 0 apps/chatgpt-ui/docker-compose.yml | 0 apps/chatgpt-ui/metadata/description.md | 0 apps/chatgpt-ui/metadata/logo.jpg | Bin apps/chatpad/config.json | 0 apps/chatpad/docker-compose.yml | 0 apps/chatpad/metadata/description.md | 0 apps/chatpad/metadata/logo.jpg | Bin apps/cheshire-cat-ai/config.json | 0 apps/cheshire-cat-ai/docker-compose.yml | 0 apps/cheshire-cat-ai/metadata/description.md | 0 apps/cheshire-cat-ai/metadata/logo.jpg | Bin apps/cloudflare-ddns/config.json | 0 apps/cloudflare-ddns/docker-compose.yml | 0 apps/cloudflare-ddns/metadata/description.md | 0 apps/cloudflare-ddns/metadata/logo.jpg | Bin apps/cloudflared/config.json | 0 apps/cloudflared/docker-compose.yml | 0 apps/cloudflared/metadata/description.md | 0 apps/cloudflared/metadata/logo.jpg | Bin apps/code-server/config.json | 0 apps/code-server/docker-compose.yml | 0 apps/code-server/metadata/description.md | 0 apps/code-server/metadata/logo.jpg | Bin apps/codex-docs/config.json | 0 apps/codex-docs/data/docs-config.yaml | 0 apps/codex-docs/docker-compose.yml | 0 apps/codex-docs/metadata/description.md | 0 apps/codex-docs/metadata/logo.jpg | Bin apps/crafty/config.json | 0 apps/crafty/docker-compose.yml | 0 apps/crafty/metadata/description.md | 0 apps/crafty/metadata/logo.jpg | Bin apps/cross-seed/config.json | 0 apps/cross-seed/docker-compose.yml | 0 apps/cross-seed/metadata/description.md | 0 apps/cross-seed/metadata/logo.jpg | Bin apps/crowdsec/config.json | 0 .../data/crowdsec-dashboard/data/metabase.db.mv.db | Bin apps/crowdsec/data/crowdsec/acquis.yaml | 0 apps/crowdsec/docker-compose.yml | 0 apps/crowdsec/metadata/description.md | 0 apps/crowdsec/metadata/logo.jpg | Bin apps/ctfd/config.json | 0 apps/ctfd/docker-compose.yml | 0 apps/ctfd/metadata/description.md | 0 apps/ctfd/metadata/logo.jpg | Bin apps/cup/config.json | 0 apps/cup/docker-compose.yml | 0 apps/cup/metadata/description.md | 0 apps/cup/metadata/logo.jpg | Bin apps/cyberchef/config.json | 0 apps/cyberchef/docker-compose.yml | 0 apps/cyberchef/metadata/description.md | 0 apps/cyberchef/metadata/logo.jpg | Bin apps/dailytxt/config.json | 0 apps/dailytxt/docker-compose.yml | 0 apps/dailytxt/metadata/description.md | 0 apps/dailytxt/metadata/logo.jpg | Bin apps/dashdot/config.json | 0 apps/dashdot/docker-compose.yml | 0 apps/dashdot/metadata/description.md | 0 apps/dashdot/metadata/logo.jpg | Bin apps/dashy/config.json | 0 apps/dashy/data/dashy/conf.yml | 0 apps/dashy/docker-compose.yml | 0 apps/dashy/metadata/description.md | 0 apps/dashy/metadata/logo.jpg | Bin apps/databag/config.json | 0 apps/databag/docker-compose.yml | 0 apps/databag/metadata/description.md | 0 apps/databag/metadata/logo.jpg | Bin apps/deemix/config.json | 0 apps/deemix/docker-compose.yml | 0 apps/deemix/metadata/description.md | 0 apps/deemix/metadata/logo.jpg | Bin apps/deluge/config.json | 0 apps/deluge/docker-compose.yml | 0 apps/deluge/metadata/description.md | 0 apps/deluge/metadata/logo.jpg | Bin apps/docker-compose.common.yml | 0 apps/dockge/config.json | 0 apps/dockge/docker-compose.yml | 0 apps/dockge/metadata/description.md | 0 apps/dockge/metadata/logo.jpg | Bin apps/docmost/config.json | 0 apps/docmost/docker-compose.yml | 0 apps/docmost/metadata/description.md | 0 apps/docmost/metadata/logo.jpg | Bin apps/dokuwiki/config.json | 0 apps/dokuwiki/docker-compose.yml | 0 apps/dokuwiki/metadata/description.md | 0 apps/dokuwiki/metadata/logo.jpg | Bin apps/dozzle/config.json | 0 apps/dozzle/data/users.yml.template | 0 apps/dozzle/docker-compose.yml | 0 apps/dozzle/metadata/description.md | 0 apps/dozzle/metadata/logo.jpg | Bin apps/drawio/config.json | 0 apps/drawio/docker-compose.yml | 0 apps/drawio/metadata/description.md | 0 apps/drawio/metadata/logo.jpg | Bin apps/duckdns/config.json | 0 apps/duckdns/docker-compose.yml | 0 apps/duckdns/metadata/description.md | 0 apps/duckdns/metadata/logo.jpg | Bin apps/duplicati/config.json | 0 apps/duplicati/docker-compose.yml | 0 apps/duplicati/metadata/description.md | 0 apps/duplicati/metadata/logo.jpg | Bin apps/eclipse-mosquitto/data/data/.gitkeep | 0 apps/eclipse-mosquitto/data/scripts/dynsec-setup.sh | 0 .../metadata/cedalo_mgm_center.png | Bin apps/eclipse-mosquitto/metadata/logo.jpg | Bin apps/electrs/config.json | 0 apps/electrs/docker-compose.yml | 0 apps/electrs/metadata/description.md | 0 apps/electrs/metadata/logo.jpg | Bin apps/email-oauth2-proxy/config.json | 0 apps/email-oauth2-proxy/docker-compose.yml | 0 apps/email-oauth2-proxy/metadata/description.md | 0 apps/email-oauth2-proxy/metadata/logo.jpg | Bin apps/emulatorjs/config.json | 0 apps/emulatorjs/docker-compose.yml | 0 apps/emulatorjs/metadata/description.md | 0 apps/emulatorjs/metadata/logo.jpg | Bin apps/excalidraw/config.json | 0 apps/excalidraw/docker-compose.yml | 0 apps/excalidraw/metadata/description.md | 0 apps/excalidraw/metadata/logo.jpg | Bin apps/filebrowser/config.json | 0 apps/filebrowser/docker-compose.yml | 0 apps/filebrowser/metadata/description.md | 0 apps/filebrowser/metadata/logo.jpg | Bin apps/filestash/config.json | 0 apps/filestash/docker-compose.yml | 0 apps/filestash/metadata/description.md | 0 apps/filestash/metadata/logo.jpg | Bin apps/firefly-iii-data-importer/config.json | 0 apps/firefly-iii-data-importer/docker-compose.yml | 0 .../metadata/description.md | 0 apps/firefly-iii-data-importer/metadata/logo.jpg | Bin apps/firefly-iii/config.json | 0 apps/firefly-iii/docker-compose.yml | 0 apps/firefly-iii/metadata/description.md | 0 apps/firefly-iii/metadata/logo.jpg | Bin apps/fireshare/config.json | 0 apps/fireshare/docker-compose.yml | 0 apps/fireshare/metadata/description.md | 0 apps/fireshare/metadata/logo.jpg | Bin apps/flaresolverr/config.json | 0 apps/flaresolverr/docker-compose.yml | 0 apps/flaresolverr/metadata/description.md | 0 apps/flaresolverr/metadata/logo.jpg | Bin apps/flatnotes/config.json | 0 apps/flatnotes/docker-compose.yml | 0 apps/flatnotes/metadata/description.md | 0 apps/flatnotes/metadata/logo.jpg | Bin apps/flightlog/config.json | 0 apps/flightlog/docker-compose.yml | 0 apps/flightlog/metadata/description.md | 0 apps/flightlog/metadata/logo.jpg | Bin apps/flowise/config.json | 0 apps/flowise/docker-compose.yml | 0 apps/flowise/metadata/description.md | 0 apps/flowise/metadata/logo.jpg | Bin apps/forgejo/config.json | 0 apps/forgejo/docker-compose.yml | 0 apps/forgejo/metadata/description.md | 0 apps/forgejo/metadata/logo.jpg | Bin apps/freshrss/config.json | 0 apps/freshrss/docker-compose.yml | 0 apps/freshrss/metadata/description.md | 0 apps/freshrss/metadata/logo.jpg | Bin apps/gandi-livedns/config.json | 0 apps/gandi-livedns/docker-compose.yml | 0 apps/gandi-livedns/metadata/description.md | 0 apps/gandi-livedns/metadata/logo.jpg | Bin apps/getashell/config.json | 0 apps/getashell/docker-compose.yml | 0 apps/getashell/metadata/description.md | 0 apps/getashell/metadata/logo.jpg | Bin apps/ghost-dev/config.json | 0 apps/ghost-dev/docker-compose.yml | 0 apps/ghost-dev/metadata/description.md | 0 apps/ghost-dev/metadata/logo.jpg | Bin apps/ghost/config.json | 0 apps/ghost/docker-compose.yml | 0 apps/ghost/metadata/description.md | 0 apps/ghost/metadata/logo.jpg | Bin apps/ghostfolio/config.json | 0 apps/ghostfolio/docker-compose.yml | 0 apps/ghostfolio/metadata/description.md | 0 apps/ghostfolio/metadata/logo.jpg | Bin apps/gitea/config.json | 0 apps/gitea/docker-compose.yml | 0 apps/gitea/metadata/description.md | 0 apps/gitea/metadata/logo.jpg | Bin apps/gladys/config.json | 0 apps/gladys/docker-compose.yml | 0 apps/gladys/metadata/description.md | 0 apps/gladys/metadata/logo.jpg | Bin apps/glance/config.json | 0 apps/glance/data/glance.yml | 0 apps/glance/docker-compose.json | 0 apps/glance/docker-compose.yml | 0 apps/glance/metadata/description.md | 0 apps/glance/metadata/logo.jpg | Bin apps/glances/config.json | 0 apps/glances/docker-compose.yml | 0 apps/glances/metadata/description.md | 0 apps/glances/metadata/logo.jpg | Bin apps/gotify/config.json | 0 apps/gotify/docker-compose.arm64.yml | 0 apps/gotify/docker-compose.yml | 0 apps/gotify/metadata/description.md | 0 apps/gotify/metadata/logo.jpg | Bin apps/gotosocial/config.json | 0 apps/gotosocial/docker-compose.yml | 0 apps/gotosocial/metadata/description.md | 0 apps/gotosocial/metadata/logo.jpg | Bin apps/grafana/config.json | 0 apps/grafana/docker-compose.yml | 0 apps/grafana/metadata/description.md | 0 apps/grafana/metadata/logo.jpg | Bin apps/grampsweb/config.json | 0 apps/grampsweb/docker-compose.yml | 0 apps/grampsweb/metadata/description.md | 0 apps/grampsweb/metadata/logo.jpg | Bin apps/grav/config.json | 0 apps/grav/docker-compose.yml | 0 apps/grav/metadata/description.md | 0 apps/grav/metadata/logo.jpg | Bin apps/grist/config.json | 0 apps/grist/docker-compose.yml | 0 apps/grist/metadata/description.md | 0 apps/grist/metadata/logo.jpg | Bin apps/grocy/config.json | 0 apps/grocy/docker-compose.yml | 0 apps/grocy/metadata/description.md | 0 apps/grocy/metadata/logo.jpg | Bin apps/guacamole/config.json | 0 apps/guacamole/data/init/sql/001-create-schema.sql | 0 .../data/init/sql/002-create-admin-user.sql | 0 apps/guacamole/docker-compose.yml | 0 apps/guacamole/metadata/description.md | 0 apps/guacamole/metadata/logo.jpg | Bin apps/halo/config.json | 0 apps/halo/docker-compose.yml | 0 apps/halo/metadata/description.md | 0 apps/halo/metadata/logo.jpg | Bin apps/hammond/config.json | 0 apps/hammond/docker-compose.yml | 0 apps/hammond/metadata/description.md | 0 apps/hammond/metadata/logo.jpg | Bin apps/haven/config.json | 0 apps/haven/docker-compose.yml | 0 apps/haven/metadata/description.md | 0 apps/haven/metadata/logo.jpg | Bin apps/hedgedoc/config.json | 0 apps/hedgedoc/docker-compose.yml | 0 apps/hedgedoc/metadata/description.md | 0 apps/hedgedoc/metadata/logo.jpg | Bin apps/heimdall/config.json | 0 apps/heimdall/docker-compose.yml | 0 apps/heimdall/metadata/description.md | 0 apps/heimdall/metadata/logo.jpg | Bin apps/hello-world/config.json | 0 apps/hello-world/docker-compose.yml | 0 apps/hello-world/metadata/description.md | 0 apps/hello-world/metadata/logo.jpg | Bin apps/homarr/config.json | 0 apps/homarr/docker-compose.yml | 0 apps/homarr/metadata/description.md | 0 apps/homarr/metadata/logo.jpg | Bin apps/homeassistant-1/config.json | 0 apps/homeassistant-1/data/config/automations.yaml | 0 apps/homeassistant-1/data/config/configuration.yaml | 0 apps/homeassistant-1/data/config/scenes.yaml | 0 apps/homeassistant-1/data/config/scripts.yaml | 0 apps/homeassistant-1/docker-compose.yml | 0 apps/homeassistant-1/metadata/description.md | 0 apps/homeassistant-1/metadata/logo.jpg | Bin apps/homeassistant/config.json | 0 apps/homeassistant/docker-compose.yml | 0 apps/homeassistant/metadata/description.md | 0 apps/homeassistant/metadata/logo.jpg | Bin apps/homebox/config.json | 0 apps/homebox/docker-compose.yml | 0 apps/homebox/metadata/description.md | 0 apps/homebox/metadata/logo.jpg | Bin apps/homebridge/config.json | 0 apps/homebridge/docker-compose.yml | 0 apps/homebridge/metadata/description.md | 0 apps/homebridge/metadata/logo.jpg | Bin apps/homepage/config.json | 0 apps/homepage/docker-compose.yml | 0 apps/homepage/metadata/description.md | 0 apps/homepage/metadata/logo.jpg | Bin apps/immich/config.json | 0 apps/immich/docker-compose.yml | 0 apps/immich/metadata/description.md | 0 apps/immich/metadata/logo.jpg | Bin apps/inspircd/config.json | 0 apps/inspircd/data/.gitkeep | 0 apps/inspircd/docker-compose.yml | 0 apps/inspircd/metadata/description.md | 0 apps/inspircd/metadata/logo.jpg | Bin apps/invidious/config.json | 0 apps/invidious/data/init/init-invidious-db.sh | 0 apps/invidious/data/init/sql/annotations.sql | 0 apps/invidious/data/init/sql/channel_videos.sql | 0 apps/invidious/data/init/sql/channels.sql | 0 apps/invidious/data/init/sql/nonces.sql | 0 apps/invidious/data/init/sql/playlist_videos.sql | 0 apps/invidious/data/init/sql/playlists.sql | 0 apps/invidious/data/init/sql/session_ids.sql | 0 apps/invidious/data/init/sql/users.sql | 0 apps/invidious/data/init/sql/videos.sql | 0 apps/invidious/data/postgres/.gitkeep | 0 apps/invidious/data/sql/.gitkeep | 0 apps/invidious/docker-compose.arm64.yml | 0 apps/invidious/docker-compose.yml | 0 apps/invidious/metadata/description.md | 0 apps/invidious/metadata/logo.jpg | Bin apps/invoice-ninja/config.json | 0 apps/invoice-ninja/data/init/init.sh | 0 apps/invoice-ninja/data/nginx/invoice-ninja.conf | 0 apps/invoice-ninja/data/php/php-cli.ini | 0 apps/invoice-ninja/data/php/php.ini | 0 apps/invoice-ninja/docker-compose.yml | 0 apps/invoice-ninja/metadata/description.md | 0 apps/invoice-ninja/metadata/logo.jpg | Bin apps/it-tools/config.json | 0 apps/it-tools/docker-compose.yml | 0 apps/it-tools/metadata/description.md | 0 apps/it-tools/metadata/logo.jpg | Bin apps/jackett/config.json | 0 apps/jackett/docker-compose.yml | 0 apps/jackett/metadata/description.md | 0 apps/jackett/metadata/logo.jpg | Bin apps/jellyfin-vue/config.json | 0 apps/jellyfin-vue/docker-compose.yml | 0 apps/jellyfin-vue/metadata/description.md | 0 apps/jellyfin-vue/metadata/logo.jpg | Bin apps/jellyfin/config.json | 0 apps/jellyfin/data/config/.gitkeep | 0 apps/jellyfin/docker-compose.yml | 0 apps/jellyfin/metadata/description.md | 0 apps/jellyfin/metadata/logo.jpg | Bin apps/jellyseerr/config.json | 0 apps/jellyseerr/docker-compose.yml | 0 apps/jellyseerr/metadata/description.md | 0 apps/jellyseerr/metadata/logo.jpg | Bin apps/joplin/config.json | 0 apps/joplin/docker-compose.yml | 0 apps/joplin/metadata/description.md | 0 apps/joplin/metadata/logo.jpg | Bin apps/kanboard/config.json | 0 apps/kanboard/docker-compose.yml | 0 apps/kanboard/metadata/description.md | 0 apps/kanboard/metadata/logo.jpg | Bin apps/kapowarr/config.json | 0 apps/kapowarr/docker-compose.yml | 0 apps/kapowarr/metadata/description.md | 0 apps/kapowarr/metadata/logo.jpg | Bin apps/kasm-workspaces/config.json | 0 apps/kasm-workspaces/docker-compose.yml | 0 apps/kasm-workspaces/metadata/description.md | 0 apps/kasm-workspaces/metadata/logo.jpg | Bin apps/kavita/config.json | 0 apps/kavita/docker-compose.yml | 0 apps/kavita/metadata/description.md | 0 apps/kavita/metadata/logo.jpg | Bin apps/kimai/config.json | 0 apps/kimai/docker-compose.yml | 0 apps/kimai/metadata/description.md | 0 apps/kimai/metadata/logo.jpg | Bin apps/kiwix-serve/config.json | 0 apps/kiwix-serve/docker-compose.yml | 0 apps/kiwix-serve/metadata/description.md | 0 apps/kiwix-serve/metadata/logo.jpg | Bin apps/koillection/config.json | 0 apps/koillection/docker-compose.yml | 0 apps/koillection/metadata/description.md | 0 apps/koillection/metadata/logo.jpg | Bin apps/kometa/config.json | 0 apps/kometa/docker-compose.yml | 0 apps/kometa/metadata/description.md | 0 apps/kometa/metadata/logo.jpg | Bin apps/komga/config.json | 0 apps/komga/docker-compose.yml | 0 apps/komga/metadata/description.md | 0 apps/komga/metadata/logo.jpg | Bin apps/libreddit/config.json | 0 apps/libreddit/docker-compose.arm64.yml | 0 apps/libreddit/docker-compose.yml | 0 apps/libreddit/metadata/description.md | 0 apps/libreddit/metadata/logo.jpg | Bin apps/librephotos/config.json | 0 apps/librephotos/data/cache/.gitkeep | 0 apps/librephotos/data/logs/.gitkeep | 0 apps/librephotos/data/protected_media/.gitkeep | 0 apps/librephotos/data/proxy/nginx.conf | 0 apps/librephotos/data/scan/.gitkeep | 0 apps/librephotos/docker-compose.yml | 0 apps/librephotos/metadata/description.md | 0 apps/librephotos/metadata/logo.jpg | Bin apps/libretranslate/config.json | 0 apps/libretranslate/docker-compose.yml | 0 apps/libretranslate/metadata/description.md | 0 apps/libretranslate/metadata/logo.jpg | Bin apps/lidarr-deemix/config.json | 0 apps/lidarr-deemix/docker-compose.yml | 0 apps/lidarr-deemix/metadata/description.md | 0 apps/lidarr-deemix/metadata/logo.jpg | Bin apps/lidarr/config.json | 0 apps/lidarr/docker-compose.yml | 0 apps/lidarr/metadata/description.md | 0 apps/lidarr/metadata/logo.jpg | Bin apps/linkstack/config.json | 0 apps/linkstack/docker-compose.yml | 0 apps/linkstack/metadata/description.md | 0 apps/linkstack/metadata/logo.jpg | Bin apps/linkwarden/config.json | 0 apps/linkwarden/docker-compose.yml | 0 apps/linkwarden/metadata/description.md | 0 apps/linkwarden/metadata/logo.jpg | Bin apps/lobe-chat/config.json | 0 apps/lobe-chat/docker-compose.yml | 0 apps/lobe-chat/metadata/description.md | 0 apps/lobe-chat/metadata/logo.jpg | Bin apps/lodestone-core/config.json | 0 apps/lodestone-core/docker-compose.yml | 0 apps/lodestone-core/metadata/description.md | 0 apps/lodestone-core/metadata/logo.jpg | Bin apps/logto/config.json | 0 apps/logto/docker-compose.yml | 0 apps/logto/metadata/description.md | 0 apps/logto/metadata/logo.jpg | Bin apps/maintainerr/config.json | 0 apps/maintainerr/docker-compose.yml | 0 apps/maintainerr/metadata/description.md | 0 apps/maintainerr/metadata/logo.jpg | Bin apps/mastodon/config.json | 0 apps/mastodon/docker-compose.yml | 0 apps/mastodon/metadata/description.md | 0 apps/mastodon/metadata/logo.jpg | Bin apps/matrix-conduit/config.json | 0 apps/matrix-conduit/docker-compose.yml | 0 apps/matrix-conduit/metadata/description.md | 0 apps/matrix-conduit/metadata/logo.jpg | Bin apps/matrix-conduit/nginx/Dockerfile | 0 apps/matrix-conduit/nginx/matrix.conf.template | 0 apps/matter-server/config.json | 0 apps/matter-server/docker-compose.yml | 0 apps/matter-server/metadata/description.md | 0 apps/matter-server/metadata/logo.jpg | Bin apps/mdns-repeater/config.json | 0 apps/mdns-repeater/docker-compose.yml | 0 apps/mdns-repeater/metadata/description.md | 0 apps/mdns-repeater/metadata/logo.jpg | Bin apps/mealie-1/config.json | 0 apps/mealie-1/docker-compose.yml | 0 apps/mealie-1/metadata/description.md | 0 apps/mealie-1/metadata/logo.jpg | Bin apps/mealie/config.json | 0 apps/mealie/docker-compose.yml | 0 apps/mealie/metadata/description.md | 0 apps/mealie/metadata/logo.jpg | Bin apps/memos/config.json | 0 apps/memos/docker-compose.yml | 0 apps/memos/metadata/logo.jpg | Bin apps/metube/config.json | 0 apps/metube/docker-compose.yml | 0 apps/metube/metadata/description.md | 0 apps/metube/metadata/logo.jpg | Bin apps/mind/config.json | 0 apps/mind/docker-compose.yml | 0 apps/mind/metadata/description.md | 0 apps/mind/metadata/logo.jpg | Bin apps/minecraft-server/config.json | 0 apps/minecraft-server/docker-compose.yml | 0 apps/minecraft-server/metadata/description.md | 0 apps/minecraft-server/metadata/logo.jpg | Bin apps/minio/config.json | 0 apps/minio/docker-compose.yml | 0 apps/minio/metadata/description.md | 0 apps/minio/metadata/logo.jpg | Bin apps/mixpost-pro/config.json | 0 apps/mixpost-pro/docker-compose.yml | 0 apps/mixpost-pro/metadata/description.md | 0 apps/mixpost-pro/metadata/logo.jpg | Bin apps/mixpost/config.json | 0 apps/mixpost/data/nginx/nginx.conf | 0 apps/mixpost/docker-compose.yml | 0 apps/mixpost/metadata/description.md | 0 apps/mixpost/metadata/logo.jpg | Bin apps/moneroblock/config.json | 0 apps/moneroblock/docker-compose.yml | 0 apps/moneroblock/metadata/description.md | 0 apps/moneroblock/metadata/logo.jpg | Bin apps/monerod/config.json | 0 apps/monerod/docker-compose.yml | 0 apps/monerod/metadata/description.md | 0 apps/monerod/metadata/logo.jpg | Bin apps/mongo-express/config.json | 0 apps/mongo-express/docker-compose.yml | 0 apps/mongo-express/metadata/description.md | 0 apps/mongo-express/metadata/logo.jpg | Bin apps/mongo/config.json | 0 apps/mongo/docker-compose.yml | 0 apps/mongo/metadata/description.md | 0 apps/mongo/metadata/logo.jpg | Bin apps/monica/config.json | 0 apps/monica/docker-compose.yml | 0 apps/monica/metadata/description.md | 0 apps/monica/metadata/logo.jpg | Bin apps/moodist/config.json | 0 apps/moodist/docker-compose.yml | 0 apps/moodist/metadata/description.md | 0 apps/moodist/metadata/logo.jpg | Bin apps/movary/config.json | 0 apps/movary/docker-compose.yml | 0 apps/movary/metadata/description.md | 0 apps/movary/metadata/logo.jpg | Bin apps/mqttx/config.json | 0 apps/mqttx/docker-compose.yml | 0 apps/mqttx/metadata/description.md | 0 apps/mqttx/metadata/logo.jpg | Bin apps/mstream/config.json | 0 apps/mstream/docker-compose.yml | 0 apps/mstream/metadata/description.md | 0 apps/mstream/metadata/logo.jpg | Bin apps/mylar3/config.json | 0 apps/mylar3/docker-compose.yml | 0 apps/mylar3/metadata/description.md | 0 apps/mylar3/metadata/logo.jpg | Bin apps/n8n-1/config.json | 0 apps/n8n-1/data/init-data.sh | 0 apps/n8n-1/docker-compose.yml | 0 apps/n8n-1/metadata/description.md | 0 apps/n8n-1/metadata/logo.jpg | Bin apps/n8n/config.json | 0 apps/n8n/docker-compose.yml | 0 apps/n8n/metadata/description.md | 0 apps/n8n/metadata/logo.jpg | Bin apps/navidrome/config.json | 0 apps/navidrome/docker-compose.yml | 0 apps/navidrome/metadata/description.md | 0 apps/navidrome/metadata/logo.jpg | Bin apps/netbootxyz/config.json | 0 apps/netbootxyz/docker-compose.yml | 0 apps/netbootxyz/metadata/description.md | 0 apps/netbootxyz/metadata/logo.jpg | Bin apps/netdata/config.json | 0 apps/netdata/docker-compose.yml | 0 apps/netdata/metadata/description.md | 0 apps/netdata/metadata/logo.jpg | Bin apps/nextcloud/config.json | 0 apps/nextcloud/data/nextcloud/.gitkeep | 0 apps/nextcloud/data/redis/.gitkeep | 0 apps/nextcloud/docker-compose.yml | 0 apps/nextcloud/metadata/description.md | 0 apps/nextcloud/metadata/logo.jpg | Bin apps/nextgba/config.json | 0 apps/nextgba/docker-compose.yml | 0 apps/nextgba/metadata/description.md | 0 apps/nextgba/metadata/logo.jpg | Bin apps/nginx/config.json | 0 apps/nginx/docker-compose.yml | 0 apps/nginx/metadata/description.md | 0 apps/nginx/metadata/logo.jpg | Bin apps/nitter/config.json | 0 apps/nitter/data/nitter.conf | 0 apps/nitter/docker-compose.yml | 0 apps/nitter/metadata/description.md | 0 apps/nitter/metadata/logo.jpg | Bin apps/nocodb/config.json | 0 apps/nocodb/docker-compose.yml | 0 apps/nocodb/metadata/description.md | 0 apps/nocodb/metadata/logo.jpg | Bin apps/nodered/config.json | 0 apps/nodered/data/settings.js | 0 apps/nodered/docker-compose.yml | 0 apps/nodered/metadata/description.md | 0 apps/nodered/metadata/logo.jpg | Bin apps/notemark/config.json | 0 apps/notemark/data/proxy/nginx.conf | 0 apps/notemark/docker-compose.yml | 0 apps/notemark/metadata/description.md | 0 apps/notemark/metadata/logo.jpg | Bin apps/ntfy/config.json | 0 apps/ntfy/docker-compose.yml | 0 apps/ntfy/metadata/description.md | 0 apps/ntfy/metadata/logo.jpg | Bin apps/obsidian-livesync/config.json | 0 apps/obsidian-livesync/data/local.ini | 0 apps/obsidian-livesync/docker-compose.yml | 0 apps/obsidian-livesync/metadata/description.md | 0 apps/obsidian-livesync/metadata/logo.jpg | Bin apps/octobot/config.json | 0 apps/octobot/docker-compose.yml | 0 apps/octobot/metadata/description.md | 0 apps/octobot/metadata/logo.jpg | Bin apps/odoo/config.json | 0 apps/odoo/docker-compose.yml | 0 apps/odoo/metadata/description.md | 0 apps/odoo/metadata/logo.jpg | Bin apps/olivetin/config.json | 0 apps/olivetin/data/config.yaml | 0 apps/olivetin/docker-compose.yml | 0 apps/olivetin/metadata/description.md | 0 apps/olivetin/metadata/logo.jpg | Bin apps/ollama-amd/metadata/logo.jpg | Bin apps/ollama-cpu/metadata/logo.jpg | Bin apps/ollama-nvidia/metadata/logo.jpg | Bin apps/onedev/config.json | 0 apps/onedev/docker-compose.yml | 0 apps/onedev/metadata/description.md | 0 apps/onedev/metadata/logo.jpg | Bin apps/open-webui/config.json | 0 apps/open-webui/docker-compose.json | 0 apps/open-webui/docker-compose.yml | 0 apps/open-webui/metadata/description.md | 0 apps/open-webui/metadata/logo.jpg | Bin apps/openbooks/config.json | 0 apps/openbooks/docker-compose.yml | 0 apps/openbooks/metadata/description.md | 0 apps/openbooks/metadata/logo.jpg | Bin apps/outline/config.json | 0 apps/outline/data/nginx/default.conf | 0 apps/outline/data/oidc-config.json.template | 0 apps/outline/docker-compose.yml | 0 apps/outline/metadata/description.md | 0 apps/outline/metadata/logo.jpg | Bin apps/overseerr/config.json | 0 apps/overseerr/docker-compose.yml | 0 apps/overseerr/metadata/description.md | 0 apps/overseerr/metadata/logo.jpg | Bin apps/owncast/metadata/logo.jpg | Bin apps/owncloud/config.json | 0 apps/owncloud/docker-compose.yml | 0 apps/owncloud/metadata/description.md | 0 apps/owncloud/metadata/logo.jpg | Bin apps/pairdrop/config.json | 0 apps/pairdrop/docker-compose.yml | 0 apps/pairdrop/metadata/description.md | 0 apps/pairdrop/metadata/logo.jpg | Bin apps/paperless-ngx/config.json | 0 apps/paperless-ngx/docker-compose.yml | 0 apps/paperless-ngx/metadata/description.md | 0 apps/paperless-ngx/metadata/logo.jpg | Bin apps/penpot/config.json | 0 apps/penpot/docker-compose.yml | 0 apps/penpot/metadata/description.md | 0 apps/penpot/metadata/logo.jpg | Bin apps/peppermint/config.json | 0 apps/peppermint/docker-compose.yml | 0 apps/peppermint/metadata/description.md | 0 apps/peppermint/metadata/logo.jpg | Bin apps/photoprism/config.json | 0 apps/photoprism/docker-compose.yml | 0 apps/photoprism/metadata/description.md | 0 apps/photoprism/metadata/logo.jpg | Bin apps/pihole/config.json | 0 apps/pihole/data/unbound/a-records.conf | 0 apps/pihole/data/unbound/root.hints | 0 apps/pihole/data/unbound/root.key | 0 apps/pihole/data/unbound/unbound.conf | 0 apps/pihole/docker-compose.yml | 0 apps/pihole/metadata/description.md | 0 apps/pihole/metadata/logo.jpg | Bin apps/pinchflat/config.json | 0 apps/pinchflat/docker-compose.yml | 0 apps/pinchflat/metadata/description.md | 0 apps/pinchflat/metadata/logo.jpg | Bin apps/pingvin-share/config.json | 0 apps/pingvin-share/docker-compose.yml | 0 apps/pingvin-share/metadata/description.md | 0 apps/pingvin-share/metadata/logo.jpg | Bin apps/planka/config.json | 0 apps/planka/docker-compose.yml | 0 apps/planka/metadata/description.md | 0 apps/planka/metadata/logo.jpg | Bin apps/planning-poker/config.json | 0 apps/planning-poker/docker-compose.yml | 0 apps/planning-poker/metadata/description.md | 0 apps/planning-poker/metadata/logo.jpg | Bin apps/plausible/config.json | 0 .../plausible/data/clickhouse/clickhouse-config.xml | 0 .../data/clickhouse/clickhouse-user-config.xml | 0 apps/plausible/docker-compose.yml | 0 apps/plausible/metadata/description.md | 0 apps/plausible/metadata/logo.jpg | Bin apps/plex/config.json | 0 apps/plex/docker-compose.yml | 0 apps/plex/metadata/description.md | 0 apps/plex/metadata/logo.jpg | Bin apps/podfetch/config.json | 0 apps/podfetch/docker-compose.yml | 0 apps/podfetch/metadata/description.md | 0 apps/podfetch/metadata/logo.jpg | Bin apps/portainer/config.json | 0 apps/portainer/docker-compose.yml | 0 apps/portainer/metadata/description.md | 0 apps/portainer/metadata/logo.jpg | Bin apps/postfix-relay/config.json | 0 apps/postfix-relay/docker-compose.yml | 0 apps/postfix-relay/metadata/description.md | 0 apps/postfix-relay/metadata/logo.jpg | Bin apps/privatebin/config.json | 0 apps/privatebin/docker-compose.yml | 0 apps/privatebin/metadata/description.md | 0 apps/privatebin/metadata/logo.jpg | Bin apps/prowlarr/config.json | 0 apps/prowlarr/docker-compose.yml | 0 apps/prowlarr/metadata/description.md | 0 apps/prowlarr/metadata/logo.jpg | Bin apps/proxitok/config.json | 0 apps/proxitok/docker-compose.yml | 0 apps/proxitok/metadata/description.md | 0 apps/proxitok/metadata/logo.jpg | Bin apps/qbittorrent/config.json | 0 apps/qbittorrent/data/config/.gitkeep | 0 apps/qbittorrent/docker-compose.yml | 0 apps/qbittorrent/metadata/description.md | 0 apps/qbittorrent/metadata/logo.jpg | Bin apps/qdirstat/config.json | 0 apps/qdirstat/docker-compose.yml | 0 apps/qdirstat/metadata/description.md | 0 apps/qdirstat/metadata/logo.jpg | Bin apps/radarr/config.json | 0 apps/radarr/docker-compose.yml | 0 apps/radarr/metadata/description.md | 0 apps/radarr/metadata/logo.jpg | Bin apps/rallly/config.json | 0 apps/rallly/docker-compose.yml | 0 apps/rallly/metadata/description.md | 0 apps/rallly/metadata/logo.jpg | Bin apps/readarr/config.json | 0 apps/readarr/docker-compose.yml | 0 apps/readarr/metadata/description.md | 0 apps/readarr/metadata/logo.jpg | Bin apps/recyclarr/config.json | 0 apps/recyclarr/docker-compose.yml | 0 apps/recyclarr/metadata/description.md | 0 apps/recyclarr/metadata/logo.jpg | Bin apps/resilio-sync/config.json | 0 apps/resilio-sync/docker-compose.yml | 0 apps/resilio-sync/metadata/description.md | 0 apps/resilio-sync/metadata/logo.jpg | Bin apps/revolt/config.json | 0 apps/revolt/data/CaddyFiles/Caddyfile | 0 apps/revolt/docker-compose.yml | 0 apps/revolt/metadata/description.md | 0 apps/revolt/metadata/logo.jpg | Bin apps/romm/config.json | 0 apps/romm/data/config.yml | 0 apps/romm/docker-compose.yml | 0 apps/romm/metadata/description.md | 0 apps/romm/metadata/logo.jpg | Bin apps/rss/config.json | 0 apps/rss/data/storage/feeds.txt | 0 apps/rss/docker-compose.yml | 0 apps/rss/metadata/description.md | 0 apps/rss/metadata/logo.jpg | Bin apps/rsshub/config.json | 0 apps/rsshub/data/app.env | 0 apps/rsshub/docker-compose.yml | 0 apps/rsshub/metadata/description.md | 0 apps/rsshub/metadata/logo.jpg | Bin apps/ryot/config.json | 0 apps/ryot/docker-compose.yml | 0 apps/ryot/metadata/description.md | 0 apps/ryot/metadata/logo.jpg | Bin apps/sabnzbd/config.json | 0 apps/sabnzbd/docker-compose.yml | 0 apps/sabnzbd/metadata/description.md | 0 apps/sabnzbd/metadata/logo.jpg | Bin apps/schema.json | 0 apps/scrypted/config.json | 0 apps/scrypted/docker-compose.yml | 0 apps/scrypted/metadata/description.md | 0 apps/scrypted/metadata/logo.jpg | Bin apps/searxng/config.json | 0 apps/searxng/data/settings.yml | 0 apps/searxng/docker-compose.yml | 0 apps/searxng/metadata/description.md | 0 apps/searxng/metadata/logo.jpg | Bin apps/seedsync/config.json | 0 apps/seedsync/docker-compose.yml | 0 apps/seedsync/metadata/description.md | 0 apps/seedsync/metadata/logo.jpg | Bin apps/semaphore/config.json | 0 apps/semaphore/docker-compose.yml | 0 apps/semaphore/metadata/description.md | 0 apps/semaphore/metadata/logo.jpg | Bin apps/send/config.json | 0 apps/send/docker-compose.yml | 0 apps/send/metadata/description.md | 0 apps/send/metadata/logo.jpg | Bin apps/serge/config.json | 0 apps/serge/docker-compose.yml | 0 apps/serge/metadata/description.md | 0 apps/serge/metadata/logo.jpg | Bin apps/sftpgo/config.json | 0 apps/sftpgo/docker-compose.yml | 0 apps/sftpgo/metadata/description.md | 0 apps/sftpgo/metadata/logo.jpg | Bin apps/shlink/config.json | 0 apps/shlink/docker-compose.yml | 0 apps/shlink/metadata/description.md | 0 apps/shlink/metadata/logo.jpg | Bin apps/silverbullet/config.json | 0 apps/silverbullet/docker-compose.yml | 0 apps/silverbullet/metadata/description.md | 0 apps/silverbullet/metadata/logo.jpg | Bin apps/simplex-smp/config.json | 0 apps/simplex-smp/docker-compose.yml | 0 apps/simplex-smp/metadata/description.md | 0 apps/simplex-smp/metadata/logo.jpg | Bin apps/siyuan/config.json | 0 apps/siyuan/docker-compose.yml | 0 apps/siyuan/metadata/description.md | 0 apps/siyuan/metadata/logo.jpg | Bin apps/slskd/config.json | 0 apps/slskd/data/slskd.yml.template | 0 apps/slskd/docker-compose.yml | 0 apps/slskd/metadata/description.md | 0 apps/slskd/metadata/logo.jpg | Bin apps/sonarr/config.json | 0 apps/sonarr/docker-compose.yml | 0 apps/sonarr/metadata/description.md | 0 apps/sonarr/metadata/logo.jpg | Bin apps/spacedrive/metadata/logo.jpg | Bin apps/speedtest-tracker/config.json | 0 apps/speedtest-tracker/docker-compose.yml | 0 apps/speedtest-tracker/metadata/description.md | 0 apps/speedtest-tracker/metadata/logo.jpg | Bin apps/spoolman/config.json | 0 apps/spoolman/docker-compose.yml | 0 apps/spoolman/metadata/description.md | 0 apps/spoolman/metadata/logo.jpg | Bin apps/sshwifty/config.json | 0 apps/sshwifty/docker-compose.yml | 0 apps/sshwifty/metadata/description.md | 0 apps/sshwifty/metadata/logo.jpg | Bin apps/stalwart-mail/config.json | 0 apps/stalwart-mail/docker-compose.yml | 0 apps/stalwart-mail/metadata/description.md | 0 apps/stalwart-mail/metadata/logo.jpg | Bin apps/stirling-pdf/config.json | 0 apps/stirling-pdf/docker-compose.yml | 0 apps/stirling-pdf/metadata/description.md | 0 apps/stirling-pdf/metadata/logo.jpg | Bin apps/suwayomi/config.json | 0 apps/suwayomi/docker-compose.yml | 0 apps/suwayomi/metadata/description.md | 0 apps/suwayomi/metadata/logo.jpg | Bin apps/syncthing/config.json | 0 apps/syncthing/data/.gitkeep | 0 apps/syncthing/docker-compose.yml | 0 apps/syncthing/metadata/description.md | 0 apps/syncthing/metadata/logo.jpg | Bin apps/tailscale/config.json | 0 apps/tailscale/docker-compose.yml | 0 apps/tailscale/metadata/description.md | 0 apps/tailscale/metadata/logo.jpg | Bin apps/tandoor/config.json | 0 apps/tandoor/docker-compose.yml | 0 apps/tandoor/metadata/description.md | 0 apps/tandoor/metadata/logo.jpg | Bin apps/tasks-md/config.json | 0 apps/tasks-md/docker-compose.yml | 0 apps/tasks-md/metadata/description.md | 0 apps/tasks-md/metadata/logo.jpg | Bin apps/tautulli/config.json | 0 apps/tautulli/docker-compose.yml | 0 apps/tautulli/metadata/description.md | 0 apps/tautulli/metadata/logo.jpg | Bin apps/teddit/config.json | 0 apps/teddit/docker-compose.yml | 0 apps/teddit/metadata/description.md | 0 apps/teddit/metadata/logo.jpg | Bin apps/tooljet/config.json | 0 apps/tooljet/docker-compose.yml | 0 apps/tooljet/metadata/description.md | 0 apps/tooljet/metadata/logo.jpg | Bin apps/traefik-certs-dumper/config.json | 0 apps/traefik-certs-dumper/docker-compose.yml | 0 apps/traefik-certs-dumper/metadata/description.md | 0 apps/traefik-certs-dumper/metadata/logo.jpg | Bin apps/transmission-vpn/config.json | 0 apps/transmission-vpn/data/config/.gitkeep | 0 apps/transmission-vpn/docker-compose.yml | 0 apps/transmission-vpn/metadata/description.md | 0 apps/transmission-vpn/metadata/logo.jpg | Bin apps/transmission/config.json | 0 apps/transmission/data/config/.gitkeep | 0 apps/transmission/docker-compose.yml | 0 apps/transmission/metadata/description.md | 0 apps/transmission/metadata/logo.jpg | Bin apps/trilium/config.json | 0 apps/trilium/docker-compose.yml | 0 apps/trilium/metadata/description.md | 0 apps/trilium/metadata/logo.jpg | Bin apps/tubearchivist/config.json | 0 apps/tubearchivist/docker-compose.yml | 0 apps/tubearchivist/metadata/description.md | 0 apps/tubearchivist/metadata/logo.jpg | Bin apps/umami/config.json | 0 apps/umami/docker-compose.yml | 0 apps/umami/metadata/description.md | 0 apps/umami/metadata/logo.jpg | Bin apps/unmanic/config.json | 0 apps/unmanic/docker-compose.yml | 0 apps/unmanic/metadata/description.md | 0 apps/unmanic/metadata/logo.jpg | Bin apps/uptime-kuma/config.json | 0 apps/uptime-kuma/docker-compose.yml | 0 apps/uptime-kuma/metadata/description.md | 0 apps/uptime-kuma/metadata/logo.jpg | Bin apps/vaultwarden/config.json | 0 apps/vaultwarden/docker-compose.yml | 0 apps/vaultwarden/metadata/description.md | 0 apps/vaultwarden/metadata/logo.jpg | Bin apps/viewtube/config.json | 0 apps/viewtube/docker-compose.arm64.yml | 0 apps/viewtube/docker-compose.yml | 0 apps/viewtube/metadata/description.md | 0 apps/viewtube/metadata/logo.jpg | Bin apps/vikunja/config.json | 0 apps/vikunja/data/proxy/nginx.conf | 0 apps/vikunja/docker-compose.yml | 0 apps/vikunja/metadata/description.md | 0 apps/vikunja/metadata/logo.jpg | Bin apps/wallos/config.json | 0 apps/wallos/docker-compose.yml | 0 apps/wallos/metadata/description.md | 0 apps/wallos/metadata/logo.jpg | Bin apps/wekan/config.json | 0 apps/wekan/data/wekan/attachments/.gitkeep | 0 apps/wekan/docker-compose.yml | 0 apps/wekan/metadata/description.md | 0 apps/wekan/metadata/logo.jpg | Bin apps/wg-easy/config.json | 0 apps/wg-easy/data/.gitkeep | 0 apps/wg-easy/docker-compose.yml | 0 apps/wg-easy/metadata/description.md | 0 apps/wg-easy/metadata/logo.jpg | Bin apps/whisparr/config.json | 0 apps/whisparr/docker-compose.yml | 0 apps/whisparr/metadata/description.md | 0 apps/whisparr/metadata/logo.jpg | Bin apps/whoogle/config.json | 0 apps/whoogle/docker-compose.yml | 0 apps/whoogle/metadata/description.md | 0 apps/whoogle/metadata/logo.jpg | Bin apps/wikijs/config.json | 0 apps/wikijs/docker-compose.yml | 0 apps/wikijs/metadata/description.md | 0 apps/wikijs/metadata/logo.jpg | Bin apps/windows/config.json | 0 apps/windows/docker-compose.yml | 0 apps/windows/metadata/description.md | 0 apps/windows/metadata/logo.jpg | Bin apps/wizarr/config.json | 0 apps/wizarr/docker-compose.yml | 0 apps/wizarr/metadata/description.md | 0 apps/wizarr/metadata/logo.jpg | Bin apps/wordpress/config.json | 0 apps/wordpress/docker-compose.yml | 0 apps/wordpress/metadata/description.md | 0 apps/wordpress/metadata/logo.jpg | Bin apps/wordpress_aidanras/config.json | 0 apps/wordpress_aidanras/docker-compose.yml | 0 apps/wordpress_aidanras/metadata/description.md | 0 apps/wordpress_aidanras/metadata/logo.jpg | Bin apps/wordpress_aidanras/wordpress/config.json | 0 .../wordpress_aidanras/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 apps/wordpress_aidanras/wordpress/metadata/logo.jpg | Bin apps/wordpress_aweggly/config.json | 0 apps/wordpress_aweggly/docker-compose.yml | 0 apps/wordpress_aweggly/metadata/description.md | 0 apps/wordpress_aweggly/metadata/logo.jpg | Bin apps/wordpress_aweggly/wordpress/config.json | 0 apps/wordpress_aweggly/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 apps/wordpress_aweggly/wordpress/metadata/logo.jpg | Bin apps/wordpress_blondesagainsttrump/config.json | 0 .../docker-compose.yml | 0 .../metadata/description.md | 0 .../wordpress_blondesagainsttrump/metadata/logo.jpg | Bin .../wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_corbieplays/config.json | 0 apps/wordpress_corbieplays/docker-compose.yml | 0 apps/wordpress_corbieplays/metadata/description.md | 0 apps/wordpress_corbieplays/metadata/logo.jpg | Bin apps/wordpress_corbieplays/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin .../wordpress_rasies/config.json | 0 .../wordpress_rasies/docker-compose.yml | 0 .../wordpress_rasies/metadata/description.md | 0 .../wordpress_rasies/metadata/logo.jpg | Bin .../wordpress_rasies/wordpress/config.json | 0 .../wordpress_rasies/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress_rasies/wordpress/metadata/logo.jpg | Bin apps/wordpress_cuddleconfessions/config.json | 0 apps/wordpress_cuddleconfessions/docker-compose.yml | 0 .../metadata/description.md | 0 apps/wordpress_cuddleconfessions/metadata/logo.jpg | Bin .../wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_desirearts/config.json | 0 apps/wordpress_desirearts/docker-compose.yml | 0 apps/wordpress_desirearts/metadata/description.md | 0 apps/wordpress_desirearts/metadata/logo.jpg | Bin apps/wordpress_desirearts/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_elderseth/config.json | 0 apps/wordpress_elderseth/docker-compose.yml | 0 apps/wordpress_elderseth/metadata/description.md | 0 apps/wordpress_elderseth/metadata/logo.jpg | Bin apps/wordpress_elderseth/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress_elderseth/wordpress/metadata/logo.jpg | Bin .../wordpress_rasies/config.json | 0 .../wordpress_rasies/docker-compose.yml | 0 .../wordpress_rasies/metadata/description.md | 0 .../wordpress_rasies/metadata/logo.jpg | Bin .../wordpress_rasies/wordpress/config.json | 0 .../wordpress_rasies/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress_rasies/wordpress/metadata/logo.jpg | Bin apps/wordpress_hometownheartstrings/config.json | 0 .../docker-compose.yml | 0 .../metadata/description.md | 0 .../metadata/logo.jpg | Bin .../wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_kiracuts/config.json | 0 apps/wordpress_kiracuts/docker-compose.yml | 0 apps/wordpress_kiracuts/metadata/description.md | 0 apps/wordpress_kiracuts/metadata/logo.jpg | Bin apps/wordpress_kiracuts/wordpress/config.json | 0 .../wordpress_kiracuts/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 apps/wordpress_kiracuts/wordpress/metadata/logo.jpg | Bin apps/wordpress_lickingvape/config.json | 0 apps/wordpress_lickingvape/docker-compose.yml | 0 apps/wordpress_lickingvape/metadata/description.md | 0 apps/wordpress_lickingvape/metadata/logo.jpg | Bin apps/wordpress_lickingvape/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_marleebean/config.json | 0 apps/wordpress_marleebean/docker-compose.yml | 0 apps/wordpress_marleebean/metadata/description.md | 0 apps/wordpress_marleebean/metadata/logo.jpg | Bin apps/wordpress_marleebean/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_rasies/config.json | 0 apps/wordpress_rasies/docker-compose.yml | 0 apps/wordpress_rasies/metadata/description.md | 0 apps/wordpress_rasies/metadata/logo.jpg | Bin apps/wordpress_rasies/wordpress/config.json | 0 apps/wordpress_rasies/wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 apps/wordpress_rasies/wordpress/metadata/logo.jpg | Bin apps/wordpress_stepparentpath/config.json | 0 apps/wordpress_stepparentpath/docker-compose.yml | 0 .../metadata/description.md | 0 apps/wordpress_stepparentpath/metadata/logo.jpg | Bin apps/wordpress_stepparentpath/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_visionarytalentkids/config.json | 0 .../docker-compose.yml | 0 .../metadata/description.md | 0 .../wordpress_visionarytalentkids/metadata/logo.jpg | Bin .../wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/wordpress_yoginilist/config.json | 0 apps/wordpress_yoginilist/docker-compose.yml | 0 apps/wordpress_yoginilist/metadata/description.md | 0 apps/wordpress_yoginilist/metadata/logo.jpg | Bin apps/wordpress_yoginilist/wordpress/config.json | 0 .../wordpress/docker-compose.yml | 0 .../wordpress/metadata/description.md | 0 .../wordpress/metadata/logo.jpg | Bin apps/your-spotify/config.json | 0 apps/your-spotify/docker-compose.yml | 0 apps/your-spotify/metadata/description.md | 0 apps/your-spotify/metadata/logo.jpg | Bin apps/zerotier/config.json | 0 apps/zerotier/docker-compose.yml | 0 apps/zerotier/metadata/description.md | 0 apps/zerotier/metadata/logo.jpg | Bin apps/zigbee2mqtt/data/.gitkeep | 0 apps/zigbee2mqtt/docker-compose.yml | 0 apps/zigbee2mqtt/metadata/description.md | 0 apps/zigbee2mqtt/metadata/logo.jpg | Bin apps/zipline/config.json | 0 apps/zipline/docker-compose.yml | 0 apps/zipline/metadata/description.md | 0 apps/zipline/metadata/logo.jpg | Bin 1211 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 apps/2fauth/config.json mode change 100644 => 100755 apps/2fauth/docker-compose.json mode change 100644 => 100755 apps/2fauth/docker-compose.yml mode change 100644 => 100755 apps/2fauth/metadata/description.md mode change 100644 => 100755 apps/2fauth/metadata/logo.jpg mode change 100644 => 100755 apps/__tests__/app-config.ts mode change 100644 => 100755 apps/__tests__/apps.test.ts mode change 100644 => 100755 apps/activepieces/config.json mode change 100644 => 100755 apps/activepieces/docker-compose.yml mode change 100644 => 100755 apps/activepieces/metadata/description.md mode change 100644 => 100755 apps/activepieces/metadata/logo.jpg mode change 100644 => 100755 apps/actual-budget/config.json mode change 100644 => 100755 apps/actual-budget/docker-compose.yml mode change 100644 => 100755 apps/actual-budget/metadata/description.md mode change 100644 => 100755 apps/actual-budget/metadata/logo.jpg mode change 100644 => 100755 apps/adguard/config.json mode change 100644 => 100755 apps/adguard/data/conf/AdGuardHome.yaml mode change 100644 => 100755 apps/adguard/docker-compose.yml mode change 100644 => 100755 apps/adguard/metadata/description.md mode change 100644 => 100755 apps/adguard/metadata/logo.jpg mode change 100644 => 100755 apps/affine/config.json mode change 100644 => 100755 apps/affine/docker-compose.yml mode change 100644 => 100755 apps/affine/metadata/logo.jpg mode change 100644 => 100755 apps/anse/metadata/logo.jpg mode change 100644 => 100755 apps/archivebox/metadata/logo.jpg mode change 100644 => 100755 apps/atuin/metadata/logo.jpg mode change 100644 => 100755 apps/audiobookshelf/config.json mode change 100644 => 100755 apps/audiobookshelf/docker-compose.yml mode change 100644 => 100755 apps/audiobookshelf/metadata/description.md mode change 100644 => 100755 apps/audiobookshelf/metadata/logo.jpg mode change 100644 => 100755 apps/authentik/config.json mode change 100644 => 100755 apps/authentik/docker-compose.yml mode change 100644 => 100755 apps/authentik/metadata/description.md mode change 100644 => 100755 apps/authentik/metadata/logo.jpg mode change 100644 => 100755 apps/autobrr/config.json mode change 100644 => 100755 apps/autobrr/docker-compose.yml mode change 100644 => 100755 apps/autobrr/metadata/description.md mode change 100644 => 100755 apps/autobrr/metadata/logo.jpg mode change 100644 => 100755 apps/baikal/config.json mode change 100644 => 100755 apps/baikal/docker-compose.yml mode change 100644 => 100755 apps/baikal/metadata/description.md mode change 100644 => 100755 apps/baikal/metadata/logo.jpg mode change 100644 => 100755 apps/barrage/config.json mode change 100644 => 100755 apps/barrage/docker-compose.yml mode change 100644 => 100755 apps/barrage/metadata/description.md mode change 100644 => 100755 apps/barrage/metadata/logo.jpg mode change 100644 => 100755 apps/bazarr/config.json mode change 100644 => 100755 apps/bazarr/docker-compose.yml mode change 100644 => 100755 apps/bazarr/metadata/description.md mode change 100644 => 100755 apps/bazarr/metadata/logo.jpg mode change 100644 => 100755 apps/bitcoind/config.json mode change 100644 => 100755 apps/bitcoind/docker-compose.yml mode change 100644 => 100755 apps/bitcoind/metadata/description.md mode change 100644 => 100755 apps/bitcoind/metadata/logo.jpg mode change 100644 => 100755 apps/bitmagnet/config.json mode change 100644 => 100755 apps/bitmagnet/docker-compose.yml mode change 100644 => 100755 apps/bitmagnet/metadata/description.md mode change 100644 => 100755 apps/bitmagnet/metadata/logo.jpg mode change 100644 => 100755 apps/booksonic/config.json mode change 100644 => 100755 apps/booksonic/config/.keep mode change 100644 => 100755 apps/booksonic/docker-compose.yml mode change 100644 => 100755 apps/booksonic/metadata/description.md mode change 100644 => 100755 apps/booksonic/metadata/logo.jpg mode change 100644 => 100755 apps/bookstack/config.json mode change 100644 => 100755 apps/bookstack/docker-compose.yml mode change 100644 => 100755 apps/bookstack/metadata/description.md mode change 100644 => 100755 apps/bookstack/metadata/logo.jpg mode change 100644 => 100755 apps/budibase/config.json mode change 100644 => 100755 apps/budibase/docker-compose.yml mode change 100644 => 100755 apps/budibase/metadata/description.md mode change 100644 => 100755 apps/budibase/metadata/logo.jpg mode change 100644 => 100755 apps/calcom/config.json mode change 100644 => 100755 apps/calcom/docker-compose.yml mode change 100644 => 100755 apps/calcom/metadata/description.md mode change 100644 => 100755 apps/calcom/metadata/logo.jpg mode change 100644 => 100755 apps/calibre-web/config.json mode change 100644 => 100755 apps/calibre-web/data/books/metadata.db mode change 100644 => 100755 apps/calibre-web/docker-compose.yml mode change 100644 => 100755 apps/calibre-web/metadata/description.md mode change 100644 => 100755 apps/calibre-web/metadata/logo.jpg mode change 100644 => 100755 apps/changedetection/config.json mode change 100644 => 100755 apps/changedetection/docker-compose.yml mode change 100644 => 100755 apps/changedetection/metadata/description.md mode change 100644 => 100755 apps/changedetection/metadata/logo.jpg mode change 100644 => 100755 apps/chatgpt-ui/config.json mode change 100644 => 100755 apps/chatgpt-ui/docker-compose.yml mode change 100644 => 100755 apps/chatgpt-ui/metadata/description.md mode change 100644 => 100755 apps/chatgpt-ui/metadata/logo.jpg mode change 100644 => 100755 apps/chatpad/config.json mode change 100644 => 100755 apps/chatpad/docker-compose.yml mode change 100644 => 100755 apps/chatpad/metadata/description.md mode change 100644 => 100755 apps/chatpad/metadata/logo.jpg mode change 100644 => 100755 apps/cheshire-cat-ai/config.json mode change 100644 => 100755 apps/cheshire-cat-ai/docker-compose.yml mode change 100644 => 100755 apps/cheshire-cat-ai/metadata/description.md mode change 100644 => 100755 apps/cheshire-cat-ai/metadata/logo.jpg mode change 100644 => 100755 apps/cloudflare-ddns/config.json mode change 100644 => 100755 apps/cloudflare-ddns/docker-compose.yml mode change 100644 => 100755 apps/cloudflare-ddns/metadata/description.md mode change 100644 => 100755 apps/cloudflare-ddns/metadata/logo.jpg mode change 100644 => 100755 apps/cloudflared/config.json mode change 100644 => 100755 apps/cloudflared/docker-compose.yml mode change 100644 => 100755 apps/cloudflared/metadata/description.md mode change 100644 => 100755 apps/cloudflared/metadata/logo.jpg mode change 100644 => 100755 apps/code-server/config.json mode change 100644 => 100755 apps/code-server/docker-compose.yml mode change 100644 => 100755 apps/code-server/metadata/description.md mode change 100644 => 100755 apps/code-server/metadata/logo.jpg mode change 100644 => 100755 apps/codex-docs/config.json mode change 100644 => 100755 apps/codex-docs/data/docs-config.yaml mode change 100644 => 100755 apps/codex-docs/docker-compose.yml mode change 100644 => 100755 apps/codex-docs/metadata/description.md mode change 100644 => 100755 apps/codex-docs/metadata/logo.jpg mode change 100644 => 100755 apps/crafty/config.json mode change 100644 => 100755 apps/crafty/docker-compose.yml mode change 100644 => 100755 apps/crafty/metadata/description.md mode change 100644 => 100755 apps/crafty/metadata/logo.jpg mode change 100644 => 100755 apps/cross-seed/config.json mode change 100644 => 100755 apps/cross-seed/docker-compose.yml mode change 100644 => 100755 apps/cross-seed/metadata/description.md mode change 100644 => 100755 apps/cross-seed/metadata/logo.jpg mode change 100644 => 100755 apps/crowdsec/config.json mode change 100644 => 100755 apps/crowdsec/data/crowdsec-dashboard/data/metabase.db.mv.db mode change 100644 => 100755 apps/crowdsec/data/crowdsec/acquis.yaml mode change 100644 => 100755 apps/crowdsec/docker-compose.yml mode change 100644 => 100755 apps/crowdsec/metadata/description.md mode change 100644 => 100755 apps/crowdsec/metadata/logo.jpg mode change 100644 => 100755 apps/ctfd/config.json mode change 100644 => 100755 apps/ctfd/docker-compose.yml mode change 100644 => 100755 apps/ctfd/metadata/description.md mode change 100644 => 100755 apps/ctfd/metadata/logo.jpg mode change 100644 => 100755 apps/cup/config.json mode change 100644 => 100755 apps/cup/docker-compose.yml mode change 100644 => 100755 apps/cup/metadata/description.md mode change 100644 => 100755 apps/cup/metadata/logo.jpg mode change 100644 => 100755 apps/cyberchef/config.json mode change 100644 => 100755 apps/cyberchef/docker-compose.yml mode change 100644 => 100755 apps/cyberchef/metadata/description.md mode change 100644 => 100755 apps/cyberchef/metadata/logo.jpg mode change 100644 => 100755 apps/dailytxt/config.json mode change 100644 => 100755 apps/dailytxt/docker-compose.yml mode change 100644 => 100755 apps/dailytxt/metadata/description.md mode change 100644 => 100755 apps/dailytxt/metadata/logo.jpg mode change 100644 => 100755 apps/dashdot/config.json mode change 100644 => 100755 apps/dashdot/docker-compose.yml mode change 100644 => 100755 apps/dashdot/metadata/description.md mode change 100644 => 100755 apps/dashdot/metadata/logo.jpg mode change 100644 => 100755 apps/dashy/config.json mode change 100644 => 100755 apps/dashy/data/dashy/conf.yml mode change 100644 => 100755 apps/dashy/docker-compose.yml mode change 100644 => 100755 apps/dashy/metadata/description.md mode change 100644 => 100755 apps/dashy/metadata/logo.jpg mode change 100644 => 100755 apps/databag/config.json mode change 100644 => 100755 apps/databag/docker-compose.yml mode change 100644 => 100755 apps/databag/metadata/description.md mode change 100644 => 100755 apps/databag/metadata/logo.jpg mode change 100644 => 100755 apps/deemix/config.json mode change 100644 => 100755 apps/deemix/docker-compose.yml mode change 100644 => 100755 apps/deemix/metadata/description.md mode change 100644 => 100755 apps/deemix/metadata/logo.jpg mode change 100644 => 100755 apps/deluge/config.json mode change 100644 => 100755 apps/deluge/docker-compose.yml mode change 100644 => 100755 apps/deluge/metadata/description.md mode change 100644 => 100755 apps/deluge/metadata/logo.jpg mode change 100644 => 100755 apps/docker-compose.common.yml mode change 100644 => 100755 apps/dockge/config.json mode change 100644 => 100755 apps/dockge/docker-compose.yml mode change 100644 => 100755 apps/dockge/metadata/description.md mode change 100644 => 100755 apps/dockge/metadata/logo.jpg mode change 100644 => 100755 apps/docmost/config.json mode change 100644 => 100755 apps/docmost/docker-compose.yml mode change 100644 => 100755 apps/docmost/metadata/description.md mode change 100644 => 100755 apps/docmost/metadata/logo.jpg mode change 100644 => 100755 apps/dokuwiki/config.json mode change 100644 => 100755 apps/dokuwiki/docker-compose.yml mode change 100644 => 100755 apps/dokuwiki/metadata/description.md mode change 100644 => 100755 apps/dokuwiki/metadata/logo.jpg mode change 100644 => 100755 apps/dozzle/config.json mode change 100644 => 100755 apps/dozzle/data/users.yml.template mode change 100644 => 100755 apps/dozzle/docker-compose.yml mode change 100644 => 100755 apps/dozzle/metadata/description.md mode change 100644 => 100755 apps/dozzle/metadata/logo.jpg mode change 100644 => 100755 apps/drawio/config.json mode change 100644 => 100755 apps/drawio/docker-compose.yml mode change 100644 => 100755 apps/drawio/metadata/description.md mode change 100644 => 100755 apps/drawio/metadata/logo.jpg mode change 100644 => 100755 apps/duckdns/config.json mode change 100644 => 100755 apps/duckdns/docker-compose.yml mode change 100644 => 100755 apps/duckdns/metadata/description.md mode change 100644 => 100755 apps/duckdns/metadata/logo.jpg mode change 100644 => 100755 apps/duplicati/config.json mode change 100644 => 100755 apps/duplicati/docker-compose.yml mode change 100644 => 100755 apps/duplicati/metadata/description.md mode change 100644 => 100755 apps/duplicati/metadata/logo.jpg mode change 100644 => 100755 apps/eclipse-mosquitto/data/data/.gitkeep mode change 100644 => 100755 apps/eclipse-mosquitto/data/scripts/dynsec-setup.sh mode change 100644 => 100755 apps/eclipse-mosquitto/metadata/cedalo_mgm_center.png mode change 100644 => 100755 apps/eclipse-mosquitto/metadata/logo.jpg mode change 100644 => 100755 apps/electrs/config.json mode change 100644 => 100755 apps/electrs/docker-compose.yml mode change 100644 => 100755 apps/electrs/metadata/description.md mode change 100644 => 100755 apps/electrs/metadata/logo.jpg mode change 100644 => 100755 apps/email-oauth2-proxy/config.json mode change 100644 => 100755 apps/email-oauth2-proxy/docker-compose.yml mode change 100644 => 100755 apps/email-oauth2-proxy/metadata/description.md mode change 100644 => 100755 apps/email-oauth2-proxy/metadata/logo.jpg mode change 100644 => 100755 apps/emulatorjs/config.json mode change 100644 => 100755 apps/emulatorjs/docker-compose.yml mode change 100644 => 100755 apps/emulatorjs/metadata/description.md mode change 100644 => 100755 apps/emulatorjs/metadata/logo.jpg mode change 100644 => 100755 apps/excalidraw/config.json mode change 100644 => 100755 apps/excalidraw/docker-compose.yml mode change 100644 => 100755 apps/excalidraw/metadata/description.md mode change 100644 => 100755 apps/excalidraw/metadata/logo.jpg mode change 100644 => 100755 apps/filebrowser/config.json mode change 100644 => 100755 apps/filebrowser/docker-compose.yml mode change 100644 => 100755 apps/filebrowser/metadata/description.md mode change 100644 => 100755 apps/filebrowser/metadata/logo.jpg mode change 100644 => 100755 apps/filestash/config.json mode change 100644 => 100755 apps/filestash/docker-compose.yml mode change 100644 => 100755 apps/filestash/metadata/description.md mode change 100644 => 100755 apps/filestash/metadata/logo.jpg mode change 100644 => 100755 apps/firefly-iii-data-importer/config.json mode change 100644 => 100755 apps/firefly-iii-data-importer/docker-compose.yml mode change 100644 => 100755 apps/firefly-iii-data-importer/metadata/description.md mode change 100644 => 100755 apps/firefly-iii-data-importer/metadata/logo.jpg mode change 100644 => 100755 apps/firefly-iii/config.json mode change 100644 => 100755 apps/firefly-iii/docker-compose.yml mode change 100644 => 100755 apps/firefly-iii/metadata/description.md mode change 100644 => 100755 apps/firefly-iii/metadata/logo.jpg mode change 100644 => 100755 apps/fireshare/config.json mode change 100644 => 100755 apps/fireshare/docker-compose.yml mode change 100644 => 100755 apps/fireshare/metadata/description.md mode change 100644 => 100755 apps/fireshare/metadata/logo.jpg mode change 100644 => 100755 apps/flaresolverr/config.json mode change 100644 => 100755 apps/flaresolverr/docker-compose.yml mode change 100644 => 100755 apps/flaresolverr/metadata/description.md mode change 100644 => 100755 apps/flaresolverr/metadata/logo.jpg mode change 100644 => 100755 apps/flatnotes/config.json mode change 100644 => 100755 apps/flatnotes/docker-compose.yml mode change 100644 => 100755 apps/flatnotes/metadata/description.md mode change 100644 => 100755 apps/flatnotes/metadata/logo.jpg mode change 100644 => 100755 apps/flightlog/config.json mode change 100644 => 100755 apps/flightlog/docker-compose.yml mode change 100644 => 100755 apps/flightlog/metadata/description.md mode change 100644 => 100755 apps/flightlog/metadata/logo.jpg mode change 100644 => 100755 apps/flowise/config.json mode change 100644 => 100755 apps/flowise/docker-compose.yml mode change 100644 => 100755 apps/flowise/metadata/description.md mode change 100644 => 100755 apps/flowise/metadata/logo.jpg mode change 100644 => 100755 apps/forgejo/config.json mode change 100644 => 100755 apps/forgejo/docker-compose.yml mode change 100644 => 100755 apps/forgejo/metadata/description.md mode change 100644 => 100755 apps/forgejo/metadata/logo.jpg mode change 100644 => 100755 apps/freshrss/config.json mode change 100644 => 100755 apps/freshrss/docker-compose.yml mode change 100644 => 100755 apps/freshrss/metadata/description.md mode change 100644 => 100755 apps/freshrss/metadata/logo.jpg mode change 100644 => 100755 apps/gandi-livedns/config.json mode change 100644 => 100755 apps/gandi-livedns/docker-compose.yml mode change 100644 => 100755 apps/gandi-livedns/metadata/description.md mode change 100644 => 100755 apps/gandi-livedns/metadata/logo.jpg mode change 100644 => 100755 apps/getashell/config.json mode change 100644 => 100755 apps/getashell/docker-compose.yml mode change 100644 => 100755 apps/getashell/metadata/description.md mode change 100644 => 100755 apps/getashell/metadata/logo.jpg mode change 100644 => 100755 apps/ghost-dev/config.json mode change 100644 => 100755 apps/ghost-dev/docker-compose.yml mode change 100644 => 100755 apps/ghost-dev/metadata/description.md mode change 100644 => 100755 apps/ghost-dev/metadata/logo.jpg mode change 100644 => 100755 apps/ghost/config.json mode change 100644 => 100755 apps/ghost/docker-compose.yml mode change 100644 => 100755 apps/ghost/metadata/description.md mode change 100644 => 100755 apps/ghost/metadata/logo.jpg mode change 100644 => 100755 apps/ghostfolio/config.json mode change 100644 => 100755 apps/ghostfolio/docker-compose.yml mode change 100644 => 100755 apps/ghostfolio/metadata/description.md mode change 100644 => 100755 apps/ghostfolio/metadata/logo.jpg mode change 100644 => 100755 apps/gitea/config.json mode change 100644 => 100755 apps/gitea/docker-compose.yml mode change 100644 => 100755 apps/gitea/metadata/description.md mode change 100644 => 100755 apps/gitea/metadata/logo.jpg mode change 100644 => 100755 apps/gladys/config.json mode change 100644 => 100755 apps/gladys/docker-compose.yml mode change 100644 => 100755 apps/gladys/metadata/description.md mode change 100644 => 100755 apps/gladys/metadata/logo.jpg mode change 100644 => 100755 apps/glance/config.json mode change 100644 => 100755 apps/glance/data/glance.yml mode change 100644 => 100755 apps/glance/docker-compose.json mode change 100644 => 100755 apps/glance/docker-compose.yml mode change 100644 => 100755 apps/glance/metadata/description.md mode change 100644 => 100755 apps/glance/metadata/logo.jpg mode change 100644 => 100755 apps/glances/config.json mode change 100644 => 100755 apps/glances/docker-compose.yml mode change 100644 => 100755 apps/glances/metadata/description.md mode change 100644 => 100755 apps/glances/metadata/logo.jpg mode change 100644 => 100755 apps/gotify/config.json mode change 100644 => 100755 apps/gotify/docker-compose.arm64.yml mode change 100644 => 100755 apps/gotify/docker-compose.yml mode change 100644 => 100755 apps/gotify/metadata/description.md mode change 100644 => 100755 apps/gotify/metadata/logo.jpg mode change 100644 => 100755 apps/gotosocial/config.json mode change 100644 => 100755 apps/gotosocial/docker-compose.yml mode change 100644 => 100755 apps/gotosocial/metadata/description.md mode change 100644 => 100755 apps/gotosocial/metadata/logo.jpg mode change 100644 => 100755 apps/grafana/config.json mode change 100644 => 100755 apps/grafana/docker-compose.yml mode change 100644 => 100755 apps/grafana/metadata/description.md mode change 100644 => 100755 apps/grafana/metadata/logo.jpg mode change 100644 => 100755 apps/grampsweb/config.json mode change 100644 => 100755 apps/grampsweb/docker-compose.yml mode change 100644 => 100755 apps/grampsweb/metadata/description.md mode change 100644 => 100755 apps/grampsweb/metadata/logo.jpg mode change 100644 => 100755 apps/grav/config.json mode change 100644 => 100755 apps/grav/docker-compose.yml mode change 100644 => 100755 apps/grav/metadata/description.md mode change 100644 => 100755 apps/grav/metadata/logo.jpg mode change 100644 => 100755 apps/grist/config.json mode change 100644 => 100755 apps/grist/docker-compose.yml mode change 100644 => 100755 apps/grist/metadata/description.md mode change 100644 => 100755 apps/grist/metadata/logo.jpg mode change 100644 => 100755 apps/grocy/config.json mode change 100644 => 100755 apps/grocy/docker-compose.yml mode change 100644 => 100755 apps/grocy/metadata/description.md mode change 100644 => 100755 apps/grocy/metadata/logo.jpg mode change 100644 => 100755 apps/guacamole/config.json mode change 100644 => 100755 apps/guacamole/data/init/sql/001-create-schema.sql mode change 100644 => 100755 apps/guacamole/data/init/sql/002-create-admin-user.sql mode change 100644 => 100755 apps/guacamole/docker-compose.yml mode change 100644 => 100755 apps/guacamole/metadata/description.md mode change 100644 => 100755 apps/guacamole/metadata/logo.jpg mode change 100644 => 100755 apps/halo/config.json mode change 100644 => 100755 apps/halo/docker-compose.yml mode change 100644 => 100755 apps/halo/metadata/description.md mode change 100644 => 100755 apps/halo/metadata/logo.jpg mode change 100644 => 100755 apps/hammond/config.json mode change 100644 => 100755 apps/hammond/docker-compose.yml mode change 100644 => 100755 apps/hammond/metadata/description.md mode change 100644 => 100755 apps/hammond/metadata/logo.jpg mode change 100644 => 100755 apps/haven/config.json mode change 100644 => 100755 apps/haven/docker-compose.yml mode change 100644 => 100755 apps/haven/metadata/description.md mode change 100644 => 100755 apps/haven/metadata/logo.jpg mode change 100644 => 100755 apps/hedgedoc/config.json mode change 100644 => 100755 apps/hedgedoc/docker-compose.yml mode change 100644 => 100755 apps/hedgedoc/metadata/description.md mode change 100644 => 100755 apps/hedgedoc/metadata/logo.jpg mode change 100644 => 100755 apps/heimdall/config.json mode change 100644 => 100755 apps/heimdall/docker-compose.yml mode change 100644 => 100755 apps/heimdall/metadata/description.md mode change 100644 => 100755 apps/heimdall/metadata/logo.jpg mode change 100644 => 100755 apps/hello-world/config.json mode change 100644 => 100755 apps/hello-world/docker-compose.yml mode change 100644 => 100755 apps/hello-world/metadata/description.md mode change 100644 => 100755 apps/hello-world/metadata/logo.jpg mode change 100644 => 100755 apps/homarr/config.json mode change 100644 => 100755 apps/homarr/docker-compose.yml mode change 100644 => 100755 apps/homarr/metadata/description.md mode change 100644 => 100755 apps/homarr/metadata/logo.jpg mode change 100644 => 100755 apps/homeassistant-1/config.json mode change 100644 => 100755 apps/homeassistant-1/data/config/automations.yaml mode change 100644 => 100755 apps/homeassistant-1/data/config/configuration.yaml mode change 100644 => 100755 apps/homeassistant-1/data/config/scenes.yaml mode change 100644 => 100755 apps/homeassistant-1/data/config/scripts.yaml mode change 100644 => 100755 apps/homeassistant-1/docker-compose.yml mode change 100644 => 100755 apps/homeassistant-1/metadata/description.md mode change 100644 => 100755 apps/homeassistant-1/metadata/logo.jpg mode change 100644 => 100755 apps/homeassistant/config.json mode change 100644 => 100755 apps/homeassistant/docker-compose.yml mode change 100644 => 100755 apps/homeassistant/metadata/description.md mode change 100644 => 100755 apps/homeassistant/metadata/logo.jpg mode change 100644 => 100755 apps/homebox/config.json mode change 100644 => 100755 apps/homebox/docker-compose.yml mode change 100644 => 100755 apps/homebox/metadata/description.md mode change 100644 => 100755 apps/homebox/metadata/logo.jpg mode change 100644 => 100755 apps/homebridge/config.json mode change 100644 => 100755 apps/homebridge/docker-compose.yml mode change 100644 => 100755 apps/homebridge/metadata/description.md mode change 100644 => 100755 apps/homebridge/metadata/logo.jpg mode change 100644 => 100755 apps/homepage/config.json mode change 100644 => 100755 apps/homepage/docker-compose.yml mode change 100644 => 100755 apps/homepage/metadata/description.md mode change 100644 => 100755 apps/homepage/metadata/logo.jpg mode change 100644 => 100755 apps/immich/config.json mode change 100644 => 100755 apps/immich/docker-compose.yml mode change 100644 => 100755 apps/immich/metadata/description.md mode change 100644 => 100755 apps/immich/metadata/logo.jpg mode change 100644 => 100755 apps/inspircd/config.json mode change 100644 => 100755 apps/inspircd/data/.gitkeep mode change 100644 => 100755 apps/inspircd/docker-compose.yml mode change 100644 => 100755 apps/inspircd/metadata/description.md mode change 100644 => 100755 apps/inspircd/metadata/logo.jpg mode change 100644 => 100755 apps/invidious/config.json mode change 100644 => 100755 apps/invidious/data/init/init-invidious-db.sh mode change 100644 => 100755 apps/invidious/data/init/sql/annotations.sql mode change 100644 => 100755 apps/invidious/data/init/sql/channel_videos.sql mode change 100644 => 100755 apps/invidious/data/init/sql/channels.sql mode change 100644 => 100755 apps/invidious/data/init/sql/nonces.sql mode change 100644 => 100755 apps/invidious/data/init/sql/playlist_videos.sql mode change 100644 => 100755 apps/invidious/data/init/sql/playlists.sql mode change 100644 => 100755 apps/invidious/data/init/sql/session_ids.sql mode change 100644 => 100755 apps/invidious/data/init/sql/users.sql mode change 100644 => 100755 apps/invidious/data/init/sql/videos.sql mode change 100644 => 100755 apps/invidious/data/postgres/.gitkeep mode change 100644 => 100755 apps/invidious/data/sql/.gitkeep mode change 100644 => 100755 apps/invidious/docker-compose.arm64.yml mode change 100644 => 100755 apps/invidious/docker-compose.yml mode change 100644 => 100755 apps/invidious/metadata/description.md mode change 100644 => 100755 apps/invidious/metadata/logo.jpg mode change 100644 => 100755 apps/invoice-ninja/config.json mode change 100644 => 100755 apps/invoice-ninja/data/init/init.sh mode change 100644 => 100755 apps/invoice-ninja/data/nginx/invoice-ninja.conf mode change 100644 => 100755 apps/invoice-ninja/data/php/php-cli.ini mode change 100644 => 100755 apps/invoice-ninja/data/php/php.ini mode change 100644 => 100755 apps/invoice-ninja/docker-compose.yml mode change 100644 => 100755 apps/invoice-ninja/metadata/description.md mode change 100644 => 100755 apps/invoice-ninja/metadata/logo.jpg mode change 100644 => 100755 apps/it-tools/config.json mode change 100644 => 100755 apps/it-tools/docker-compose.yml mode change 100644 => 100755 apps/it-tools/metadata/description.md mode change 100644 => 100755 apps/it-tools/metadata/logo.jpg mode change 100644 => 100755 apps/jackett/config.json mode change 100644 => 100755 apps/jackett/docker-compose.yml mode change 100644 => 100755 apps/jackett/metadata/description.md mode change 100644 => 100755 apps/jackett/metadata/logo.jpg mode change 100644 => 100755 apps/jellyfin-vue/config.json mode change 100644 => 100755 apps/jellyfin-vue/docker-compose.yml mode change 100644 => 100755 apps/jellyfin-vue/metadata/description.md mode change 100644 => 100755 apps/jellyfin-vue/metadata/logo.jpg mode change 100644 => 100755 apps/jellyfin/config.json mode change 100644 => 100755 apps/jellyfin/data/config/.gitkeep mode change 100644 => 100755 apps/jellyfin/docker-compose.yml mode change 100644 => 100755 apps/jellyfin/metadata/description.md mode change 100644 => 100755 apps/jellyfin/metadata/logo.jpg mode change 100644 => 100755 apps/jellyseerr/config.json mode change 100644 => 100755 apps/jellyseerr/docker-compose.yml mode change 100644 => 100755 apps/jellyseerr/metadata/description.md mode change 100644 => 100755 apps/jellyseerr/metadata/logo.jpg mode change 100644 => 100755 apps/joplin/config.json mode change 100644 => 100755 apps/joplin/docker-compose.yml mode change 100644 => 100755 apps/joplin/metadata/description.md mode change 100644 => 100755 apps/joplin/metadata/logo.jpg mode change 100644 => 100755 apps/kanboard/config.json mode change 100644 => 100755 apps/kanboard/docker-compose.yml mode change 100644 => 100755 apps/kanboard/metadata/description.md mode change 100644 => 100755 apps/kanboard/metadata/logo.jpg mode change 100644 => 100755 apps/kapowarr/config.json mode change 100644 => 100755 apps/kapowarr/docker-compose.yml mode change 100644 => 100755 apps/kapowarr/metadata/description.md mode change 100644 => 100755 apps/kapowarr/metadata/logo.jpg mode change 100644 => 100755 apps/kasm-workspaces/config.json mode change 100644 => 100755 apps/kasm-workspaces/docker-compose.yml mode change 100644 => 100755 apps/kasm-workspaces/metadata/description.md mode change 100644 => 100755 apps/kasm-workspaces/metadata/logo.jpg mode change 100644 => 100755 apps/kavita/config.json mode change 100644 => 100755 apps/kavita/docker-compose.yml mode change 100644 => 100755 apps/kavita/metadata/description.md mode change 100644 => 100755 apps/kavita/metadata/logo.jpg mode change 100644 => 100755 apps/kimai/config.json mode change 100644 => 100755 apps/kimai/docker-compose.yml mode change 100644 => 100755 apps/kimai/metadata/description.md mode change 100644 => 100755 apps/kimai/metadata/logo.jpg mode change 100644 => 100755 apps/kiwix-serve/config.json mode change 100644 => 100755 apps/kiwix-serve/docker-compose.yml mode change 100644 => 100755 apps/kiwix-serve/metadata/description.md mode change 100644 => 100755 apps/kiwix-serve/metadata/logo.jpg mode change 100644 => 100755 apps/koillection/config.json mode change 100644 => 100755 apps/koillection/docker-compose.yml mode change 100644 => 100755 apps/koillection/metadata/description.md mode change 100644 => 100755 apps/koillection/metadata/logo.jpg mode change 100644 => 100755 apps/kometa/config.json mode change 100644 => 100755 apps/kometa/docker-compose.yml mode change 100644 => 100755 apps/kometa/metadata/description.md mode change 100644 => 100755 apps/kometa/metadata/logo.jpg mode change 100644 => 100755 apps/komga/config.json mode change 100644 => 100755 apps/komga/docker-compose.yml mode change 100644 => 100755 apps/komga/metadata/description.md mode change 100644 => 100755 apps/komga/metadata/logo.jpg mode change 100644 => 100755 apps/libreddit/config.json mode change 100644 => 100755 apps/libreddit/docker-compose.arm64.yml mode change 100644 => 100755 apps/libreddit/docker-compose.yml mode change 100644 => 100755 apps/libreddit/metadata/description.md mode change 100644 => 100755 apps/libreddit/metadata/logo.jpg mode change 100644 => 100755 apps/librephotos/config.json mode change 100644 => 100755 apps/librephotos/data/cache/.gitkeep mode change 100644 => 100755 apps/librephotos/data/logs/.gitkeep mode change 100644 => 100755 apps/librephotos/data/protected_media/.gitkeep mode change 100644 => 100755 apps/librephotos/data/proxy/nginx.conf mode change 100644 => 100755 apps/librephotos/data/scan/.gitkeep mode change 100644 => 100755 apps/librephotos/docker-compose.yml mode change 100644 => 100755 apps/librephotos/metadata/description.md mode change 100644 => 100755 apps/librephotos/metadata/logo.jpg mode change 100644 => 100755 apps/libretranslate/config.json mode change 100644 => 100755 apps/libretranslate/docker-compose.yml mode change 100644 => 100755 apps/libretranslate/metadata/description.md mode change 100644 => 100755 apps/libretranslate/metadata/logo.jpg mode change 100644 => 100755 apps/lidarr-deemix/config.json mode change 100644 => 100755 apps/lidarr-deemix/docker-compose.yml mode change 100644 => 100755 apps/lidarr-deemix/metadata/description.md mode change 100644 => 100755 apps/lidarr-deemix/metadata/logo.jpg mode change 100644 => 100755 apps/lidarr/config.json mode change 100644 => 100755 apps/lidarr/docker-compose.yml mode change 100644 => 100755 apps/lidarr/metadata/description.md mode change 100644 => 100755 apps/lidarr/metadata/logo.jpg mode change 100644 => 100755 apps/linkstack/config.json mode change 100644 => 100755 apps/linkstack/docker-compose.yml mode change 100644 => 100755 apps/linkstack/metadata/description.md mode change 100644 => 100755 apps/linkstack/metadata/logo.jpg mode change 100644 => 100755 apps/linkwarden/config.json mode change 100644 => 100755 apps/linkwarden/docker-compose.yml mode change 100644 => 100755 apps/linkwarden/metadata/description.md mode change 100644 => 100755 apps/linkwarden/metadata/logo.jpg mode change 100644 => 100755 apps/lobe-chat/config.json mode change 100644 => 100755 apps/lobe-chat/docker-compose.yml mode change 100644 => 100755 apps/lobe-chat/metadata/description.md mode change 100644 => 100755 apps/lobe-chat/metadata/logo.jpg mode change 100644 => 100755 apps/lodestone-core/config.json mode change 100644 => 100755 apps/lodestone-core/docker-compose.yml mode change 100644 => 100755 apps/lodestone-core/metadata/description.md mode change 100644 => 100755 apps/lodestone-core/metadata/logo.jpg mode change 100644 => 100755 apps/logto/config.json mode change 100644 => 100755 apps/logto/docker-compose.yml mode change 100644 => 100755 apps/logto/metadata/description.md mode change 100644 => 100755 apps/logto/metadata/logo.jpg mode change 100644 => 100755 apps/maintainerr/config.json mode change 100644 => 100755 apps/maintainerr/docker-compose.yml mode change 100644 => 100755 apps/maintainerr/metadata/description.md mode change 100644 => 100755 apps/maintainerr/metadata/logo.jpg mode change 100644 => 100755 apps/mastodon/config.json mode change 100644 => 100755 apps/mastodon/docker-compose.yml mode change 100644 => 100755 apps/mastodon/metadata/description.md mode change 100644 => 100755 apps/mastodon/metadata/logo.jpg mode change 100644 => 100755 apps/matrix-conduit/config.json mode change 100644 => 100755 apps/matrix-conduit/docker-compose.yml mode change 100644 => 100755 apps/matrix-conduit/metadata/description.md mode change 100644 => 100755 apps/matrix-conduit/metadata/logo.jpg mode change 100644 => 100755 apps/matrix-conduit/nginx/Dockerfile mode change 100644 => 100755 apps/matrix-conduit/nginx/matrix.conf.template mode change 100644 => 100755 apps/matter-server/config.json mode change 100644 => 100755 apps/matter-server/docker-compose.yml mode change 100644 => 100755 apps/matter-server/metadata/description.md mode change 100644 => 100755 apps/matter-server/metadata/logo.jpg mode change 100644 => 100755 apps/mdns-repeater/config.json mode change 100644 => 100755 apps/mdns-repeater/docker-compose.yml mode change 100644 => 100755 apps/mdns-repeater/metadata/description.md mode change 100644 => 100755 apps/mdns-repeater/metadata/logo.jpg mode change 100644 => 100755 apps/mealie-1/config.json mode change 100644 => 100755 apps/mealie-1/docker-compose.yml mode change 100644 => 100755 apps/mealie-1/metadata/description.md mode change 100644 => 100755 apps/mealie-1/metadata/logo.jpg mode change 100644 => 100755 apps/mealie/config.json mode change 100644 => 100755 apps/mealie/docker-compose.yml mode change 100644 => 100755 apps/mealie/metadata/description.md mode change 100644 => 100755 apps/mealie/metadata/logo.jpg mode change 100644 => 100755 apps/memos/config.json mode change 100644 => 100755 apps/memos/docker-compose.yml mode change 100644 => 100755 apps/memos/metadata/logo.jpg mode change 100644 => 100755 apps/metube/config.json mode change 100644 => 100755 apps/metube/docker-compose.yml mode change 100644 => 100755 apps/metube/metadata/description.md mode change 100644 => 100755 apps/metube/metadata/logo.jpg mode change 100644 => 100755 apps/mind/config.json mode change 100644 => 100755 apps/mind/docker-compose.yml mode change 100644 => 100755 apps/mind/metadata/description.md mode change 100644 => 100755 apps/mind/metadata/logo.jpg mode change 100644 => 100755 apps/minecraft-server/config.json mode change 100644 => 100755 apps/minecraft-server/docker-compose.yml mode change 100644 => 100755 apps/minecraft-server/metadata/description.md mode change 100644 => 100755 apps/minecraft-server/metadata/logo.jpg mode change 100644 => 100755 apps/minio/config.json mode change 100644 => 100755 apps/minio/docker-compose.yml mode change 100644 => 100755 apps/minio/metadata/description.md mode change 100644 => 100755 apps/minio/metadata/logo.jpg mode change 100644 => 100755 apps/mixpost-pro/config.json mode change 100644 => 100755 apps/mixpost-pro/docker-compose.yml mode change 100644 => 100755 apps/mixpost-pro/metadata/description.md mode change 100644 => 100755 apps/mixpost-pro/metadata/logo.jpg mode change 100644 => 100755 apps/mixpost/config.json mode change 100644 => 100755 apps/mixpost/data/nginx/nginx.conf mode change 100644 => 100755 apps/mixpost/docker-compose.yml mode change 100644 => 100755 apps/mixpost/metadata/description.md mode change 100644 => 100755 apps/mixpost/metadata/logo.jpg mode change 100644 => 100755 apps/moneroblock/config.json mode change 100644 => 100755 apps/moneroblock/docker-compose.yml mode change 100644 => 100755 apps/moneroblock/metadata/description.md mode change 100644 => 100755 apps/moneroblock/metadata/logo.jpg mode change 100644 => 100755 apps/monerod/config.json mode change 100644 => 100755 apps/monerod/docker-compose.yml mode change 100644 => 100755 apps/monerod/metadata/description.md mode change 100644 => 100755 apps/monerod/metadata/logo.jpg mode change 100644 => 100755 apps/mongo-express/config.json mode change 100644 => 100755 apps/mongo-express/docker-compose.yml mode change 100644 => 100755 apps/mongo-express/metadata/description.md mode change 100644 => 100755 apps/mongo-express/metadata/logo.jpg mode change 100644 => 100755 apps/mongo/config.json mode change 100644 => 100755 apps/mongo/docker-compose.yml mode change 100644 => 100755 apps/mongo/metadata/description.md mode change 100644 => 100755 apps/mongo/metadata/logo.jpg mode change 100644 => 100755 apps/monica/config.json mode change 100644 => 100755 apps/monica/docker-compose.yml mode change 100644 => 100755 apps/monica/metadata/description.md mode change 100644 => 100755 apps/monica/metadata/logo.jpg mode change 100644 => 100755 apps/moodist/config.json mode change 100644 => 100755 apps/moodist/docker-compose.yml mode change 100644 => 100755 apps/moodist/metadata/description.md mode change 100644 => 100755 apps/moodist/metadata/logo.jpg mode change 100644 => 100755 apps/movary/config.json mode change 100644 => 100755 apps/movary/docker-compose.yml mode change 100644 => 100755 apps/movary/metadata/description.md mode change 100644 => 100755 apps/movary/metadata/logo.jpg mode change 100644 => 100755 apps/mqttx/config.json mode change 100644 => 100755 apps/mqttx/docker-compose.yml mode change 100644 => 100755 apps/mqttx/metadata/description.md mode change 100644 => 100755 apps/mqttx/metadata/logo.jpg mode change 100644 => 100755 apps/mstream/config.json mode change 100644 => 100755 apps/mstream/docker-compose.yml mode change 100644 => 100755 apps/mstream/metadata/description.md mode change 100644 => 100755 apps/mstream/metadata/logo.jpg mode change 100644 => 100755 apps/mylar3/config.json mode change 100644 => 100755 apps/mylar3/docker-compose.yml mode change 100644 => 100755 apps/mylar3/metadata/description.md mode change 100644 => 100755 apps/mylar3/metadata/logo.jpg mode change 100644 => 100755 apps/n8n-1/config.json mode change 100644 => 100755 apps/n8n-1/data/init-data.sh mode change 100644 => 100755 apps/n8n-1/docker-compose.yml mode change 100644 => 100755 apps/n8n-1/metadata/description.md mode change 100644 => 100755 apps/n8n-1/metadata/logo.jpg mode change 100644 => 100755 apps/n8n/config.json mode change 100644 => 100755 apps/n8n/docker-compose.yml mode change 100644 => 100755 apps/n8n/metadata/description.md mode change 100644 => 100755 apps/n8n/metadata/logo.jpg mode change 100644 => 100755 apps/navidrome/config.json mode change 100644 => 100755 apps/navidrome/docker-compose.yml mode change 100644 => 100755 apps/navidrome/metadata/description.md mode change 100644 => 100755 apps/navidrome/metadata/logo.jpg mode change 100644 => 100755 apps/netbootxyz/config.json mode change 100644 => 100755 apps/netbootxyz/docker-compose.yml mode change 100644 => 100755 apps/netbootxyz/metadata/description.md mode change 100644 => 100755 apps/netbootxyz/metadata/logo.jpg mode change 100644 => 100755 apps/netdata/config.json mode change 100644 => 100755 apps/netdata/docker-compose.yml mode change 100644 => 100755 apps/netdata/metadata/description.md mode change 100644 => 100755 apps/netdata/metadata/logo.jpg mode change 100644 => 100755 apps/nextcloud/config.json mode change 100644 => 100755 apps/nextcloud/data/nextcloud/.gitkeep mode change 100644 => 100755 apps/nextcloud/data/redis/.gitkeep mode change 100644 => 100755 apps/nextcloud/docker-compose.yml mode change 100644 => 100755 apps/nextcloud/metadata/description.md mode change 100644 => 100755 apps/nextcloud/metadata/logo.jpg mode change 100644 => 100755 apps/nextgba/config.json mode change 100644 => 100755 apps/nextgba/docker-compose.yml mode change 100644 => 100755 apps/nextgba/metadata/description.md mode change 100644 => 100755 apps/nextgba/metadata/logo.jpg mode change 100644 => 100755 apps/nginx/config.json mode change 100644 => 100755 apps/nginx/docker-compose.yml mode change 100644 => 100755 apps/nginx/metadata/description.md mode change 100644 => 100755 apps/nginx/metadata/logo.jpg mode change 100644 => 100755 apps/nitter/config.json mode change 100644 => 100755 apps/nitter/data/nitter.conf mode change 100644 => 100755 apps/nitter/docker-compose.yml mode change 100644 => 100755 apps/nitter/metadata/description.md mode change 100644 => 100755 apps/nitter/metadata/logo.jpg mode change 100644 => 100755 apps/nocodb/config.json mode change 100644 => 100755 apps/nocodb/docker-compose.yml mode change 100644 => 100755 apps/nocodb/metadata/description.md mode change 100644 => 100755 apps/nocodb/metadata/logo.jpg mode change 100644 => 100755 apps/nodered/config.json mode change 100644 => 100755 apps/nodered/data/settings.js mode change 100644 => 100755 apps/nodered/docker-compose.yml mode change 100644 => 100755 apps/nodered/metadata/description.md mode change 100644 => 100755 apps/nodered/metadata/logo.jpg mode change 100644 => 100755 apps/notemark/config.json mode change 100644 => 100755 apps/notemark/data/proxy/nginx.conf mode change 100644 => 100755 apps/notemark/docker-compose.yml mode change 100644 => 100755 apps/notemark/metadata/description.md mode change 100644 => 100755 apps/notemark/metadata/logo.jpg mode change 100644 => 100755 apps/ntfy/config.json mode change 100644 => 100755 apps/ntfy/docker-compose.yml mode change 100644 => 100755 apps/ntfy/metadata/description.md mode change 100644 => 100755 apps/ntfy/metadata/logo.jpg mode change 100644 => 100755 apps/obsidian-livesync/config.json mode change 100644 => 100755 apps/obsidian-livesync/data/local.ini mode change 100644 => 100755 apps/obsidian-livesync/docker-compose.yml mode change 100644 => 100755 apps/obsidian-livesync/metadata/description.md mode change 100644 => 100755 apps/obsidian-livesync/metadata/logo.jpg mode change 100644 => 100755 apps/octobot/config.json mode change 100644 => 100755 apps/octobot/docker-compose.yml mode change 100644 => 100755 apps/octobot/metadata/description.md mode change 100644 => 100755 apps/octobot/metadata/logo.jpg mode change 100644 => 100755 apps/odoo/config.json mode change 100644 => 100755 apps/odoo/docker-compose.yml mode change 100644 => 100755 apps/odoo/metadata/description.md mode change 100644 => 100755 apps/odoo/metadata/logo.jpg mode change 100644 => 100755 apps/olivetin/config.json mode change 100644 => 100755 apps/olivetin/data/config.yaml mode change 100644 => 100755 apps/olivetin/docker-compose.yml mode change 100644 => 100755 apps/olivetin/metadata/description.md mode change 100644 => 100755 apps/olivetin/metadata/logo.jpg mode change 100644 => 100755 apps/ollama-amd/metadata/logo.jpg mode change 100644 => 100755 apps/ollama-cpu/metadata/logo.jpg mode change 100644 => 100755 apps/ollama-nvidia/metadata/logo.jpg mode change 100644 => 100755 apps/onedev/config.json mode change 100644 => 100755 apps/onedev/docker-compose.yml mode change 100644 => 100755 apps/onedev/metadata/description.md mode change 100644 => 100755 apps/onedev/metadata/logo.jpg mode change 100644 => 100755 apps/open-webui/config.json mode change 100644 => 100755 apps/open-webui/docker-compose.json mode change 100644 => 100755 apps/open-webui/docker-compose.yml mode change 100644 => 100755 apps/open-webui/metadata/description.md mode change 100644 => 100755 apps/open-webui/metadata/logo.jpg mode change 100644 => 100755 apps/openbooks/config.json mode change 100644 => 100755 apps/openbooks/docker-compose.yml mode change 100644 => 100755 apps/openbooks/metadata/description.md mode change 100644 => 100755 apps/openbooks/metadata/logo.jpg mode change 100644 => 100755 apps/outline/config.json mode change 100644 => 100755 apps/outline/data/nginx/default.conf mode change 100644 => 100755 apps/outline/data/oidc-config.json.template mode change 100644 => 100755 apps/outline/docker-compose.yml mode change 100644 => 100755 apps/outline/metadata/description.md mode change 100644 => 100755 apps/outline/metadata/logo.jpg mode change 100644 => 100755 apps/overseerr/config.json mode change 100644 => 100755 apps/overseerr/docker-compose.yml mode change 100644 => 100755 apps/overseerr/metadata/description.md mode change 100644 => 100755 apps/overseerr/metadata/logo.jpg mode change 100644 => 100755 apps/owncast/metadata/logo.jpg mode change 100644 => 100755 apps/owncloud/config.json mode change 100644 => 100755 apps/owncloud/docker-compose.yml mode change 100644 => 100755 apps/owncloud/metadata/description.md mode change 100644 => 100755 apps/owncloud/metadata/logo.jpg mode change 100644 => 100755 apps/pairdrop/config.json mode change 100644 => 100755 apps/pairdrop/docker-compose.yml mode change 100644 => 100755 apps/pairdrop/metadata/description.md mode change 100644 => 100755 apps/pairdrop/metadata/logo.jpg mode change 100644 => 100755 apps/paperless-ngx/config.json mode change 100644 => 100755 apps/paperless-ngx/docker-compose.yml mode change 100644 => 100755 apps/paperless-ngx/metadata/description.md mode change 100644 => 100755 apps/paperless-ngx/metadata/logo.jpg mode change 100644 => 100755 apps/penpot/config.json mode change 100644 => 100755 apps/penpot/docker-compose.yml mode change 100644 => 100755 apps/penpot/metadata/description.md mode change 100644 => 100755 apps/penpot/metadata/logo.jpg mode change 100644 => 100755 apps/peppermint/config.json mode change 100644 => 100755 apps/peppermint/docker-compose.yml mode change 100644 => 100755 apps/peppermint/metadata/description.md mode change 100644 => 100755 apps/peppermint/metadata/logo.jpg mode change 100644 => 100755 apps/photoprism/config.json mode change 100644 => 100755 apps/photoprism/docker-compose.yml mode change 100644 => 100755 apps/photoprism/metadata/description.md mode change 100644 => 100755 apps/photoprism/metadata/logo.jpg mode change 100644 => 100755 apps/pihole/config.json mode change 100644 => 100755 apps/pihole/data/unbound/a-records.conf mode change 100644 => 100755 apps/pihole/data/unbound/root.hints mode change 100644 => 100755 apps/pihole/data/unbound/root.key mode change 100644 => 100755 apps/pihole/data/unbound/unbound.conf mode change 100644 => 100755 apps/pihole/docker-compose.yml mode change 100644 => 100755 apps/pihole/metadata/description.md mode change 100644 => 100755 apps/pihole/metadata/logo.jpg mode change 100644 => 100755 apps/pinchflat/config.json mode change 100644 => 100755 apps/pinchflat/docker-compose.yml mode change 100644 => 100755 apps/pinchflat/metadata/description.md mode change 100644 => 100755 apps/pinchflat/metadata/logo.jpg mode change 100644 => 100755 apps/pingvin-share/config.json mode change 100644 => 100755 apps/pingvin-share/docker-compose.yml mode change 100644 => 100755 apps/pingvin-share/metadata/description.md mode change 100644 => 100755 apps/pingvin-share/metadata/logo.jpg mode change 100644 => 100755 apps/planka/config.json mode change 100644 => 100755 apps/planka/docker-compose.yml mode change 100644 => 100755 apps/planka/metadata/description.md mode change 100644 => 100755 apps/planka/metadata/logo.jpg mode change 100644 => 100755 apps/planning-poker/config.json mode change 100644 => 100755 apps/planning-poker/docker-compose.yml mode change 100644 => 100755 apps/planning-poker/metadata/description.md mode change 100644 => 100755 apps/planning-poker/metadata/logo.jpg mode change 100644 => 100755 apps/plausible/config.json mode change 100644 => 100755 apps/plausible/data/clickhouse/clickhouse-config.xml mode change 100644 => 100755 apps/plausible/data/clickhouse/clickhouse-user-config.xml mode change 100644 => 100755 apps/plausible/docker-compose.yml mode change 100644 => 100755 apps/plausible/metadata/description.md mode change 100644 => 100755 apps/plausible/metadata/logo.jpg mode change 100644 => 100755 apps/plex/config.json mode change 100644 => 100755 apps/plex/docker-compose.yml mode change 100644 => 100755 apps/plex/metadata/description.md mode change 100644 => 100755 apps/plex/metadata/logo.jpg mode change 100644 => 100755 apps/podfetch/config.json mode change 100644 => 100755 apps/podfetch/docker-compose.yml mode change 100644 => 100755 apps/podfetch/metadata/description.md mode change 100644 => 100755 apps/podfetch/metadata/logo.jpg mode change 100644 => 100755 apps/portainer/config.json mode change 100644 => 100755 apps/portainer/docker-compose.yml mode change 100644 => 100755 apps/portainer/metadata/description.md mode change 100644 => 100755 apps/portainer/metadata/logo.jpg mode change 100644 => 100755 apps/postfix-relay/config.json mode change 100644 => 100755 apps/postfix-relay/docker-compose.yml mode change 100644 => 100755 apps/postfix-relay/metadata/description.md mode change 100644 => 100755 apps/postfix-relay/metadata/logo.jpg mode change 100644 => 100755 apps/privatebin/config.json mode change 100644 => 100755 apps/privatebin/docker-compose.yml mode change 100644 => 100755 apps/privatebin/metadata/description.md mode change 100644 => 100755 apps/privatebin/metadata/logo.jpg mode change 100644 => 100755 apps/prowlarr/config.json mode change 100644 => 100755 apps/prowlarr/docker-compose.yml mode change 100644 => 100755 apps/prowlarr/metadata/description.md mode change 100644 => 100755 apps/prowlarr/metadata/logo.jpg mode change 100644 => 100755 apps/proxitok/config.json mode change 100644 => 100755 apps/proxitok/docker-compose.yml mode change 100644 => 100755 apps/proxitok/metadata/description.md mode change 100644 => 100755 apps/proxitok/metadata/logo.jpg mode change 100644 => 100755 apps/qbittorrent/config.json mode change 100644 => 100755 apps/qbittorrent/data/config/.gitkeep mode change 100644 => 100755 apps/qbittorrent/docker-compose.yml mode change 100644 => 100755 apps/qbittorrent/metadata/description.md mode change 100644 => 100755 apps/qbittorrent/metadata/logo.jpg mode change 100644 => 100755 apps/qdirstat/config.json mode change 100644 => 100755 apps/qdirstat/docker-compose.yml mode change 100644 => 100755 apps/qdirstat/metadata/description.md mode change 100644 => 100755 apps/qdirstat/metadata/logo.jpg mode change 100644 => 100755 apps/radarr/config.json mode change 100644 => 100755 apps/radarr/docker-compose.yml mode change 100644 => 100755 apps/radarr/metadata/description.md mode change 100644 => 100755 apps/radarr/metadata/logo.jpg mode change 100644 => 100755 apps/rallly/config.json mode change 100644 => 100755 apps/rallly/docker-compose.yml mode change 100644 => 100755 apps/rallly/metadata/description.md mode change 100644 => 100755 apps/rallly/metadata/logo.jpg mode change 100644 => 100755 apps/readarr/config.json mode change 100644 => 100755 apps/readarr/docker-compose.yml mode change 100644 => 100755 apps/readarr/metadata/description.md mode change 100644 => 100755 apps/readarr/metadata/logo.jpg mode change 100644 => 100755 apps/recyclarr/config.json mode change 100644 => 100755 apps/recyclarr/docker-compose.yml mode change 100644 => 100755 apps/recyclarr/metadata/description.md mode change 100644 => 100755 apps/recyclarr/metadata/logo.jpg mode change 100644 => 100755 apps/resilio-sync/config.json mode change 100644 => 100755 apps/resilio-sync/docker-compose.yml mode change 100644 => 100755 apps/resilio-sync/metadata/description.md mode change 100644 => 100755 apps/resilio-sync/metadata/logo.jpg mode change 100644 => 100755 apps/revolt/config.json mode change 100644 => 100755 apps/revolt/data/CaddyFiles/Caddyfile mode change 100644 => 100755 apps/revolt/docker-compose.yml mode change 100644 => 100755 apps/revolt/metadata/description.md mode change 100644 => 100755 apps/revolt/metadata/logo.jpg mode change 100644 => 100755 apps/romm/config.json mode change 100644 => 100755 apps/romm/data/config.yml mode change 100644 => 100755 apps/romm/docker-compose.yml mode change 100644 => 100755 apps/romm/metadata/description.md mode change 100644 => 100755 apps/romm/metadata/logo.jpg mode change 100644 => 100755 apps/rss/config.json mode change 100644 => 100755 apps/rss/data/storage/feeds.txt mode change 100644 => 100755 apps/rss/docker-compose.yml mode change 100644 => 100755 apps/rss/metadata/description.md mode change 100644 => 100755 apps/rss/metadata/logo.jpg mode change 100644 => 100755 apps/rsshub/config.json mode change 100644 => 100755 apps/rsshub/data/app.env mode change 100644 => 100755 apps/rsshub/docker-compose.yml mode change 100644 => 100755 apps/rsshub/metadata/description.md mode change 100644 => 100755 apps/rsshub/metadata/logo.jpg mode change 100644 => 100755 apps/ryot/config.json mode change 100644 => 100755 apps/ryot/docker-compose.yml mode change 100644 => 100755 apps/ryot/metadata/description.md mode change 100644 => 100755 apps/ryot/metadata/logo.jpg mode change 100644 => 100755 apps/sabnzbd/config.json mode change 100644 => 100755 apps/sabnzbd/docker-compose.yml mode change 100644 => 100755 apps/sabnzbd/metadata/description.md mode change 100644 => 100755 apps/sabnzbd/metadata/logo.jpg mode change 100644 => 100755 apps/schema.json mode change 100644 => 100755 apps/scrypted/config.json mode change 100644 => 100755 apps/scrypted/docker-compose.yml mode change 100644 => 100755 apps/scrypted/metadata/description.md mode change 100644 => 100755 apps/scrypted/metadata/logo.jpg mode change 100644 => 100755 apps/searxng/config.json mode change 100644 => 100755 apps/searxng/data/settings.yml mode change 100644 => 100755 apps/searxng/docker-compose.yml mode change 100644 => 100755 apps/searxng/metadata/description.md mode change 100644 => 100755 apps/searxng/metadata/logo.jpg mode change 100644 => 100755 apps/seedsync/config.json mode change 100644 => 100755 apps/seedsync/docker-compose.yml mode change 100644 => 100755 apps/seedsync/metadata/description.md mode change 100644 => 100755 apps/seedsync/metadata/logo.jpg mode change 100644 => 100755 apps/semaphore/config.json mode change 100644 => 100755 apps/semaphore/docker-compose.yml mode change 100644 => 100755 apps/semaphore/metadata/description.md mode change 100644 => 100755 apps/semaphore/metadata/logo.jpg mode change 100644 => 100755 apps/send/config.json mode change 100644 => 100755 apps/send/docker-compose.yml mode change 100644 => 100755 apps/send/metadata/description.md mode change 100644 => 100755 apps/send/metadata/logo.jpg mode change 100644 => 100755 apps/serge/config.json mode change 100644 => 100755 apps/serge/docker-compose.yml mode change 100644 => 100755 apps/serge/metadata/description.md mode change 100644 => 100755 apps/serge/metadata/logo.jpg mode change 100644 => 100755 apps/sftpgo/config.json mode change 100644 => 100755 apps/sftpgo/docker-compose.yml mode change 100644 => 100755 apps/sftpgo/metadata/description.md mode change 100644 => 100755 apps/sftpgo/metadata/logo.jpg mode change 100644 => 100755 apps/shlink/config.json mode change 100644 => 100755 apps/shlink/docker-compose.yml mode change 100644 => 100755 apps/shlink/metadata/description.md mode change 100644 => 100755 apps/shlink/metadata/logo.jpg mode change 100644 => 100755 apps/silverbullet/config.json mode change 100644 => 100755 apps/silverbullet/docker-compose.yml mode change 100644 => 100755 apps/silverbullet/metadata/description.md mode change 100644 => 100755 apps/silverbullet/metadata/logo.jpg mode change 100644 => 100755 apps/simplex-smp/config.json mode change 100644 => 100755 apps/simplex-smp/docker-compose.yml mode change 100644 => 100755 apps/simplex-smp/metadata/description.md mode change 100644 => 100755 apps/simplex-smp/metadata/logo.jpg mode change 100644 => 100755 apps/siyuan/config.json mode change 100644 => 100755 apps/siyuan/docker-compose.yml mode change 100644 => 100755 apps/siyuan/metadata/description.md mode change 100644 => 100755 apps/siyuan/metadata/logo.jpg mode change 100644 => 100755 apps/slskd/config.json mode change 100644 => 100755 apps/slskd/data/slskd.yml.template mode change 100644 => 100755 apps/slskd/docker-compose.yml mode change 100644 => 100755 apps/slskd/metadata/description.md mode change 100644 => 100755 apps/slskd/metadata/logo.jpg mode change 100644 => 100755 apps/sonarr/config.json mode change 100644 => 100755 apps/sonarr/docker-compose.yml mode change 100644 => 100755 apps/sonarr/metadata/description.md mode change 100644 => 100755 apps/sonarr/metadata/logo.jpg mode change 100644 => 100755 apps/spacedrive/metadata/logo.jpg mode change 100644 => 100755 apps/speedtest-tracker/config.json mode change 100644 => 100755 apps/speedtest-tracker/docker-compose.yml mode change 100644 => 100755 apps/speedtest-tracker/metadata/description.md mode change 100644 => 100755 apps/speedtest-tracker/metadata/logo.jpg mode change 100644 => 100755 apps/spoolman/config.json mode change 100644 => 100755 apps/spoolman/docker-compose.yml mode change 100644 => 100755 apps/spoolman/metadata/description.md mode change 100644 => 100755 apps/spoolman/metadata/logo.jpg mode change 100644 => 100755 apps/sshwifty/config.json mode change 100644 => 100755 apps/sshwifty/docker-compose.yml mode change 100644 => 100755 apps/sshwifty/metadata/description.md mode change 100644 => 100755 apps/sshwifty/metadata/logo.jpg mode change 100644 => 100755 apps/stalwart-mail/config.json mode change 100644 => 100755 apps/stalwart-mail/docker-compose.yml mode change 100644 => 100755 apps/stalwart-mail/metadata/description.md mode change 100644 => 100755 apps/stalwart-mail/metadata/logo.jpg mode change 100644 => 100755 apps/stirling-pdf/config.json mode change 100644 => 100755 apps/stirling-pdf/docker-compose.yml mode change 100644 => 100755 apps/stirling-pdf/metadata/description.md mode change 100644 => 100755 apps/stirling-pdf/metadata/logo.jpg mode change 100644 => 100755 apps/suwayomi/config.json mode change 100644 => 100755 apps/suwayomi/docker-compose.yml mode change 100644 => 100755 apps/suwayomi/metadata/description.md mode change 100644 => 100755 apps/suwayomi/metadata/logo.jpg mode change 100644 => 100755 apps/syncthing/config.json mode change 100644 => 100755 apps/syncthing/data/.gitkeep mode change 100644 => 100755 apps/syncthing/docker-compose.yml mode change 100644 => 100755 apps/syncthing/metadata/description.md mode change 100644 => 100755 apps/syncthing/metadata/logo.jpg mode change 100644 => 100755 apps/tailscale/config.json mode change 100644 => 100755 apps/tailscale/docker-compose.yml mode change 100644 => 100755 apps/tailscale/metadata/description.md mode change 100644 => 100755 apps/tailscale/metadata/logo.jpg mode change 100644 => 100755 apps/tandoor/config.json mode change 100644 => 100755 apps/tandoor/docker-compose.yml mode change 100644 => 100755 apps/tandoor/metadata/description.md mode change 100644 => 100755 apps/tandoor/metadata/logo.jpg mode change 100644 => 100755 apps/tasks-md/config.json mode change 100644 => 100755 apps/tasks-md/docker-compose.yml mode change 100644 => 100755 apps/tasks-md/metadata/description.md mode change 100644 => 100755 apps/tasks-md/metadata/logo.jpg mode change 100644 => 100755 apps/tautulli/config.json mode change 100644 => 100755 apps/tautulli/docker-compose.yml mode change 100644 => 100755 apps/tautulli/metadata/description.md mode change 100644 => 100755 apps/tautulli/metadata/logo.jpg mode change 100644 => 100755 apps/teddit/config.json mode change 100644 => 100755 apps/teddit/docker-compose.yml mode change 100644 => 100755 apps/teddit/metadata/description.md mode change 100644 => 100755 apps/teddit/metadata/logo.jpg mode change 100644 => 100755 apps/tooljet/config.json mode change 100644 => 100755 apps/tooljet/docker-compose.yml mode change 100644 => 100755 apps/tooljet/metadata/description.md mode change 100644 => 100755 apps/tooljet/metadata/logo.jpg mode change 100644 => 100755 apps/traefik-certs-dumper/config.json mode change 100644 => 100755 apps/traefik-certs-dumper/docker-compose.yml mode change 100644 => 100755 apps/traefik-certs-dumper/metadata/description.md mode change 100644 => 100755 apps/traefik-certs-dumper/metadata/logo.jpg mode change 100644 => 100755 apps/transmission-vpn/config.json mode change 100644 => 100755 apps/transmission-vpn/data/config/.gitkeep mode change 100644 => 100755 apps/transmission-vpn/docker-compose.yml mode change 100644 => 100755 apps/transmission-vpn/metadata/description.md mode change 100644 => 100755 apps/transmission-vpn/metadata/logo.jpg mode change 100644 => 100755 apps/transmission/config.json mode change 100644 => 100755 apps/transmission/data/config/.gitkeep mode change 100644 => 100755 apps/transmission/docker-compose.yml mode change 100644 => 100755 apps/transmission/metadata/description.md mode change 100644 => 100755 apps/transmission/metadata/logo.jpg mode change 100644 => 100755 apps/trilium/config.json mode change 100644 => 100755 apps/trilium/docker-compose.yml mode change 100644 => 100755 apps/trilium/metadata/description.md mode change 100644 => 100755 apps/trilium/metadata/logo.jpg mode change 100644 => 100755 apps/tubearchivist/config.json mode change 100644 => 100755 apps/tubearchivist/docker-compose.yml mode change 100644 => 100755 apps/tubearchivist/metadata/description.md mode change 100644 => 100755 apps/tubearchivist/metadata/logo.jpg mode change 100644 => 100755 apps/umami/config.json mode change 100644 => 100755 apps/umami/docker-compose.yml mode change 100644 => 100755 apps/umami/metadata/description.md mode change 100644 => 100755 apps/umami/metadata/logo.jpg mode change 100644 => 100755 apps/unmanic/config.json mode change 100644 => 100755 apps/unmanic/docker-compose.yml mode change 100644 => 100755 apps/unmanic/metadata/description.md mode change 100644 => 100755 apps/unmanic/metadata/logo.jpg mode change 100644 => 100755 apps/uptime-kuma/config.json mode change 100644 => 100755 apps/uptime-kuma/docker-compose.yml mode change 100644 => 100755 apps/uptime-kuma/metadata/description.md mode change 100644 => 100755 apps/uptime-kuma/metadata/logo.jpg mode change 100644 => 100755 apps/vaultwarden/config.json mode change 100644 => 100755 apps/vaultwarden/docker-compose.yml mode change 100644 => 100755 apps/vaultwarden/metadata/description.md mode change 100644 => 100755 apps/vaultwarden/metadata/logo.jpg mode change 100644 => 100755 apps/viewtube/config.json mode change 100644 => 100755 apps/viewtube/docker-compose.arm64.yml mode change 100644 => 100755 apps/viewtube/docker-compose.yml mode change 100644 => 100755 apps/viewtube/metadata/description.md mode change 100644 => 100755 apps/viewtube/metadata/logo.jpg mode change 100644 => 100755 apps/vikunja/config.json mode change 100644 => 100755 apps/vikunja/data/proxy/nginx.conf mode change 100644 => 100755 apps/vikunja/docker-compose.yml mode change 100644 => 100755 apps/vikunja/metadata/description.md mode change 100644 => 100755 apps/vikunja/metadata/logo.jpg mode change 100644 => 100755 apps/wallos/config.json mode change 100644 => 100755 apps/wallos/docker-compose.yml mode change 100644 => 100755 apps/wallos/metadata/description.md mode change 100644 => 100755 apps/wallos/metadata/logo.jpg mode change 100644 => 100755 apps/wekan/config.json mode change 100644 => 100755 apps/wekan/data/wekan/attachments/.gitkeep mode change 100644 => 100755 apps/wekan/docker-compose.yml mode change 100644 => 100755 apps/wekan/metadata/description.md mode change 100644 => 100755 apps/wekan/metadata/logo.jpg mode change 100644 => 100755 apps/wg-easy/config.json mode change 100644 => 100755 apps/wg-easy/data/.gitkeep mode change 100644 => 100755 apps/wg-easy/docker-compose.yml mode change 100644 => 100755 apps/wg-easy/metadata/description.md mode change 100644 => 100755 apps/wg-easy/metadata/logo.jpg mode change 100644 => 100755 apps/whisparr/config.json mode change 100644 => 100755 apps/whisparr/docker-compose.yml mode change 100644 => 100755 apps/whisparr/metadata/description.md mode change 100644 => 100755 apps/whisparr/metadata/logo.jpg mode change 100644 => 100755 apps/whoogle/config.json mode change 100644 => 100755 apps/whoogle/docker-compose.yml mode change 100644 => 100755 apps/whoogle/metadata/description.md mode change 100644 => 100755 apps/whoogle/metadata/logo.jpg mode change 100644 => 100755 apps/wikijs/config.json mode change 100644 => 100755 apps/wikijs/docker-compose.yml mode change 100644 => 100755 apps/wikijs/metadata/description.md mode change 100644 => 100755 apps/wikijs/metadata/logo.jpg mode change 100644 => 100755 apps/windows/config.json mode change 100644 => 100755 apps/windows/docker-compose.yml mode change 100644 => 100755 apps/windows/metadata/description.md mode change 100644 => 100755 apps/windows/metadata/logo.jpg mode change 100644 => 100755 apps/wizarr/config.json mode change 100644 => 100755 apps/wizarr/docker-compose.yml mode change 100644 => 100755 apps/wizarr/metadata/description.md mode change 100644 => 100755 apps/wizarr/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress/config.json mode change 100644 => 100755 apps/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_aidanras/config.json mode change 100644 => 100755 apps/wordpress_aidanras/docker-compose.yml mode change 100644 => 100755 apps/wordpress_aidanras/metadata/description.md mode change 100644 => 100755 apps/wordpress_aidanras/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_aidanras/wordpress/config.json mode change 100644 => 100755 apps/wordpress_aidanras/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_aidanras/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_aidanras/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_aweggly/config.json mode change 100644 => 100755 apps/wordpress_aweggly/docker-compose.yml mode change 100644 => 100755 apps/wordpress_aweggly/metadata/description.md mode change 100644 => 100755 apps/wordpress_aweggly/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_aweggly/wordpress/config.json mode change 100644 => 100755 apps/wordpress_aweggly/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_aweggly/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_aweggly/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/config.json mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/docker-compose.yml mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/metadata/description.md mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/wordpress/config.json mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_corbieplays/config.json mode change 100644 => 100755 apps/wordpress_corbieplays/docker-compose.yml mode change 100644 => 100755 apps/wordpress_corbieplays/metadata/description.md mode change 100644 => 100755 apps/wordpress_corbieplays/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress/config.json mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/config.json mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_cuddleconfessions/config.json mode change 100644 => 100755 apps/wordpress_cuddleconfessions/docker-compose.yml mode change 100644 => 100755 apps/wordpress_cuddleconfessions/metadata/description.md mode change 100644 => 100755 apps/wordpress_cuddleconfessions/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_cuddleconfessions/wordpress/config.json mode change 100644 => 100755 apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_cuddleconfessions/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_desirearts/config.json mode change 100644 => 100755 apps/wordpress_desirearts/docker-compose.yml mode change 100644 => 100755 apps/wordpress_desirearts/metadata/description.md mode change 100644 => 100755 apps/wordpress_desirearts/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_desirearts/wordpress/config.json mode change 100644 => 100755 apps/wordpress_desirearts/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_desirearts/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_desirearts/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_elderseth/config.json mode change 100644 => 100755 apps/wordpress_elderseth/docker-compose.yml mode change 100644 => 100755 apps/wordpress_elderseth/metadata/description.md mode change 100644 => 100755 apps/wordpress_elderseth/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_elderseth/wordpress/config.json mode change 100644 => 100755 apps/wordpress_elderseth/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_elderseth/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_elderseth/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/config.json mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/metadata/description.md mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_hometownheartstrings/config.json mode change 100644 => 100755 apps/wordpress_hometownheartstrings/docker-compose.yml mode change 100644 => 100755 apps/wordpress_hometownheartstrings/metadata/description.md mode change 100644 => 100755 apps/wordpress_hometownheartstrings/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_hometownheartstrings/wordpress/config.json mode change 100644 => 100755 apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_hometownheartstrings/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_kiracuts/config.json mode change 100644 => 100755 apps/wordpress_kiracuts/docker-compose.yml mode change 100644 => 100755 apps/wordpress_kiracuts/metadata/description.md mode change 100644 => 100755 apps/wordpress_kiracuts/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_kiracuts/wordpress/config.json mode change 100644 => 100755 apps/wordpress_kiracuts/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_kiracuts/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_kiracuts/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_lickingvape/config.json mode change 100644 => 100755 apps/wordpress_lickingvape/docker-compose.yml mode change 100644 => 100755 apps/wordpress_lickingvape/metadata/description.md mode change 100644 => 100755 apps/wordpress_lickingvape/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_lickingvape/wordpress/config.json mode change 100644 => 100755 apps/wordpress_lickingvape/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_lickingvape/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_lickingvape/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_marleebean/config.json mode change 100644 => 100755 apps/wordpress_marleebean/docker-compose.yml mode change 100644 => 100755 apps/wordpress_marleebean/metadata/description.md mode change 100644 => 100755 apps/wordpress_marleebean/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_marleebean/wordpress/config.json mode change 100644 => 100755 apps/wordpress_marleebean/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_marleebean/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_marleebean/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_rasies/config.json mode change 100644 => 100755 apps/wordpress_rasies/docker-compose.yml mode change 100644 => 100755 apps/wordpress_rasies/metadata/description.md mode change 100644 => 100755 apps/wordpress_rasies/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_rasies/wordpress/config.json mode change 100644 => 100755 apps/wordpress_rasies/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_rasies/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_rasies/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_stepparentpath/config.json mode change 100644 => 100755 apps/wordpress_stepparentpath/docker-compose.yml mode change 100644 => 100755 apps/wordpress_stepparentpath/metadata/description.md mode change 100644 => 100755 apps/wordpress_stepparentpath/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_stepparentpath/wordpress/config.json mode change 100644 => 100755 apps/wordpress_stepparentpath/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_stepparentpath/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_visionarytalentkids/config.json mode change 100644 => 100755 apps/wordpress_visionarytalentkids/docker-compose.yml mode change 100644 => 100755 apps/wordpress_visionarytalentkids/metadata/description.md mode change 100644 => 100755 apps/wordpress_visionarytalentkids/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_visionarytalentkids/wordpress/config.json mode change 100644 => 100755 apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_visionarytalentkids/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_yoginilist/config.json mode change 100644 => 100755 apps/wordpress_yoginilist/docker-compose.yml mode change 100644 => 100755 apps/wordpress_yoginilist/metadata/description.md mode change 100644 => 100755 apps/wordpress_yoginilist/metadata/logo.jpg mode change 100644 => 100755 apps/wordpress_yoginilist/wordpress/config.json mode change 100644 => 100755 apps/wordpress_yoginilist/wordpress/docker-compose.yml mode change 100644 => 100755 apps/wordpress_yoginilist/wordpress/metadata/description.md mode change 100644 => 100755 apps/wordpress_yoginilist/wordpress/metadata/logo.jpg mode change 100644 => 100755 apps/your-spotify/config.json mode change 100644 => 100755 apps/your-spotify/docker-compose.yml mode change 100644 => 100755 apps/your-spotify/metadata/description.md mode change 100644 => 100755 apps/your-spotify/metadata/logo.jpg mode change 100644 => 100755 apps/zerotier/config.json mode change 100644 => 100755 apps/zerotier/docker-compose.yml mode change 100644 => 100755 apps/zerotier/metadata/description.md mode change 100644 => 100755 apps/zerotier/metadata/logo.jpg mode change 100644 => 100755 apps/zigbee2mqtt/data/.gitkeep mode change 100644 => 100755 apps/zigbee2mqtt/docker-compose.yml mode change 100644 => 100755 apps/zigbee2mqtt/metadata/description.md mode change 100644 => 100755 apps/zigbee2mqtt/metadata/logo.jpg mode change 100644 => 100755 apps/zipline/config.json mode change 100644 => 100755 apps/zipline/docker-compose.yml mode change 100644 => 100755 apps/zipline/metadata/description.md mode change 100644 => 100755 apps/zipline/metadata/logo.jpg diff --git a/apps/2fauth/config.json b/apps/2fauth/config.json old mode 100644 new mode 100755 diff --git a/apps/2fauth/docker-compose.json b/apps/2fauth/docker-compose.json old mode 100644 new mode 100755 diff --git a/apps/2fauth/docker-compose.yml b/apps/2fauth/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/2fauth/metadata/description.md b/apps/2fauth/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/2fauth/metadata/logo.jpg b/apps/2fauth/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/__tests__/app-config.ts b/apps/__tests__/app-config.ts old mode 100644 new mode 100755 diff --git a/apps/__tests__/apps.test.ts b/apps/__tests__/apps.test.ts old mode 100644 new mode 100755 diff --git a/apps/activepieces/config.json b/apps/activepieces/config.json old mode 100644 new mode 100755 diff --git a/apps/activepieces/docker-compose.yml b/apps/activepieces/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/activepieces/metadata/description.md b/apps/activepieces/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/activepieces/metadata/logo.jpg b/apps/activepieces/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/actual-budget/config.json b/apps/actual-budget/config.json old mode 100644 new mode 100755 diff --git a/apps/actual-budget/docker-compose.yml b/apps/actual-budget/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/actual-budget/metadata/description.md b/apps/actual-budget/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/actual-budget/metadata/logo.jpg b/apps/actual-budget/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/adguard/config.json b/apps/adguard/config.json old mode 100644 new mode 100755 diff --git a/apps/adguard/data/conf/AdGuardHome.yaml b/apps/adguard/data/conf/AdGuardHome.yaml old mode 100644 new mode 100755 diff --git a/apps/adguard/docker-compose.yml b/apps/adguard/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/adguard/metadata/description.md b/apps/adguard/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/adguard/metadata/logo.jpg b/apps/adguard/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/affine/config.json b/apps/affine/config.json old mode 100644 new mode 100755 diff --git a/apps/affine/docker-compose.yml b/apps/affine/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/affine/metadata/logo.jpg b/apps/affine/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/anse/metadata/logo.jpg b/apps/anse/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/archivebox/metadata/logo.jpg b/apps/archivebox/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/atuin/metadata/logo.jpg b/apps/atuin/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/audiobookshelf/config.json b/apps/audiobookshelf/config.json old mode 100644 new mode 100755 diff --git a/apps/audiobookshelf/docker-compose.yml b/apps/audiobookshelf/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/audiobookshelf/metadata/description.md b/apps/audiobookshelf/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/audiobookshelf/metadata/logo.jpg b/apps/audiobookshelf/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/authentik/config.json b/apps/authentik/config.json old mode 100644 new mode 100755 diff --git a/apps/authentik/docker-compose.yml b/apps/authentik/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/authentik/metadata/description.md b/apps/authentik/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/authentik/metadata/logo.jpg b/apps/authentik/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/autobrr/config.json b/apps/autobrr/config.json old mode 100644 new mode 100755 diff --git a/apps/autobrr/docker-compose.yml b/apps/autobrr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/autobrr/metadata/description.md b/apps/autobrr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/autobrr/metadata/logo.jpg b/apps/autobrr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/baikal/config.json b/apps/baikal/config.json old mode 100644 new mode 100755 diff --git a/apps/baikal/docker-compose.yml b/apps/baikal/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/baikal/metadata/description.md b/apps/baikal/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/baikal/metadata/logo.jpg b/apps/baikal/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/barrage/config.json b/apps/barrage/config.json old mode 100644 new mode 100755 diff --git a/apps/barrage/docker-compose.yml b/apps/barrage/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/barrage/metadata/description.md b/apps/barrage/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/barrage/metadata/logo.jpg b/apps/barrage/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/bazarr/config.json b/apps/bazarr/config.json old mode 100644 new mode 100755 diff --git a/apps/bazarr/docker-compose.yml b/apps/bazarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/bazarr/metadata/description.md b/apps/bazarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/bazarr/metadata/logo.jpg b/apps/bazarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/bitcoind/config.json b/apps/bitcoind/config.json old mode 100644 new mode 100755 diff --git a/apps/bitcoind/docker-compose.yml b/apps/bitcoind/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/bitcoind/metadata/description.md b/apps/bitcoind/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/bitcoind/metadata/logo.jpg b/apps/bitcoind/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/bitmagnet/config.json b/apps/bitmagnet/config.json old mode 100644 new mode 100755 diff --git a/apps/bitmagnet/docker-compose.yml b/apps/bitmagnet/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/bitmagnet/metadata/description.md b/apps/bitmagnet/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/bitmagnet/metadata/logo.jpg b/apps/bitmagnet/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/booksonic/config.json b/apps/booksonic/config.json old mode 100644 new mode 100755 diff --git a/apps/booksonic/config/.keep b/apps/booksonic/config/.keep old mode 100644 new mode 100755 diff --git a/apps/booksonic/docker-compose.yml b/apps/booksonic/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/booksonic/metadata/description.md b/apps/booksonic/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/booksonic/metadata/logo.jpg b/apps/booksonic/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/bookstack/config.json b/apps/bookstack/config.json old mode 100644 new mode 100755 diff --git a/apps/bookstack/docker-compose.yml b/apps/bookstack/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/bookstack/metadata/description.md b/apps/bookstack/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/bookstack/metadata/logo.jpg b/apps/bookstack/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/budibase/config.json b/apps/budibase/config.json old mode 100644 new mode 100755 diff --git a/apps/budibase/docker-compose.yml b/apps/budibase/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/budibase/metadata/description.md b/apps/budibase/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/budibase/metadata/logo.jpg b/apps/budibase/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/calcom/config.json b/apps/calcom/config.json old mode 100644 new mode 100755 diff --git a/apps/calcom/docker-compose.yml b/apps/calcom/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/calcom/metadata/description.md b/apps/calcom/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/calcom/metadata/logo.jpg b/apps/calcom/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/calibre-web/config.json b/apps/calibre-web/config.json old mode 100644 new mode 100755 diff --git a/apps/calibre-web/data/books/metadata.db b/apps/calibre-web/data/books/metadata.db old mode 100644 new mode 100755 diff --git a/apps/calibre-web/docker-compose.yml b/apps/calibre-web/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/calibre-web/metadata/description.md b/apps/calibre-web/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/calibre-web/metadata/logo.jpg b/apps/calibre-web/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/changedetection/config.json b/apps/changedetection/config.json old mode 100644 new mode 100755 diff --git a/apps/changedetection/docker-compose.yml b/apps/changedetection/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/changedetection/metadata/description.md b/apps/changedetection/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/changedetection/metadata/logo.jpg b/apps/changedetection/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/chatgpt-ui/config.json b/apps/chatgpt-ui/config.json old mode 100644 new mode 100755 diff --git a/apps/chatgpt-ui/docker-compose.yml b/apps/chatgpt-ui/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/chatgpt-ui/metadata/description.md b/apps/chatgpt-ui/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/chatgpt-ui/metadata/logo.jpg b/apps/chatgpt-ui/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/chatpad/config.json b/apps/chatpad/config.json old mode 100644 new mode 100755 diff --git a/apps/chatpad/docker-compose.yml b/apps/chatpad/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/chatpad/metadata/description.md b/apps/chatpad/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/chatpad/metadata/logo.jpg b/apps/chatpad/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cheshire-cat-ai/config.json b/apps/cheshire-cat-ai/config.json old mode 100644 new mode 100755 diff --git a/apps/cheshire-cat-ai/docker-compose.yml b/apps/cheshire-cat-ai/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cheshire-cat-ai/metadata/description.md b/apps/cheshire-cat-ai/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cheshire-cat-ai/metadata/logo.jpg b/apps/cheshire-cat-ai/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cloudflare-ddns/config.json b/apps/cloudflare-ddns/config.json old mode 100644 new mode 100755 diff --git a/apps/cloudflare-ddns/docker-compose.yml b/apps/cloudflare-ddns/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cloudflare-ddns/metadata/description.md b/apps/cloudflare-ddns/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cloudflare-ddns/metadata/logo.jpg b/apps/cloudflare-ddns/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cloudflared/config.json b/apps/cloudflared/config.json old mode 100644 new mode 100755 diff --git a/apps/cloudflared/docker-compose.yml b/apps/cloudflared/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cloudflared/metadata/description.md b/apps/cloudflared/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cloudflared/metadata/logo.jpg b/apps/cloudflared/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/code-server/config.json b/apps/code-server/config.json old mode 100644 new mode 100755 diff --git a/apps/code-server/docker-compose.yml b/apps/code-server/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/code-server/metadata/description.md b/apps/code-server/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/code-server/metadata/logo.jpg b/apps/code-server/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/codex-docs/config.json b/apps/codex-docs/config.json old mode 100644 new mode 100755 diff --git a/apps/codex-docs/data/docs-config.yaml b/apps/codex-docs/data/docs-config.yaml old mode 100644 new mode 100755 diff --git a/apps/codex-docs/docker-compose.yml b/apps/codex-docs/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/codex-docs/metadata/description.md b/apps/codex-docs/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/codex-docs/metadata/logo.jpg b/apps/codex-docs/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/crafty/config.json b/apps/crafty/config.json old mode 100644 new mode 100755 diff --git a/apps/crafty/docker-compose.yml b/apps/crafty/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/crafty/metadata/description.md b/apps/crafty/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/crafty/metadata/logo.jpg b/apps/crafty/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cross-seed/config.json b/apps/cross-seed/config.json old mode 100644 new mode 100755 diff --git a/apps/cross-seed/docker-compose.yml b/apps/cross-seed/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cross-seed/metadata/description.md b/apps/cross-seed/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cross-seed/metadata/logo.jpg b/apps/cross-seed/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/crowdsec/config.json b/apps/crowdsec/config.json old mode 100644 new mode 100755 diff --git a/apps/crowdsec/data/crowdsec-dashboard/data/metabase.db.mv.db b/apps/crowdsec/data/crowdsec-dashboard/data/metabase.db.mv.db old mode 100644 new mode 100755 diff --git a/apps/crowdsec/data/crowdsec/acquis.yaml b/apps/crowdsec/data/crowdsec/acquis.yaml old mode 100644 new mode 100755 diff --git a/apps/crowdsec/docker-compose.yml b/apps/crowdsec/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/crowdsec/metadata/description.md b/apps/crowdsec/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/crowdsec/metadata/logo.jpg b/apps/crowdsec/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ctfd/config.json b/apps/ctfd/config.json old mode 100644 new mode 100755 diff --git a/apps/ctfd/docker-compose.yml b/apps/ctfd/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ctfd/metadata/description.md b/apps/ctfd/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ctfd/metadata/logo.jpg b/apps/ctfd/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cup/config.json b/apps/cup/config.json old mode 100644 new mode 100755 diff --git a/apps/cup/docker-compose.yml b/apps/cup/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cup/metadata/description.md b/apps/cup/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cup/metadata/logo.jpg b/apps/cup/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/cyberchef/config.json b/apps/cyberchef/config.json old mode 100644 new mode 100755 diff --git a/apps/cyberchef/docker-compose.yml b/apps/cyberchef/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/cyberchef/metadata/description.md b/apps/cyberchef/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/cyberchef/metadata/logo.jpg b/apps/cyberchef/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/dailytxt/config.json b/apps/dailytxt/config.json old mode 100644 new mode 100755 diff --git a/apps/dailytxt/docker-compose.yml b/apps/dailytxt/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dailytxt/metadata/description.md b/apps/dailytxt/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dailytxt/metadata/logo.jpg b/apps/dailytxt/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/dashdot/config.json b/apps/dashdot/config.json old mode 100644 new mode 100755 diff --git a/apps/dashdot/docker-compose.yml b/apps/dashdot/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dashdot/metadata/description.md b/apps/dashdot/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dashdot/metadata/logo.jpg b/apps/dashdot/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/dashy/config.json b/apps/dashy/config.json old mode 100644 new mode 100755 diff --git a/apps/dashy/data/dashy/conf.yml b/apps/dashy/data/dashy/conf.yml old mode 100644 new mode 100755 diff --git a/apps/dashy/docker-compose.yml b/apps/dashy/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dashy/metadata/description.md b/apps/dashy/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dashy/metadata/logo.jpg b/apps/dashy/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/databag/config.json b/apps/databag/config.json old mode 100644 new mode 100755 diff --git a/apps/databag/docker-compose.yml b/apps/databag/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/databag/metadata/description.md b/apps/databag/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/databag/metadata/logo.jpg b/apps/databag/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/deemix/config.json b/apps/deemix/config.json old mode 100644 new mode 100755 diff --git a/apps/deemix/docker-compose.yml b/apps/deemix/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/deemix/metadata/description.md b/apps/deemix/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/deemix/metadata/logo.jpg b/apps/deemix/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/deluge/config.json b/apps/deluge/config.json old mode 100644 new mode 100755 diff --git a/apps/deluge/docker-compose.yml b/apps/deluge/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/deluge/metadata/description.md b/apps/deluge/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/deluge/metadata/logo.jpg b/apps/deluge/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/docker-compose.common.yml b/apps/docker-compose.common.yml old mode 100644 new mode 100755 diff --git a/apps/dockge/config.json b/apps/dockge/config.json old mode 100644 new mode 100755 diff --git a/apps/dockge/docker-compose.yml b/apps/dockge/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dockge/metadata/description.md b/apps/dockge/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dockge/metadata/logo.jpg b/apps/dockge/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/docmost/config.json b/apps/docmost/config.json old mode 100644 new mode 100755 diff --git a/apps/docmost/docker-compose.yml b/apps/docmost/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/docmost/metadata/description.md b/apps/docmost/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/docmost/metadata/logo.jpg b/apps/docmost/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/dokuwiki/config.json b/apps/dokuwiki/config.json old mode 100644 new mode 100755 diff --git a/apps/dokuwiki/docker-compose.yml b/apps/dokuwiki/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dokuwiki/metadata/description.md b/apps/dokuwiki/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dokuwiki/metadata/logo.jpg b/apps/dokuwiki/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/dozzle/config.json b/apps/dozzle/config.json old mode 100644 new mode 100755 diff --git a/apps/dozzle/data/users.yml.template b/apps/dozzle/data/users.yml.template old mode 100644 new mode 100755 diff --git a/apps/dozzle/docker-compose.yml b/apps/dozzle/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/dozzle/metadata/description.md b/apps/dozzle/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/dozzle/metadata/logo.jpg b/apps/dozzle/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/drawio/config.json b/apps/drawio/config.json old mode 100644 new mode 100755 diff --git a/apps/drawio/docker-compose.yml b/apps/drawio/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/drawio/metadata/description.md b/apps/drawio/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/drawio/metadata/logo.jpg b/apps/drawio/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/duckdns/config.json b/apps/duckdns/config.json old mode 100644 new mode 100755 diff --git a/apps/duckdns/docker-compose.yml b/apps/duckdns/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/duckdns/metadata/description.md b/apps/duckdns/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/duckdns/metadata/logo.jpg b/apps/duckdns/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/duplicati/config.json b/apps/duplicati/config.json old mode 100644 new mode 100755 diff --git a/apps/duplicati/docker-compose.yml b/apps/duplicati/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/duplicati/metadata/description.md b/apps/duplicati/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/duplicati/metadata/logo.jpg b/apps/duplicati/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/eclipse-mosquitto/data/data/.gitkeep b/apps/eclipse-mosquitto/data/data/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/eclipse-mosquitto/data/scripts/dynsec-setup.sh b/apps/eclipse-mosquitto/data/scripts/dynsec-setup.sh old mode 100644 new mode 100755 diff --git a/apps/eclipse-mosquitto/metadata/cedalo_mgm_center.png b/apps/eclipse-mosquitto/metadata/cedalo_mgm_center.png old mode 100644 new mode 100755 diff --git a/apps/eclipse-mosquitto/metadata/logo.jpg b/apps/eclipse-mosquitto/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/electrs/config.json b/apps/electrs/config.json old mode 100644 new mode 100755 diff --git a/apps/electrs/docker-compose.yml b/apps/electrs/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/electrs/metadata/description.md b/apps/electrs/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/electrs/metadata/logo.jpg b/apps/electrs/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/email-oauth2-proxy/config.json b/apps/email-oauth2-proxy/config.json old mode 100644 new mode 100755 diff --git a/apps/email-oauth2-proxy/docker-compose.yml b/apps/email-oauth2-proxy/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/email-oauth2-proxy/metadata/description.md b/apps/email-oauth2-proxy/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/email-oauth2-proxy/metadata/logo.jpg b/apps/email-oauth2-proxy/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/emulatorjs/config.json b/apps/emulatorjs/config.json old mode 100644 new mode 100755 diff --git a/apps/emulatorjs/docker-compose.yml b/apps/emulatorjs/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/emulatorjs/metadata/description.md b/apps/emulatorjs/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/emulatorjs/metadata/logo.jpg b/apps/emulatorjs/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/excalidraw/config.json b/apps/excalidraw/config.json old mode 100644 new mode 100755 diff --git a/apps/excalidraw/docker-compose.yml b/apps/excalidraw/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/excalidraw/metadata/description.md b/apps/excalidraw/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/excalidraw/metadata/logo.jpg b/apps/excalidraw/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/filebrowser/config.json b/apps/filebrowser/config.json old mode 100644 new mode 100755 diff --git a/apps/filebrowser/docker-compose.yml b/apps/filebrowser/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/filebrowser/metadata/description.md b/apps/filebrowser/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/filebrowser/metadata/logo.jpg b/apps/filebrowser/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/filestash/config.json b/apps/filestash/config.json old mode 100644 new mode 100755 diff --git a/apps/filestash/docker-compose.yml b/apps/filestash/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/filestash/metadata/description.md b/apps/filestash/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/filestash/metadata/logo.jpg b/apps/filestash/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/firefly-iii-data-importer/config.json b/apps/firefly-iii-data-importer/config.json old mode 100644 new mode 100755 diff --git a/apps/firefly-iii-data-importer/docker-compose.yml b/apps/firefly-iii-data-importer/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/firefly-iii-data-importer/metadata/description.md b/apps/firefly-iii-data-importer/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/firefly-iii-data-importer/metadata/logo.jpg b/apps/firefly-iii-data-importer/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/firefly-iii/config.json b/apps/firefly-iii/config.json old mode 100644 new mode 100755 diff --git a/apps/firefly-iii/docker-compose.yml b/apps/firefly-iii/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/firefly-iii/metadata/description.md b/apps/firefly-iii/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/firefly-iii/metadata/logo.jpg b/apps/firefly-iii/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/fireshare/config.json b/apps/fireshare/config.json old mode 100644 new mode 100755 diff --git a/apps/fireshare/docker-compose.yml b/apps/fireshare/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/fireshare/metadata/description.md b/apps/fireshare/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/fireshare/metadata/logo.jpg b/apps/fireshare/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/flaresolverr/config.json b/apps/flaresolverr/config.json old mode 100644 new mode 100755 diff --git a/apps/flaresolverr/docker-compose.yml b/apps/flaresolverr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/flaresolverr/metadata/description.md b/apps/flaresolverr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/flaresolverr/metadata/logo.jpg b/apps/flaresolverr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/flatnotes/config.json b/apps/flatnotes/config.json old mode 100644 new mode 100755 diff --git a/apps/flatnotes/docker-compose.yml b/apps/flatnotes/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/flatnotes/metadata/description.md b/apps/flatnotes/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/flatnotes/metadata/logo.jpg b/apps/flatnotes/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/flightlog/config.json b/apps/flightlog/config.json old mode 100644 new mode 100755 diff --git a/apps/flightlog/docker-compose.yml b/apps/flightlog/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/flightlog/metadata/description.md b/apps/flightlog/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/flightlog/metadata/logo.jpg b/apps/flightlog/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/flowise/config.json b/apps/flowise/config.json old mode 100644 new mode 100755 diff --git a/apps/flowise/docker-compose.yml b/apps/flowise/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/flowise/metadata/description.md b/apps/flowise/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/flowise/metadata/logo.jpg b/apps/flowise/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/forgejo/config.json b/apps/forgejo/config.json old mode 100644 new mode 100755 diff --git a/apps/forgejo/docker-compose.yml b/apps/forgejo/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/forgejo/metadata/description.md b/apps/forgejo/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/forgejo/metadata/logo.jpg b/apps/forgejo/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/freshrss/config.json b/apps/freshrss/config.json old mode 100644 new mode 100755 diff --git a/apps/freshrss/docker-compose.yml b/apps/freshrss/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/freshrss/metadata/description.md b/apps/freshrss/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/freshrss/metadata/logo.jpg b/apps/freshrss/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/gandi-livedns/config.json b/apps/gandi-livedns/config.json old mode 100644 new mode 100755 diff --git a/apps/gandi-livedns/docker-compose.yml b/apps/gandi-livedns/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/gandi-livedns/metadata/description.md b/apps/gandi-livedns/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/gandi-livedns/metadata/logo.jpg b/apps/gandi-livedns/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/getashell/config.json b/apps/getashell/config.json old mode 100644 new mode 100755 diff --git a/apps/getashell/docker-compose.yml b/apps/getashell/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/getashell/metadata/description.md b/apps/getashell/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/getashell/metadata/logo.jpg b/apps/getashell/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ghost-dev/config.json b/apps/ghost-dev/config.json old mode 100644 new mode 100755 diff --git a/apps/ghost-dev/docker-compose.yml b/apps/ghost-dev/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ghost-dev/metadata/description.md b/apps/ghost-dev/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ghost-dev/metadata/logo.jpg b/apps/ghost-dev/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ghost/config.json b/apps/ghost/config.json old mode 100644 new mode 100755 diff --git a/apps/ghost/docker-compose.yml b/apps/ghost/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ghost/metadata/description.md b/apps/ghost/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ghost/metadata/logo.jpg b/apps/ghost/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ghostfolio/config.json b/apps/ghostfolio/config.json old mode 100644 new mode 100755 diff --git a/apps/ghostfolio/docker-compose.yml b/apps/ghostfolio/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ghostfolio/metadata/description.md b/apps/ghostfolio/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ghostfolio/metadata/logo.jpg b/apps/ghostfolio/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/gitea/config.json b/apps/gitea/config.json old mode 100644 new mode 100755 diff --git a/apps/gitea/docker-compose.yml b/apps/gitea/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/gitea/metadata/description.md b/apps/gitea/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/gitea/metadata/logo.jpg b/apps/gitea/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/gladys/config.json b/apps/gladys/config.json old mode 100644 new mode 100755 diff --git a/apps/gladys/docker-compose.yml b/apps/gladys/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/gladys/metadata/description.md b/apps/gladys/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/gladys/metadata/logo.jpg b/apps/gladys/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/glance/config.json b/apps/glance/config.json old mode 100644 new mode 100755 diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml old mode 100644 new mode 100755 diff --git a/apps/glance/docker-compose.json b/apps/glance/docker-compose.json old mode 100644 new mode 100755 diff --git a/apps/glance/docker-compose.yml b/apps/glance/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/glance/metadata/description.md b/apps/glance/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/glance/metadata/logo.jpg b/apps/glance/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/glances/config.json b/apps/glances/config.json old mode 100644 new mode 100755 diff --git a/apps/glances/docker-compose.yml b/apps/glances/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/glances/metadata/description.md b/apps/glances/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/glances/metadata/logo.jpg b/apps/glances/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/gotify/config.json b/apps/gotify/config.json old mode 100644 new mode 100755 diff --git a/apps/gotify/docker-compose.arm64.yml b/apps/gotify/docker-compose.arm64.yml old mode 100644 new mode 100755 diff --git a/apps/gotify/docker-compose.yml b/apps/gotify/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/gotify/metadata/description.md b/apps/gotify/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/gotify/metadata/logo.jpg b/apps/gotify/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/gotosocial/config.json b/apps/gotosocial/config.json old mode 100644 new mode 100755 diff --git a/apps/gotosocial/docker-compose.yml b/apps/gotosocial/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/gotosocial/metadata/description.md b/apps/gotosocial/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/gotosocial/metadata/logo.jpg b/apps/gotosocial/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/grafana/config.json b/apps/grafana/config.json old mode 100644 new mode 100755 diff --git a/apps/grafana/docker-compose.yml b/apps/grafana/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/grafana/metadata/description.md b/apps/grafana/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/grafana/metadata/logo.jpg b/apps/grafana/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/grampsweb/config.json b/apps/grampsweb/config.json old mode 100644 new mode 100755 diff --git a/apps/grampsweb/docker-compose.yml b/apps/grampsweb/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/grampsweb/metadata/description.md b/apps/grampsweb/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/grampsweb/metadata/logo.jpg b/apps/grampsweb/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/grav/config.json b/apps/grav/config.json old mode 100644 new mode 100755 diff --git a/apps/grav/docker-compose.yml b/apps/grav/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/grav/metadata/description.md b/apps/grav/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/grav/metadata/logo.jpg b/apps/grav/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/grist/config.json b/apps/grist/config.json old mode 100644 new mode 100755 diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/grist/metadata/description.md b/apps/grist/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/grist/metadata/logo.jpg b/apps/grist/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/grocy/config.json b/apps/grocy/config.json old mode 100644 new mode 100755 diff --git a/apps/grocy/docker-compose.yml b/apps/grocy/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/grocy/metadata/description.md b/apps/grocy/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/grocy/metadata/logo.jpg b/apps/grocy/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/guacamole/config.json b/apps/guacamole/config.json old mode 100644 new mode 100755 diff --git a/apps/guacamole/data/init/sql/001-create-schema.sql b/apps/guacamole/data/init/sql/001-create-schema.sql old mode 100644 new mode 100755 diff --git a/apps/guacamole/data/init/sql/002-create-admin-user.sql b/apps/guacamole/data/init/sql/002-create-admin-user.sql old mode 100644 new mode 100755 diff --git a/apps/guacamole/docker-compose.yml b/apps/guacamole/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/guacamole/metadata/description.md b/apps/guacamole/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/guacamole/metadata/logo.jpg b/apps/guacamole/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/halo/config.json b/apps/halo/config.json old mode 100644 new mode 100755 diff --git a/apps/halo/docker-compose.yml b/apps/halo/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/halo/metadata/description.md b/apps/halo/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/halo/metadata/logo.jpg b/apps/halo/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/hammond/config.json b/apps/hammond/config.json old mode 100644 new mode 100755 diff --git a/apps/hammond/docker-compose.yml b/apps/hammond/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/hammond/metadata/description.md b/apps/hammond/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/hammond/metadata/logo.jpg b/apps/hammond/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/haven/config.json b/apps/haven/config.json old mode 100644 new mode 100755 diff --git a/apps/haven/docker-compose.yml b/apps/haven/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/haven/metadata/description.md b/apps/haven/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/haven/metadata/logo.jpg b/apps/haven/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/hedgedoc/config.json b/apps/hedgedoc/config.json old mode 100644 new mode 100755 diff --git a/apps/hedgedoc/docker-compose.yml b/apps/hedgedoc/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/hedgedoc/metadata/description.md b/apps/hedgedoc/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/hedgedoc/metadata/logo.jpg b/apps/hedgedoc/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/heimdall/config.json b/apps/heimdall/config.json old mode 100644 new mode 100755 diff --git a/apps/heimdall/docker-compose.yml b/apps/heimdall/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/heimdall/metadata/description.md b/apps/heimdall/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/heimdall/metadata/logo.jpg b/apps/heimdall/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/hello-world/config.json b/apps/hello-world/config.json old mode 100644 new mode 100755 diff --git a/apps/hello-world/docker-compose.yml b/apps/hello-world/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/hello-world/metadata/description.md b/apps/hello-world/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/hello-world/metadata/logo.jpg b/apps/hello-world/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homarr/config.json b/apps/homarr/config.json old mode 100644 new mode 100755 diff --git a/apps/homarr/docker-compose.yml b/apps/homarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homarr/metadata/description.md b/apps/homarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homarr/metadata/logo.jpg b/apps/homarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/config.json b/apps/homeassistant-1/config.json old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/data/config/automations.yaml b/apps/homeassistant-1/data/config/automations.yaml old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/data/config/configuration.yaml b/apps/homeassistant-1/data/config/configuration.yaml old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/data/config/scenes.yaml b/apps/homeassistant-1/data/config/scenes.yaml old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/data/config/scripts.yaml b/apps/homeassistant-1/data/config/scripts.yaml old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/docker-compose.yml b/apps/homeassistant-1/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/metadata/description.md b/apps/homeassistant-1/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homeassistant-1/metadata/logo.jpg b/apps/homeassistant-1/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homeassistant/config.json b/apps/homeassistant/config.json old mode 100644 new mode 100755 diff --git a/apps/homeassistant/docker-compose.yml b/apps/homeassistant/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homeassistant/metadata/description.md b/apps/homeassistant/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homeassistant/metadata/logo.jpg b/apps/homeassistant/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homebox/config.json b/apps/homebox/config.json old mode 100644 new mode 100755 diff --git a/apps/homebox/docker-compose.yml b/apps/homebox/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homebox/metadata/description.md b/apps/homebox/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homebox/metadata/logo.jpg b/apps/homebox/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homebridge/config.json b/apps/homebridge/config.json old mode 100644 new mode 100755 diff --git a/apps/homebridge/docker-compose.yml b/apps/homebridge/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homebridge/metadata/description.md b/apps/homebridge/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homebridge/metadata/logo.jpg b/apps/homebridge/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/homepage/config.json b/apps/homepage/config.json old mode 100644 new mode 100755 diff --git a/apps/homepage/docker-compose.yml b/apps/homepage/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/homepage/metadata/description.md b/apps/homepage/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/homepage/metadata/logo.jpg b/apps/homepage/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/immich/config.json b/apps/immich/config.json old mode 100644 new mode 100755 diff --git a/apps/immich/docker-compose.yml b/apps/immich/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/immich/metadata/description.md b/apps/immich/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/immich/metadata/logo.jpg b/apps/immich/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/inspircd/config.json b/apps/inspircd/config.json old mode 100644 new mode 100755 diff --git a/apps/inspircd/data/.gitkeep b/apps/inspircd/data/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/inspircd/docker-compose.yml b/apps/inspircd/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/inspircd/metadata/description.md b/apps/inspircd/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/inspircd/metadata/logo.jpg b/apps/inspircd/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/invidious/config.json b/apps/invidious/config.json old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/init-invidious-db.sh b/apps/invidious/data/init/init-invidious-db.sh old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/annotations.sql b/apps/invidious/data/init/sql/annotations.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/channel_videos.sql b/apps/invidious/data/init/sql/channel_videos.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/channels.sql b/apps/invidious/data/init/sql/channels.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/nonces.sql b/apps/invidious/data/init/sql/nonces.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/playlist_videos.sql b/apps/invidious/data/init/sql/playlist_videos.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/playlists.sql b/apps/invidious/data/init/sql/playlists.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/session_ids.sql b/apps/invidious/data/init/sql/session_ids.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/users.sql b/apps/invidious/data/init/sql/users.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/init/sql/videos.sql b/apps/invidious/data/init/sql/videos.sql old mode 100644 new mode 100755 diff --git a/apps/invidious/data/postgres/.gitkeep b/apps/invidious/data/postgres/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/invidious/data/sql/.gitkeep b/apps/invidious/data/sql/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/invidious/docker-compose.arm64.yml b/apps/invidious/docker-compose.arm64.yml old mode 100644 new mode 100755 diff --git a/apps/invidious/docker-compose.yml b/apps/invidious/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/invidious/metadata/description.md b/apps/invidious/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/invidious/metadata/logo.jpg b/apps/invidious/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/config.json b/apps/invoice-ninja/config.json old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/data/init/init.sh b/apps/invoice-ninja/data/init/init.sh old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/data/nginx/invoice-ninja.conf b/apps/invoice-ninja/data/nginx/invoice-ninja.conf old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/data/php/php-cli.ini b/apps/invoice-ninja/data/php/php-cli.ini old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/data/php/php.ini b/apps/invoice-ninja/data/php/php.ini old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/docker-compose.yml b/apps/invoice-ninja/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/metadata/description.md b/apps/invoice-ninja/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/invoice-ninja/metadata/logo.jpg b/apps/invoice-ninja/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/it-tools/config.json b/apps/it-tools/config.json old mode 100644 new mode 100755 diff --git a/apps/it-tools/docker-compose.yml b/apps/it-tools/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/it-tools/metadata/description.md b/apps/it-tools/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/it-tools/metadata/logo.jpg b/apps/it-tools/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/jackett/config.json b/apps/jackett/config.json old mode 100644 new mode 100755 diff --git a/apps/jackett/docker-compose.yml b/apps/jackett/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/jackett/metadata/description.md b/apps/jackett/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/jackett/metadata/logo.jpg b/apps/jackett/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/jellyfin-vue/config.json b/apps/jellyfin-vue/config.json old mode 100644 new mode 100755 diff --git a/apps/jellyfin-vue/docker-compose.yml b/apps/jellyfin-vue/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/jellyfin-vue/metadata/description.md b/apps/jellyfin-vue/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/jellyfin-vue/metadata/logo.jpg b/apps/jellyfin-vue/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/jellyfin/config.json b/apps/jellyfin/config.json old mode 100644 new mode 100755 diff --git a/apps/jellyfin/data/config/.gitkeep b/apps/jellyfin/data/config/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/jellyfin/docker-compose.yml b/apps/jellyfin/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/jellyfin/metadata/description.md b/apps/jellyfin/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/jellyfin/metadata/logo.jpg b/apps/jellyfin/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/jellyseerr/config.json b/apps/jellyseerr/config.json old mode 100644 new mode 100755 diff --git a/apps/jellyseerr/docker-compose.yml b/apps/jellyseerr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/jellyseerr/metadata/description.md b/apps/jellyseerr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/jellyseerr/metadata/logo.jpg b/apps/jellyseerr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/joplin/config.json b/apps/joplin/config.json old mode 100644 new mode 100755 diff --git a/apps/joplin/docker-compose.yml b/apps/joplin/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/joplin/metadata/description.md b/apps/joplin/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/joplin/metadata/logo.jpg b/apps/joplin/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kanboard/config.json b/apps/kanboard/config.json old mode 100644 new mode 100755 diff --git a/apps/kanboard/docker-compose.yml b/apps/kanboard/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kanboard/metadata/description.md b/apps/kanboard/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kanboard/metadata/logo.jpg b/apps/kanboard/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kapowarr/config.json b/apps/kapowarr/config.json old mode 100644 new mode 100755 diff --git a/apps/kapowarr/docker-compose.yml b/apps/kapowarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kapowarr/metadata/description.md b/apps/kapowarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kapowarr/metadata/logo.jpg b/apps/kapowarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kasm-workspaces/config.json b/apps/kasm-workspaces/config.json old mode 100644 new mode 100755 diff --git a/apps/kasm-workspaces/docker-compose.yml b/apps/kasm-workspaces/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kasm-workspaces/metadata/description.md b/apps/kasm-workspaces/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kasm-workspaces/metadata/logo.jpg b/apps/kasm-workspaces/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kavita/config.json b/apps/kavita/config.json old mode 100644 new mode 100755 diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kavita/metadata/description.md b/apps/kavita/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kavita/metadata/logo.jpg b/apps/kavita/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kimai/config.json b/apps/kimai/config.json old mode 100644 new mode 100755 diff --git a/apps/kimai/docker-compose.yml b/apps/kimai/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kimai/metadata/description.md b/apps/kimai/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kimai/metadata/logo.jpg b/apps/kimai/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kiwix-serve/config.json b/apps/kiwix-serve/config.json old mode 100644 new mode 100755 diff --git a/apps/kiwix-serve/docker-compose.yml b/apps/kiwix-serve/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kiwix-serve/metadata/description.md b/apps/kiwix-serve/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kiwix-serve/metadata/logo.jpg b/apps/kiwix-serve/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/koillection/config.json b/apps/koillection/config.json old mode 100644 new mode 100755 diff --git a/apps/koillection/docker-compose.yml b/apps/koillection/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/koillection/metadata/description.md b/apps/koillection/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/koillection/metadata/logo.jpg b/apps/koillection/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/kometa/config.json b/apps/kometa/config.json old mode 100644 new mode 100755 diff --git a/apps/kometa/docker-compose.yml b/apps/kometa/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/kometa/metadata/description.md b/apps/kometa/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/kometa/metadata/logo.jpg b/apps/kometa/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/komga/config.json b/apps/komga/config.json old mode 100644 new mode 100755 diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/komga/metadata/description.md b/apps/komga/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/komga/metadata/logo.jpg b/apps/komga/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/libreddit/config.json b/apps/libreddit/config.json old mode 100644 new mode 100755 diff --git a/apps/libreddit/docker-compose.arm64.yml b/apps/libreddit/docker-compose.arm64.yml old mode 100644 new mode 100755 diff --git a/apps/libreddit/docker-compose.yml b/apps/libreddit/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/libreddit/metadata/description.md b/apps/libreddit/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/libreddit/metadata/logo.jpg b/apps/libreddit/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/librephotos/config.json b/apps/librephotos/config.json old mode 100644 new mode 100755 diff --git a/apps/librephotos/data/cache/.gitkeep b/apps/librephotos/data/cache/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/librephotos/data/logs/.gitkeep b/apps/librephotos/data/logs/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/librephotos/data/protected_media/.gitkeep b/apps/librephotos/data/protected_media/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/librephotos/data/proxy/nginx.conf b/apps/librephotos/data/proxy/nginx.conf old mode 100644 new mode 100755 diff --git a/apps/librephotos/data/scan/.gitkeep b/apps/librephotos/data/scan/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/librephotos/docker-compose.yml b/apps/librephotos/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/librephotos/metadata/description.md b/apps/librephotos/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/librephotos/metadata/logo.jpg b/apps/librephotos/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/libretranslate/config.json b/apps/libretranslate/config.json old mode 100644 new mode 100755 diff --git a/apps/libretranslate/docker-compose.yml b/apps/libretranslate/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/libretranslate/metadata/description.md b/apps/libretranslate/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/libretranslate/metadata/logo.jpg b/apps/libretranslate/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/lidarr-deemix/config.json b/apps/lidarr-deemix/config.json old mode 100644 new mode 100755 diff --git a/apps/lidarr-deemix/docker-compose.yml b/apps/lidarr-deemix/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/lidarr-deemix/metadata/description.md b/apps/lidarr-deemix/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/lidarr-deemix/metadata/logo.jpg b/apps/lidarr-deemix/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/lidarr/config.json b/apps/lidarr/config.json old mode 100644 new mode 100755 diff --git a/apps/lidarr/docker-compose.yml b/apps/lidarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/lidarr/metadata/description.md b/apps/lidarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/lidarr/metadata/logo.jpg b/apps/lidarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/linkstack/config.json b/apps/linkstack/config.json old mode 100644 new mode 100755 diff --git a/apps/linkstack/docker-compose.yml b/apps/linkstack/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/linkstack/metadata/description.md b/apps/linkstack/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/linkstack/metadata/logo.jpg b/apps/linkstack/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/linkwarden/config.json b/apps/linkwarden/config.json old mode 100644 new mode 100755 diff --git a/apps/linkwarden/docker-compose.yml b/apps/linkwarden/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/linkwarden/metadata/description.md b/apps/linkwarden/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/linkwarden/metadata/logo.jpg b/apps/linkwarden/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/lobe-chat/config.json b/apps/lobe-chat/config.json old mode 100644 new mode 100755 diff --git a/apps/lobe-chat/docker-compose.yml b/apps/lobe-chat/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/lobe-chat/metadata/description.md b/apps/lobe-chat/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/lobe-chat/metadata/logo.jpg b/apps/lobe-chat/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/lodestone-core/config.json b/apps/lodestone-core/config.json old mode 100644 new mode 100755 diff --git a/apps/lodestone-core/docker-compose.yml b/apps/lodestone-core/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/lodestone-core/metadata/description.md b/apps/lodestone-core/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/lodestone-core/metadata/logo.jpg b/apps/lodestone-core/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/logto/config.json b/apps/logto/config.json old mode 100644 new mode 100755 diff --git a/apps/logto/docker-compose.yml b/apps/logto/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/logto/metadata/description.md b/apps/logto/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/logto/metadata/logo.jpg b/apps/logto/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/maintainerr/config.json b/apps/maintainerr/config.json old mode 100644 new mode 100755 diff --git a/apps/maintainerr/docker-compose.yml b/apps/maintainerr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/maintainerr/metadata/description.md b/apps/maintainerr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/maintainerr/metadata/logo.jpg b/apps/maintainerr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mastodon/config.json b/apps/mastodon/config.json old mode 100644 new mode 100755 diff --git a/apps/mastodon/docker-compose.yml b/apps/mastodon/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mastodon/metadata/description.md b/apps/mastodon/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mastodon/metadata/logo.jpg b/apps/mastodon/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/config.json b/apps/matrix-conduit/config.json old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/docker-compose.yml b/apps/matrix-conduit/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/metadata/description.md b/apps/matrix-conduit/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/metadata/logo.jpg b/apps/matrix-conduit/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/nginx/Dockerfile b/apps/matrix-conduit/nginx/Dockerfile old mode 100644 new mode 100755 diff --git a/apps/matrix-conduit/nginx/matrix.conf.template b/apps/matrix-conduit/nginx/matrix.conf.template old mode 100644 new mode 100755 diff --git a/apps/matter-server/config.json b/apps/matter-server/config.json old mode 100644 new mode 100755 diff --git a/apps/matter-server/docker-compose.yml b/apps/matter-server/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/matter-server/metadata/description.md b/apps/matter-server/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/matter-server/metadata/logo.jpg b/apps/matter-server/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mdns-repeater/config.json b/apps/mdns-repeater/config.json old mode 100644 new mode 100755 diff --git a/apps/mdns-repeater/docker-compose.yml b/apps/mdns-repeater/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mdns-repeater/metadata/description.md b/apps/mdns-repeater/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mdns-repeater/metadata/logo.jpg b/apps/mdns-repeater/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mealie-1/config.json b/apps/mealie-1/config.json old mode 100644 new mode 100755 diff --git a/apps/mealie-1/docker-compose.yml b/apps/mealie-1/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mealie-1/metadata/description.md b/apps/mealie-1/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mealie-1/metadata/logo.jpg b/apps/mealie-1/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mealie/config.json b/apps/mealie/config.json old mode 100644 new mode 100755 diff --git a/apps/mealie/docker-compose.yml b/apps/mealie/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mealie/metadata/description.md b/apps/mealie/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mealie/metadata/logo.jpg b/apps/mealie/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/memos/config.json b/apps/memos/config.json old mode 100644 new mode 100755 diff --git a/apps/memos/docker-compose.yml b/apps/memos/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/memos/metadata/logo.jpg b/apps/memos/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/metube/config.json b/apps/metube/config.json old mode 100644 new mode 100755 diff --git a/apps/metube/docker-compose.yml b/apps/metube/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/metube/metadata/description.md b/apps/metube/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/metube/metadata/logo.jpg b/apps/metube/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mind/config.json b/apps/mind/config.json old mode 100644 new mode 100755 diff --git a/apps/mind/docker-compose.yml b/apps/mind/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mind/metadata/description.md b/apps/mind/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mind/metadata/logo.jpg b/apps/mind/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/minecraft-server/config.json b/apps/minecraft-server/config.json old mode 100644 new mode 100755 diff --git a/apps/minecraft-server/docker-compose.yml b/apps/minecraft-server/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/minecraft-server/metadata/description.md b/apps/minecraft-server/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/minecraft-server/metadata/logo.jpg b/apps/minecraft-server/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/minio/config.json b/apps/minio/config.json old mode 100644 new mode 100755 diff --git a/apps/minio/docker-compose.yml b/apps/minio/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/minio/metadata/description.md b/apps/minio/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/minio/metadata/logo.jpg b/apps/minio/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mixpost-pro/config.json b/apps/mixpost-pro/config.json old mode 100644 new mode 100755 diff --git a/apps/mixpost-pro/docker-compose.yml b/apps/mixpost-pro/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mixpost-pro/metadata/description.md b/apps/mixpost-pro/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mixpost-pro/metadata/logo.jpg b/apps/mixpost-pro/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mixpost/config.json b/apps/mixpost/config.json old mode 100644 new mode 100755 diff --git a/apps/mixpost/data/nginx/nginx.conf b/apps/mixpost/data/nginx/nginx.conf old mode 100644 new mode 100755 diff --git a/apps/mixpost/docker-compose.yml b/apps/mixpost/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mixpost/metadata/description.md b/apps/mixpost/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mixpost/metadata/logo.jpg b/apps/mixpost/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/moneroblock/config.json b/apps/moneroblock/config.json old mode 100644 new mode 100755 diff --git a/apps/moneroblock/docker-compose.yml b/apps/moneroblock/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/moneroblock/metadata/description.md b/apps/moneroblock/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/moneroblock/metadata/logo.jpg b/apps/moneroblock/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/monerod/config.json b/apps/monerod/config.json old mode 100644 new mode 100755 diff --git a/apps/monerod/docker-compose.yml b/apps/monerod/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/monerod/metadata/description.md b/apps/monerod/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/monerod/metadata/logo.jpg b/apps/monerod/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mongo-express/config.json b/apps/mongo-express/config.json old mode 100644 new mode 100755 diff --git a/apps/mongo-express/docker-compose.yml b/apps/mongo-express/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mongo-express/metadata/description.md b/apps/mongo-express/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mongo-express/metadata/logo.jpg b/apps/mongo-express/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mongo/config.json b/apps/mongo/config.json old mode 100644 new mode 100755 diff --git a/apps/mongo/docker-compose.yml b/apps/mongo/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mongo/metadata/description.md b/apps/mongo/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mongo/metadata/logo.jpg b/apps/mongo/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/monica/config.json b/apps/monica/config.json old mode 100644 new mode 100755 diff --git a/apps/monica/docker-compose.yml b/apps/monica/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/monica/metadata/description.md b/apps/monica/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/monica/metadata/logo.jpg b/apps/monica/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/moodist/config.json b/apps/moodist/config.json old mode 100644 new mode 100755 diff --git a/apps/moodist/docker-compose.yml b/apps/moodist/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/moodist/metadata/description.md b/apps/moodist/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/moodist/metadata/logo.jpg b/apps/moodist/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/movary/config.json b/apps/movary/config.json old mode 100644 new mode 100755 diff --git a/apps/movary/docker-compose.yml b/apps/movary/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/movary/metadata/description.md b/apps/movary/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/movary/metadata/logo.jpg b/apps/movary/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mqttx/config.json b/apps/mqttx/config.json old mode 100644 new mode 100755 diff --git a/apps/mqttx/docker-compose.yml b/apps/mqttx/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mqttx/metadata/description.md b/apps/mqttx/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mqttx/metadata/logo.jpg b/apps/mqttx/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mstream/config.json b/apps/mstream/config.json old mode 100644 new mode 100755 diff --git a/apps/mstream/docker-compose.yml b/apps/mstream/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mstream/metadata/description.md b/apps/mstream/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mstream/metadata/logo.jpg b/apps/mstream/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/mylar3/config.json b/apps/mylar3/config.json old mode 100644 new mode 100755 diff --git a/apps/mylar3/docker-compose.yml b/apps/mylar3/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/mylar3/metadata/description.md b/apps/mylar3/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/mylar3/metadata/logo.jpg b/apps/mylar3/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/n8n-1/config.json b/apps/n8n-1/config.json old mode 100644 new mode 100755 diff --git a/apps/n8n-1/data/init-data.sh b/apps/n8n-1/data/init-data.sh old mode 100644 new mode 100755 diff --git a/apps/n8n-1/docker-compose.yml b/apps/n8n-1/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/n8n-1/metadata/description.md b/apps/n8n-1/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/n8n-1/metadata/logo.jpg b/apps/n8n-1/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/n8n/config.json b/apps/n8n/config.json old mode 100644 new mode 100755 diff --git a/apps/n8n/docker-compose.yml b/apps/n8n/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/n8n/metadata/description.md b/apps/n8n/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/n8n/metadata/logo.jpg b/apps/n8n/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/navidrome/config.json b/apps/navidrome/config.json old mode 100644 new mode 100755 diff --git a/apps/navidrome/docker-compose.yml b/apps/navidrome/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/navidrome/metadata/description.md b/apps/navidrome/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/navidrome/metadata/logo.jpg b/apps/navidrome/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/netbootxyz/config.json b/apps/netbootxyz/config.json old mode 100644 new mode 100755 diff --git a/apps/netbootxyz/docker-compose.yml b/apps/netbootxyz/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/netbootxyz/metadata/description.md b/apps/netbootxyz/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/netbootxyz/metadata/logo.jpg b/apps/netbootxyz/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/netdata/config.json b/apps/netdata/config.json old mode 100644 new mode 100755 diff --git a/apps/netdata/docker-compose.yml b/apps/netdata/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/netdata/metadata/description.md b/apps/netdata/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/netdata/metadata/logo.jpg b/apps/netdata/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nextcloud/config.json b/apps/nextcloud/config.json old mode 100644 new mode 100755 diff --git a/apps/nextcloud/data/nextcloud/.gitkeep b/apps/nextcloud/data/nextcloud/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/nextcloud/data/redis/.gitkeep b/apps/nextcloud/data/redis/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/nextcloud/docker-compose.yml b/apps/nextcloud/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nextcloud/metadata/description.md b/apps/nextcloud/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nextcloud/metadata/logo.jpg b/apps/nextcloud/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nextgba/config.json b/apps/nextgba/config.json old mode 100644 new mode 100755 diff --git a/apps/nextgba/docker-compose.yml b/apps/nextgba/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nextgba/metadata/description.md b/apps/nextgba/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nextgba/metadata/logo.jpg b/apps/nextgba/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nginx/config.json b/apps/nginx/config.json old mode 100644 new mode 100755 diff --git a/apps/nginx/docker-compose.yml b/apps/nginx/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nginx/metadata/description.md b/apps/nginx/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nginx/metadata/logo.jpg b/apps/nginx/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nitter/config.json b/apps/nitter/config.json old mode 100644 new mode 100755 diff --git a/apps/nitter/data/nitter.conf b/apps/nitter/data/nitter.conf old mode 100644 new mode 100755 diff --git a/apps/nitter/docker-compose.yml b/apps/nitter/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nitter/metadata/description.md b/apps/nitter/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nitter/metadata/logo.jpg b/apps/nitter/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nocodb/config.json b/apps/nocodb/config.json old mode 100644 new mode 100755 diff --git a/apps/nocodb/docker-compose.yml b/apps/nocodb/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nocodb/metadata/description.md b/apps/nocodb/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nocodb/metadata/logo.jpg b/apps/nocodb/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/nodered/config.json b/apps/nodered/config.json old mode 100644 new mode 100755 diff --git a/apps/nodered/data/settings.js b/apps/nodered/data/settings.js old mode 100644 new mode 100755 diff --git a/apps/nodered/docker-compose.yml b/apps/nodered/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/nodered/metadata/description.md b/apps/nodered/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/nodered/metadata/logo.jpg b/apps/nodered/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/notemark/config.json b/apps/notemark/config.json old mode 100644 new mode 100755 diff --git a/apps/notemark/data/proxy/nginx.conf b/apps/notemark/data/proxy/nginx.conf old mode 100644 new mode 100755 diff --git a/apps/notemark/docker-compose.yml b/apps/notemark/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/notemark/metadata/description.md b/apps/notemark/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/notemark/metadata/logo.jpg b/apps/notemark/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ntfy/config.json b/apps/ntfy/config.json old mode 100644 new mode 100755 diff --git a/apps/ntfy/docker-compose.yml b/apps/ntfy/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ntfy/metadata/description.md b/apps/ntfy/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ntfy/metadata/logo.jpg b/apps/ntfy/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/obsidian-livesync/config.json b/apps/obsidian-livesync/config.json old mode 100644 new mode 100755 diff --git a/apps/obsidian-livesync/data/local.ini b/apps/obsidian-livesync/data/local.ini old mode 100644 new mode 100755 diff --git a/apps/obsidian-livesync/docker-compose.yml b/apps/obsidian-livesync/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/obsidian-livesync/metadata/description.md b/apps/obsidian-livesync/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/obsidian-livesync/metadata/logo.jpg b/apps/obsidian-livesync/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/octobot/config.json b/apps/octobot/config.json old mode 100644 new mode 100755 diff --git a/apps/octobot/docker-compose.yml b/apps/octobot/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/octobot/metadata/description.md b/apps/octobot/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/octobot/metadata/logo.jpg b/apps/octobot/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/odoo/config.json b/apps/odoo/config.json old mode 100644 new mode 100755 diff --git a/apps/odoo/docker-compose.yml b/apps/odoo/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/odoo/metadata/description.md b/apps/odoo/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/odoo/metadata/logo.jpg b/apps/odoo/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/olivetin/config.json b/apps/olivetin/config.json old mode 100644 new mode 100755 diff --git a/apps/olivetin/data/config.yaml b/apps/olivetin/data/config.yaml old mode 100644 new mode 100755 diff --git a/apps/olivetin/docker-compose.yml b/apps/olivetin/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/olivetin/metadata/description.md b/apps/olivetin/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/olivetin/metadata/logo.jpg b/apps/olivetin/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ollama-amd/metadata/logo.jpg b/apps/ollama-amd/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ollama-cpu/metadata/logo.jpg b/apps/ollama-cpu/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ollama-nvidia/metadata/logo.jpg b/apps/ollama-nvidia/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/onedev/config.json b/apps/onedev/config.json old mode 100644 new mode 100755 diff --git a/apps/onedev/docker-compose.yml b/apps/onedev/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/onedev/metadata/description.md b/apps/onedev/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/onedev/metadata/logo.jpg b/apps/onedev/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/open-webui/config.json b/apps/open-webui/config.json old mode 100644 new mode 100755 diff --git a/apps/open-webui/docker-compose.json b/apps/open-webui/docker-compose.json old mode 100644 new mode 100755 diff --git a/apps/open-webui/docker-compose.yml b/apps/open-webui/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/open-webui/metadata/description.md b/apps/open-webui/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/open-webui/metadata/logo.jpg b/apps/open-webui/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/openbooks/config.json b/apps/openbooks/config.json old mode 100644 new mode 100755 diff --git a/apps/openbooks/docker-compose.yml b/apps/openbooks/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/openbooks/metadata/description.md b/apps/openbooks/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/openbooks/metadata/logo.jpg b/apps/openbooks/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/outline/config.json b/apps/outline/config.json old mode 100644 new mode 100755 diff --git a/apps/outline/data/nginx/default.conf b/apps/outline/data/nginx/default.conf old mode 100644 new mode 100755 diff --git a/apps/outline/data/oidc-config.json.template b/apps/outline/data/oidc-config.json.template old mode 100644 new mode 100755 diff --git a/apps/outline/docker-compose.yml b/apps/outline/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/outline/metadata/description.md b/apps/outline/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/outline/metadata/logo.jpg b/apps/outline/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/overseerr/config.json b/apps/overseerr/config.json old mode 100644 new mode 100755 diff --git a/apps/overseerr/docker-compose.yml b/apps/overseerr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/overseerr/metadata/description.md b/apps/overseerr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/overseerr/metadata/logo.jpg b/apps/overseerr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/owncast/metadata/logo.jpg b/apps/owncast/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/owncloud/config.json b/apps/owncloud/config.json old mode 100644 new mode 100755 diff --git a/apps/owncloud/docker-compose.yml b/apps/owncloud/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/owncloud/metadata/description.md b/apps/owncloud/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/owncloud/metadata/logo.jpg b/apps/owncloud/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/pairdrop/config.json b/apps/pairdrop/config.json old mode 100644 new mode 100755 diff --git a/apps/pairdrop/docker-compose.yml b/apps/pairdrop/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/pairdrop/metadata/description.md b/apps/pairdrop/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/pairdrop/metadata/logo.jpg b/apps/pairdrop/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/paperless-ngx/config.json b/apps/paperless-ngx/config.json old mode 100644 new mode 100755 diff --git a/apps/paperless-ngx/docker-compose.yml b/apps/paperless-ngx/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/paperless-ngx/metadata/description.md b/apps/paperless-ngx/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/paperless-ngx/metadata/logo.jpg b/apps/paperless-ngx/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/penpot/config.json b/apps/penpot/config.json old mode 100644 new mode 100755 diff --git a/apps/penpot/docker-compose.yml b/apps/penpot/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/penpot/metadata/description.md b/apps/penpot/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/penpot/metadata/logo.jpg b/apps/penpot/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/peppermint/config.json b/apps/peppermint/config.json old mode 100644 new mode 100755 diff --git a/apps/peppermint/docker-compose.yml b/apps/peppermint/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/peppermint/metadata/description.md b/apps/peppermint/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/peppermint/metadata/logo.jpg b/apps/peppermint/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/photoprism/config.json b/apps/photoprism/config.json old mode 100644 new mode 100755 diff --git a/apps/photoprism/docker-compose.yml b/apps/photoprism/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/photoprism/metadata/description.md b/apps/photoprism/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/photoprism/metadata/logo.jpg b/apps/photoprism/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/pihole/config.json b/apps/pihole/config.json old mode 100644 new mode 100755 diff --git a/apps/pihole/data/unbound/a-records.conf b/apps/pihole/data/unbound/a-records.conf old mode 100644 new mode 100755 diff --git a/apps/pihole/data/unbound/root.hints b/apps/pihole/data/unbound/root.hints old mode 100644 new mode 100755 diff --git a/apps/pihole/data/unbound/root.key b/apps/pihole/data/unbound/root.key old mode 100644 new mode 100755 diff --git a/apps/pihole/data/unbound/unbound.conf b/apps/pihole/data/unbound/unbound.conf old mode 100644 new mode 100755 diff --git a/apps/pihole/docker-compose.yml b/apps/pihole/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/pihole/metadata/description.md b/apps/pihole/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/pihole/metadata/logo.jpg b/apps/pihole/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/pinchflat/config.json b/apps/pinchflat/config.json old mode 100644 new mode 100755 diff --git a/apps/pinchflat/docker-compose.yml b/apps/pinchflat/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/pinchflat/metadata/description.md b/apps/pinchflat/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/pinchflat/metadata/logo.jpg b/apps/pinchflat/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/pingvin-share/config.json b/apps/pingvin-share/config.json old mode 100644 new mode 100755 diff --git a/apps/pingvin-share/docker-compose.yml b/apps/pingvin-share/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/pingvin-share/metadata/description.md b/apps/pingvin-share/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/pingvin-share/metadata/logo.jpg b/apps/pingvin-share/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/planka/config.json b/apps/planka/config.json old mode 100644 new mode 100755 diff --git a/apps/planka/docker-compose.yml b/apps/planka/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/planka/metadata/description.md b/apps/planka/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/planka/metadata/logo.jpg b/apps/planka/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/planning-poker/config.json b/apps/planning-poker/config.json old mode 100644 new mode 100755 diff --git a/apps/planning-poker/docker-compose.yml b/apps/planning-poker/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/planning-poker/metadata/description.md b/apps/planning-poker/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/planning-poker/metadata/logo.jpg b/apps/planning-poker/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/plausible/config.json b/apps/plausible/config.json old mode 100644 new mode 100755 diff --git a/apps/plausible/data/clickhouse/clickhouse-config.xml b/apps/plausible/data/clickhouse/clickhouse-config.xml old mode 100644 new mode 100755 diff --git a/apps/plausible/data/clickhouse/clickhouse-user-config.xml b/apps/plausible/data/clickhouse/clickhouse-user-config.xml old mode 100644 new mode 100755 diff --git a/apps/plausible/docker-compose.yml b/apps/plausible/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/plausible/metadata/description.md b/apps/plausible/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/plausible/metadata/logo.jpg b/apps/plausible/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/plex/config.json b/apps/plex/config.json old mode 100644 new mode 100755 diff --git a/apps/plex/docker-compose.yml b/apps/plex/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/plex/metadata/description.md b/apps/plex/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/plex/metadata/logo.jpg b/apps/plex/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/podfetch/config.json b/apps/podfetch/config.json old mode 100644 new mode 100755 diff --git a/apps/podfetch/docker-compose.yml b/apps/podfetch/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/podfetch/metadata/description.md b/apps/podfetch/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/podfetch/metadata/logo.jpg b/apps/podfetch/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/portainer/config.json b/apps/portainer/config.json old mode 100644 new mode 100755 diff --git a/apps/portainer/docker-compose.yml b/apps/portainer/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/portainer/metadata/description.md b/apps/portainer/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/portainer/metadata/logo.jpg b/apps/portainer/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/postfix-relay/config.json b/apps/postfix-relay/config.json old mode 100644 new mode 100755 diff --git a/apps/postfix-relay/docker-compose.yml b/apps/postfix-relay/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/postfix-relay/metadata/description.md b/apps/postfix-relay/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/postfix-relay/metadata/logo.jpg b/apps/postfix-relay/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/privatebin/config.json b/apps/privatebin/config.json old mode 100644 new mode 100755 diff --git a/apps/privatebin/docker-compose.yml b/apps/privatebin/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/privatebin/metadata/description.md b/apps/privatebin/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/privatebin/metadata/logo.jpg b/apps/privatebin/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/prowlarr/config.json b/apps/prowlarr/config.json old mode 100644 new mode 100755 diff --git a/apps/prowlarr/docker-compose.yml b/apps/prowlarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/prowlarr/metadata/description.md b/apps/prowlarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/prowlarr/metadata/logo.jpg b/apps/prowlarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/proxitok/config.json b/apps/proxitok/config.json old mode 100644 new mode 100755 diff --git a/apps/proxitok/docker-compose.yml b/apps/proxitok/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/proxitok/metadata/description.md b/apps/proxitok/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/proxitok/metadata/logo.jpg b/apps/proxitok/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/qbittorrent/config.json b/apps/qbittorrent/config.json old mode 100644 new mode 100755 diff --git a/apps/qbittorrent/data/config/.gitkeep b/apps/qbittorrent/data/config/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/qbittorrent/docker-compose.yml b/apps/qbittorrent/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/qbittorrent/metadata/description.md b/apps/qbittorrent/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/qbittorrent/metadata/logo.jpg b/apps/qbittorrent/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/qdirstat/config.json b/apps/qdirstat/config.json old mode 100644 new mode 100755 diff --git a/apps/qdirstat/docker-compose.yml b/apps/qdirstat/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/qdirstat/metadata/description.md b/apps/qdirstat/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/qdirstat/metadata/logo.jpg b/apps/qdirstat/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/radarr/config.json b/apps/radarr/config.json old mode 100644 new mode 100755 diff --git a/apps/radarr/docker-compose.yml b/apps/radarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/radarr/metadata/description.md b/apps/radarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/radarr/metadata/logo.jpg b/apps/radarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/rallly/config.json b/apps/rallly/config.json old mode 100644 new mode 100755 diff --git a/apps/rallly/docker-compose.yml b/apps/rallly/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/rallly/metadata/description.md b/apps/rallly/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/rallly/metadata/logo.jpg b/apps/rallly/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/readarr/config.json b/apps/readarr/config.json old mode 100644 new mode 100755 diff --git a/apps/readarr/docker-compose.yml b/apps/readarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/readarr/metadata/description.md b/apps/readarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/readarr/metadata/logo.jpg b/apps/readarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/recyclarr/config.json b/apps/recyclarr/config.json old mode 100644 new mode 100755 diff --git a/apps/recyclarr/docker-compose.yml b/apps/recyclarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/recyclarr/metadata/description.md b/apps/recyclarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/recyclarr/metadata/logo.jpg b/apps/recyclarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/resilio-sync/config.json b/apps/resilio-sync/config.json old mode 100644 new mode 100755 diff --git a/apps/resilio-sync/docker-compose.yml b/apps/resilio-sync/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/resilio-sync/metadata/description.md b/apps/resilio-sync/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/resilio-sync/metadata/logo.jpg b/apps/resilio-sync/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/revolt/config.json b/apps/revolt/config.json old mode 100644 new mode 100755 diff --git a/apps/revolt/data/CaddyFiles/Caddyfile b/apps/revolt/data/CaddyFiles/Caddyfile old mode 100644 new mode 100755 diff --git a/apps/revolt/docker-compose.yml b/apps/revolt/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/revolt/metadata/description.md b/apps/revolt/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/revolt/metadata/logo.jpg b/apps/revolt/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/romm/config.json b/apps/romm/config.json old mode 100644 new mode 100755 diff --git a/apps/romm/data/config.yml b/apps/romm/data/config.yml old mode 100644 new mode 100755 diff --git a/apps/romm/docker-compose.yml b/apps/romm/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/romm/metadata/description.md b/apps/romm/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/romm/metadata/logo.jpg b/apps/romm/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/rss/config.json b/apps/rss/config.json old mode 100644 new mode 100755 diff --git a/apps/rss/data/storage/feeds.txt b/apps/rss/data/storage/feeds.txt old mode 100644 new mode 100755 diff --git a/apps/rss/docker-compose.yml b/apps/rss/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/rss/metadata/description.md b/apps/rss/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/rss/metadata/logo.jpg b/apps/rss/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/rsshub/config.json b/apps/rsshub/config.json old mode 100644 new mode 100755 diff --git a/apps/rsshub/data/app.env b/apps/rsshub/data/app.env old mode 100644 new mode 100755 diff --git a/apps/rsshub/docker-compose.yml b/apps/rsshub/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/rsshub/metadata/description.md b/apps/rsshub/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/rsshub/metadata/logo.jpg b/apps/rsshub/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/ryot/config.json b/apps/ryot/config.json old mode 100644 new mode 100755 diff --git a/apps/ryot/docker-compose.yml b/apps/ryot/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/ryot/metadata/description.md b/apps/ryot/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/ryot/metadata/logo.jpg b/apps/ryot/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/sabnzbd/config.json b/apps/sabnzbd/config.json old mode 100644 new mode 100755 diff --git a/apps/sabnzbd/docker-compose.yml b/apps/sabnzbd/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/sabnzbd/metadata/description.md b/apps/sabnzbd/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/sabnzbd/metadata/logo.jpg b/apps/sabnzbd/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/schema.json b/apps/schema.json old mode 100644 new mode 100755 diff --git a/apps/scrypted/config.json b/apps/scrypted/config.json old mode 100644 new mode 100755 diff --git a/apps/scrypted/docker-compose.yml b/apps/scrypted/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/scrypted/metadata/description.md b/apps/scrypted/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/scrypted/metadata/logo.jpg b/apps/scrypted/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/searxng/config.json b/apps/searxng/config.json old mode 100644 new mode 100755 diff --git a/apps/searxng/data/settings.yml b/apps/searxng/data/settings.yml old mode 100644 new mode 100755 diff --git a/apps/searxng/docker-compose.yml b/apps/searxng/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/searxng/metadata/description.md b/apps/searxng/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/searxng/metadata/logo.jpg b/apps/searxng/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/seedsync/config.json b/apps/seedsync/config.json old mode 100644 new mode 100755 diff --git a/apps/seedsync/docker-compose.yml b/apps/seedsync/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/seedsync/metadata/description.md b/apps/seedsync/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/seedsync/metadata/logo.jpg b/apps/seedsync/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/semaphore/config.json b/apps/semaphore/config.json old mode 100644 new mode 100755 diff --git a/apps/semaphore/docker-compose.yml b/apps/semaphore/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/semaphore/metadata/description.md b/apps/semaphore/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/semaphore/metadata/logo.jpg b/apps/semaphore/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/send/config.json b/apps/send/config.json old mode 100644 new mode 100755 diff --git a/apps/send/docker-compose.yml b/apps/send/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/send/metadata/description.md b/apps/send/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/send/metadata/logo.jpg b/apps/send/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/serge/config.json b/apps/serge/config.json old mode 100644 new mode 100755 diff --git a/apps/serge/docker-compose.yml b/apps/serge/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/serge/metadata/description.md b/apps/serge/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/serge/metadata/logo.jpg b/apps/serge/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/sftpgo/config.json b/apps/sftpgo/config.json old mode 100644 new mode 100755 diff --git a/apps/sftpgo/docker-compose.yml b/apps/sftpgo/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/sftpgo/metadata/description.md b/apps/sftpgo/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/sftpgo/metadata/logo.jpg b/apps/sftpgo/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/shlink/config.json b/apps/shlink/config.json old mode 100644 new mode 100755 diff --git a/apps/shlink/docker-compose.yml b/apps/shlink/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/shlink/metadata/description.md b/apps/shlink/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/shlink/metadata/logo.jpg b/apps/shlink/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/silverbullet/config.json b/apps/silverbullet/config.json old mode 100644 new mode 100755 diff --git a/apps/silverbullet/docker-compose.yml b/apps/silverbullet/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/silverbullet/metadata/description.md b/apps/silverbullet/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/silverbullet/metadata/logo.jpg b/apps/silverbullet/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/simplex-smp/config.json b/apps/simplex-smp/config.json old mode 100644 new mode 100755 diff --git a/apps/simplex-smp/docker-compose.yml b/apps/simplex-smp/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/simplex-smp/metadata/description.md b/apps/simplex-smp/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/simplex-smp/metadata/logo.jpg b/apps/simplex-smp/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/siyuan/config.json b/apps/siyuan/config.json old mode 100644 new mode 100755 diff --git a/apps/siyuan/docker-compose.yml b/apps/siyuan/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/siyuan/metadata/description.md b/apps/siyuan/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/siyuan/metadata/logo.jpg b/apps/siyuan/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/slskd/config.json b/apps/slskd/config.json old mode 100644 new mode 100755 diff --git a/apps/slskd/data/slskd.yml.template b/apps/slskd/data/slskd.yml.template old mode 100644 new mode 100755 diff --git a/apps/slskd/docker-compose.yml b/apps/slskd/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/slskd/metadata/description.md b/apps/slskd/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/slskd/metadata/logo.jpg b/apps/slskd/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/sonarr/config.json b/apps/sonarr/config.json old mode 100644 new mode 100755 diff --git a/apps/sonarr/docker-compose.yml b/apps/sonarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/sonarr/metadata/description.md b/apps/sonarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/sonarr/metadata/logo.jpg b/apps/sonarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/spacedrive/metadata/logo.jpg b/apps/spacedrive/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/speedtest-tracker/config.json b/apps/speedtest-tracker/config.json old mode 100644 new mode 100755 diff --git a/apps/speedtest-tracker/docker-compose.yml b/apps/speedtest-tracker/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/speedtest-tracker/metadata/description.md b/apps/speedtest-tracker/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/speedtest-tracker/metadata/logo.jpg b/apps/speedtest-tracker/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/spoolman/config.json b/apps/spoolman/config.json old mode 100644 new mode 100755 diff --git a/apps/spoolman/docker-compose.yml b/apps/spoolman/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/spoolman/metadata/description.md b/apps/spoolman/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/spoolman/metadata/logo.jpg b/apps/spoolman/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/sshwifty/config.json b/apps/sshwifty/config.json old mode 100644 new mode 100755 diff --git a/apps/sshwifty/docker-compose.yml b/apps/sshwifty/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/sshwifty/metadata/description.md b/apps/sshwifty/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/sshwifty/metadata/logo.jpg b/apps/sshwifty/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/stalwart-mail/config.json b/apps/stalwart-mail/config.json old mode 100644 new mode 100755 diff --git a/apps/stalwart-mail/docker-compose.yml b/apps/stalwart-mail/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/stalwart-mail/metadata/description.md b/apps/stalwart-mail/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/stalwart-mail/metadata/logo.jpg b/apps/stalwart-mail/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/stirling-pdf/config.json b/apps/stirling-pdf/config.json old mode 100644 new mode 100755 diff --git a/apps/stirling-pdf/docker-compose.yml b/apps/stirling-pdf/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/stirling-pdf/metadata/description.md b/apps/stirling-pdf/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/stirling-pdf/metadata/logo.jpg b/apps/stirling-pdf/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/suwayomi/config.json b/apps/suwayomi/config.json old mode 100644 new mode 100755 diff --git a/apps/suwayomi/docker-compose.yml b/apps/suwayomi/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/suwayomi/metadata/description.md b/apps/suwayomi/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/suwayomi/metadata/logo.jpg b/apps/suwayomi/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/syncthing/config.json b/apps/syncthing/config.json old mode 100644 new mode 100755 diff --git a/apps/syncthing/data/.gitkeep b/apps/syncthing/data/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/syncthing/docker-compose.yml b/apps/syncthing/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/syncthing/metadata/description.md b/apps/syncthing/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/syncthing/metadata/logo.jpg b/apps/syncthing/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tailscale/config.json b/apps/tailscale/config.json old mode 100644 new mode 100755 diff --git a/apps/tailscale/docker-compose.yml b/apps/tailscale/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tailscale/metadata/description.md b/apps/tailscale/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tailscale/metadata/logo.jpg b/apps/tailscale/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tandoor/config.json b/apps/tandoor/config.json old mode 100644 new mode 100755 diff --git a/apps/tandoor/docker-compose.yml b/apps/tandoor/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tandoor/metadata/description.md b/apps/tandoor/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tandoor/metadata/logo.jpg b/apps/tandoor/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tasks-md/config.json b/apps/tasks-md/config.json old mode 100644 new mode 100755 diff --git a/apps/tasks-md/docker-compose.yml b/apps/tasks-md/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tasks-md/metadata/description.md b/apps/tasks-md/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tasks-md/metadata/logo.jpg b/apps/tasks-md/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tautulli/config.json b/apps/tautulli/config.json old mode 100644 new mode 100755 diff --git a/apps/tautulli/docker-compose.yml b/apps/tautulli/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tautulli/metadata/description.md b/apps/tautulli/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tautulli/metadata/logo.jpg b/apps/tautulli/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/teddit/config.json b/apps/teddit/config.json old mode 100644 new mode 100755 diff --git a/apps/teddit/docker-compose.yml b/apps/teddit/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/teddit/metadata/description.md b/apps/teddit/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/teddit/metadata/logo.jpg b/apps/teddit/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tooljet/config.json b/apps/tooljet/config.json old mode 100644 new mode 100755 diff --git a/apps/tooljet/docker-compose.yml b/apps/tooljet/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tooljet/metadata/description.md b/apps/tooljet/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tooljet/metadata/logo.jpg b/apps/tooljet/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/traefik-certs-dumper/config.json b/apps/traefik-certs-dumper/config.json old mode 100644 new mode 100755 diff --git a/apps/traefik-certs-dumper/docker-compose.yml b/apps/traefik-certs-dumper/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/traefik-certs-dumper/metadata/description.md b/apps/traefik-certs-dumper/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/traefik-certs-dumper/metadata/logo.jpg b/apps/traefik-certs-dumper/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/transmission-vpn/config.json b/apps/transmission-vpn/config.json old mode 100644 new mode 100755 diff --git a/apps/transmission-vpn/data/config/.gitkeep b/apps/transmission-vpn/data/config/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/transmission-vpn/docker-compose.yml b/apps/transmission-vpn/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/transmission-vpn/metadata/description.md b/apps/transmission-vpn/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/transmission-vpn/metadata/logo.jpg b/apps/transmission-vpn/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/transmission/config.json b/apps/transmission/config.json old mode 100644 new mode 100755 diff --git a/apps/transmission/data/config/.gitkeep b/apps/transmission/data/config/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/transmission/docker-compose.yml b/apps/transmission/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/transmission/metadata/description.md b/apps/transmission/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/transmission/metadata/logo.jpg b/apps/transmission/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/trilium/config.json b/apps/trilium/config.json old mode 100644 new mode 100755 diff --git a/apps/trilium/docker-compose.yml b/apps/trilium/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/trilium/metadata/description.md b/apps/trilium/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/trilium/metadata/logo.jpg b/apps/trilium/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/tubearchivist/config.json b/apps/tubearchivist/config.json old mode 100644 new mode 100755 diff --git a/apps/tubearchivist/docker-compose.yml b/apps/tubearchivist/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/tubearchivist/metadata/description.md b/apps/tubearchivist/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/tubearchivist/metadata/logo.jpg b/apps/tubearchivist/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/umami/config.json b/apps/umami/config.json old mode 100644 new mode 100755 diff --git a/apps/umami/docker-compose.yml b/apps/umami/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/umami/metadata/description.md b/apps/umami/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/umami/metadata/logo.jpg b/apps/umami/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/unmanic/config.json b/apps/unmanic/config.json old mode 100644 new mode 100755 diff --git a/apps/unmanic/docker-compose.yml b/apps/unmanic/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/unmanic/metadata/description.md b/apps/unmanic/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/unmanic/metadata/logo.jpg b/apps/unmanic/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/uptime-kuma/config.json b/apps/uptime-kuma/config.json old mode 100644 new mode 100755 diff --git a/apps/uptime-kuma/docker-compose.yml b/apps/uptime-kuma/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/uptime-kuma/metadata/description.md b/apps/uptime-kuma/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/uptime-kuma/metadata/logo.jpg b/apps/uptime-kuma/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/vaultwarden/config.json b/apps/vaultwarden/config.json old mode 100644 new mode 100755 diff --git a/apps/vaultwarden/docker-compose.yml b/apps/vaultwarden/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/vaultwarden/metadata/description.md b/apps/vaultwarden/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/vaultwarden/metadata/logo.jpg b/apps/vaultwarden/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/viewtube/config.json b/apps/viewtube/config.json old mode 100644 new mode 100755 diff --git a/apps/viewtube/docker-compose.arm64.yml b/apps/viewtube/docker-compose.arm64.yml old mode 100644 new mode 100755 diff --git a/apps/viewtube/docker-compose.yml b/apps/viewtube/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/viewtube/metadata/description.md b/apps/viewtube/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/viewtube/metadata/logo.jpg b/apps/viewtube/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/vikunja/config.json b/apps/vikunja/config.json old mode 100644 new mode 100755 diff --git a/apps/vikunja/data/proxy/nginx.conf b/apps/vikunja/data/proxy/nginx.conf old mode 100644 new mode 100755 diff --git a/apps/vikunja/docker-compose.yml b/apps/vikunja/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/vikunja/metadata/description.md b/apps/vikunja/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/vikunja/metadata/logo.jpg b/apps/vikunja/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wallos/config.json b/apps/wallos/config.json old mode 100644 new mode 100755 diff --git a/apps/wallos/docker-compose.yml b/apps/wallos/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wallos/metadata/description.md b/apps/wallos/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wallos/metadata/logo.jpg b/apps/wallos/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wekan/config.json b/apps/wekan/config.json old mode 100644 new mode 100755 diff --git a/apps/wekan/data/wekan/attachments/.gitkeep b/apps/wekan/data/wekan/attachments/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/wekan/docker-compose.yml b/apps/wekan/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wekan/metadata/description.md b/apps/wekan/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wekan/metadata/logo.jpg b/apps/wekan/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wg-easy/config.json b/apps/wg-easy/config.json old mode 100644 new mode 100755 diff --git a/apps/wg-easy/data/.gitkeep b/apps/wg-easy/data/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/wg-easy/docker-compose.yml b/apps/wg-easy/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wg-easy/metadata/description.md b/apps/wg-easy/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wg-easy/metadata/logo.jpg b/apps/wg-easy/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/whisparr/config.json b/apps/whisparr/config.json old mode 100644 new mode 100755 diff --git a/apps/whisparr/docker-compose.yml b/apps/whisparr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/whisparr/metadata/description.md b/apps/whisparr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/whisparr/metadata/logo.jpg b/apps/whisparr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/whoogle/config.json b/apps/whoogle/config.json old mode 100644 new mode 100755 diff --git a/apps/whoogle/docker-compose.yml b/apps/whoogle/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/whoogle/metadata/description.md b/apps/whoogle/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/whoogle/metadata/logo.jpg b/apps/whoogle/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wikijs/config.json b/apps/wikijs/config.json old mode 100644 new mode 100755 diff --git a/apps/wikijs/docker-compose.yml b/apps/wikijs/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wikijs/metadata/description.md b/apps/wikijs/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wikijs/metadata/logo.jpg b/apps/wikijs/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/windows/config.json b/apps/windows/config.json old mode 100644 new mode 100755 diff --git a/apps/windows/docker-compose.yml b/apps/windows/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/windows/metadata/description.md b/apps/windows/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/windows/metadata/logo.jpg b/apps/windows/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wizarr/config.json b/apps/wizarr/config.json old mode 100644 new mode 100755 diff --git a/apps/wizarr/docker-compose.yml b/apps/wizarr/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wizarr/metadata/description.md b/apps/wizarr/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wizarr/metadata/logo.jpg b/apps/wizarr/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress/config.json b/apps/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress/docker-compose.yml b/apps/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress/metadata/description.md b/apps/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress/metadata/logo.jpg b/apps/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/config.json b/apps/wordpress_aidanras/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/docker-compose.yml b/apps/wordpress_aidanras/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/metadata/description.md b/apps/wordpress_aidanras/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/metadata/logo.jpg b/apps/wordpress_aidanras/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/wordpress/config.json b/apps/wordpress_aidanras/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/wordpress/docker-compose.yml b/apps/wordpress_aidanras/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/wordpress/metadata/description.md b/apps/wordpress_aidanras/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_aidanras/wordpress/metadata/logo.jpg b/apps/wordpress_aidanras/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/config.json b/apps/wordpress_aweggly/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/docker-compose.yml b/apps/wordpress_aweggly/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/metadata/description.md b/apps/wordpress_aweggly/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/metadata/logo.jpg b/apps/wordpress_aweggly/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/wordpress/config.json b/apps/wordpress_aweggly/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/wordpress/docker-compose.yml b/apps/wordpress_aweggly/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/wordpress/metadata/description.md b/apps/wordpress_aweggly/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_aweggly/wordpress/metadata/logo.jpg b/apps/wordpress_aweggly/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/config.json b/apps/wordpress_blondesagainsttrump/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/docker-compose.yml b/apps/wordpress_blondesagainsttrump/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/metadata/description.md b/apps/wordpress_blondesagainsttrump/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/metadata/logo.jpg b/apps/wordpress_blondesagainsttrump/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/wordpress/config.json b/apps/wordpress_blondesagainsttrump/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml b/apps/wordpress_blondesagainsttrump/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md b/apps/wordpress_blondesagainsttrump/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg b/apps/wordpress_blondesagainsttrump/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/config.json b/apps/wordpress_corbieplays/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/docker-compose.yml b/apps/wordpress_corbieplays/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/metadata/description.md b/apps/wordpress_corbieplays/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/metadata/logo.jpg b/apps/wordpress_corbieplays/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress/config.json b/apps/wordpress_corbieplays/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress/docker-compose.yml b/apps/wordpress_corbieplays/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress/metadata/description.md b/apps/wordpress_corbieplays/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/config.json b/apps/wordpress_corbieplays/wordpress_rasies/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml b/apps/wordpress_corbieplays/wordpress_rasies/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md b/apps/wordpress_corbieplays/wordpress_rasies/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress_rasies/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_corbieplays/wordpress_rasies/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/config.json b/apps/wordpress_cuddleconfessions/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/docker-compose.yml b/apps/wordpress_cuddleconfessions/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/metadata/description.md b/apps/wordpress_cuddleconfessions/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/metadata/logo.jpg b/apps/wordpress_cuddleconfessions/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/wordpress/config.json b/apps/wordpress_cuddleconfessions/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml b/apps/wordpress_cuddleconfessions/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/wordpress/metadata/description.md b/apps/wordpress_cuddleconfessions/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg b/apps/wordpress_cuddleconfessions/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/config.json b/apps/wordpress_desirearts/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/docker-compose.yml b/apps/wordpress_desirearts/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/metadata/description.md b/apps/wordpress_desirearts/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/metadata/logo.jpg b/apps/wordpress_desirearts/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/wordpress/config.json b/apps/wordpress_desirearts/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/wordpress/docker-compose.yml b/apps/wordpress_desirearts/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/wordpress/metadata/description.md b/apps/wordpress_desirearts/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_desirearts/wordpress/metadata/logo.jpg b/apps/wordpress_desirearts/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/config.json b/apps/wordpress_elderseth/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/metadata/description.md b/apps/wordpress_elderseth/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/metadata/logo.jpg b/apps/wordpress_elderseth/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress/config.json b/apps/wordpress_elderseth/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress/docker-compose.yml b/apps/wordpress_elderseth/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress/metadata/description.md b/apps/wordpress_elderseth/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/config.json b/apps/wordpress_elderseth/wordpress_rasies/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml b/apps/wordpress_elderseth/wordpress_rasies/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/metadata/description.md b/apps/wordpress_elderseth/wordpress_rasies/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress_rasies/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json b/apps/wordpress_elderseth/wordpress_rasies/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_elderseth/wordpress_rasies/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_elderseth/wordpress_rasies/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/config.json b/apps/wordpress_hometownheartstrings/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/docker-compose.yml b/apps/wordpress_hometownheartstrings/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/metadata/description.md b/apps/wordpress_hometownheartstrings/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/metadata/logo.jpg b/apps/wordpress_hometownheartstrings/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/wordpress/config.json b/apps/wordpress_hometownheartstrings/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml b/apps/wordpress_hometownheartstrings/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/wordpress/metadata/description.md b/apps/wordpress_hometownheartstrings/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg b/apps/wordpress_hometownheartstrings/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/config.json b/apps/wordpress_kiracuts/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/docker-compose.yml b/apps/wordpress_kiracuts/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/metadata/description.md b/apps/wordpress_kiracuts/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/metadata/logo.jpg b/apps/wordpress_kiracuts/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/wordpress/config.json b/apps/wordpress_kiracuts/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/wordpress/docker-compose.yml b/apps/wordpress_kiracuts/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/wordpress/metadata/description.md b/apps/wordpress_kiracuts/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_kiracuts/wordpress/metadata/logo.jpg b/apps/wordpress_kiracuts/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/config.json b/apps/wordpress_lickingvape/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/docker-compose.yml b/apps/wordpress_lickingvape/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/metadata/description.md b/apps/wordpress_lickingvape/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/metadata/logo.jpg b/apps/wordpress_lickingvape/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/wordpress/config.json b/apps/wordpress_lickingvape/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/wordpress/docker-compose.yml b/apps/wordpress_lickingvape/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/wordpress/metadata/description.md b/apps/wordpress_lickingvape/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_lickingvape/wordpress/metadata/logo.jpg b/apps/wordpress_lickingvape/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/config.json b/apps/wordpress_marleebean/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/metadata/description.md b/apps/wordpress_marleebean/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/metadata/logo.jpg b/apps/wordpress_marleebean/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/wordpress/config.json b/apps/wordpress_marleebean/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/wordpress/docker-compose.yml b/apps/wordpress_marleebean/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/wordpress/metadata/description.md b/apps/wordpress_marleebean/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_marleebean/wordpress/metadata/logo.jpg b/apps/wordpress_marleebean/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/config.json b/apps/wordpress_rasies/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/metadata/description.md b/apps/wordpress_rasies/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/metadata/logo.jpg b/apps/wordpress_rasies/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/wordpress/config.json b/apps/wordpress_rasies/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_rasies/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_rasies/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_rasies/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/config.json b/apps/wordpress_stepparentpath/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/docker-compose.yml b/apps/wordpress_stepparentpath/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/metadata/description.md b/apps/wordpress_stepparentpath/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/metadata/logo.jpg b/apps/wordpress_stepparentpath/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/wordpress/config.json b/apps/wordpress_stepparentpath/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/wordpress/docker-compose.yml b/apps/wordpress_stepparentpath/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/wordpress/metadata/description.md b/apps/wordpress_stepparentpath/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg b/apps/wordpress_stepparentpath/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/config.json b/apps/wordpress_visionarytalentkids/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/docker-compose.yml b/apps/wordpress_visionarytalentkids/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/metadata/description.md b/apps/wordpress_visionarytalentkids/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/metadata/logo.jpg b/apps/wordpress_visionarytalentkids/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/wordpress/config.json b/apps/wordpress_visionarytalentkids/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml b/apps/wordpress_visionarytalentkids/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/wordpress/metadata/description.md b/apps/wordpress_visionarytalentkids/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg b/apps/wordpress_visionarytalentkids/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/metadata/description.md b/apps/wordpress_yoginilist/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/metadata/logo.jpg b/apps/wordpress_yoginilist/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/wordpress/config.json b/apps/wordpress_yoginilist/wordpress/config.json old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/wordpress/docker-compose.yml b/apps/wordpress_yoginilist/wordpress/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/wordpress/metadata/description.md b/apps/wordpress_yoginilist/wordpress/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg b/apps/wordpress_yoginilist/wordpress/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/your-spotify/config.json b/apps/your-spotify/config.json old mode 100644 new mode 100755 diff --git a/apps/your-spotify/docker-compose.yml b/apps/your-spotify/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/your-spotify/metadata/description.md b/apps/your-spotify/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/your-spotify/metadata/logo.jpg b/apps/your-spotify/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/zerotier/config.json b/apps/zerotier/config.json old mode 100644 new mode 100755 diff --git a/apps/zerotier/docker-compose.yml b/apps/zerotier/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/zerotier/metadata/description.md b/apps/zerotier/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/zerotier/metadata/logo.jpg b/apps/zerotier/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/zigbee2mqtt/data/.gitkeep b/apps/zigbee2mqtt/data/.gitkeep old mode 100644 new mode 100755 diff --git a/apps/zigbee2mqtt/docker-compose.yml b/apps/zigbee2mqtt/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/zigbee2mqtt/metadata/description.md b/apps/zigbee2mqtt/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/zigbee2mqtt/metadata/logo.jpg b/apps/zigbee2mqtt/metadata/logo.jpg old mode 100644 new mode 100755 diff --git a/apps/zipline/config.json b/apps/zipline/config.json old mode 100644 new mode 100755 diff --git a/apps/zipline/docker-compose.yml b/apps/zipline/docker-compose.yml old mode 100644 new mode 100755 diff --git a/apps/zipline/metadata/description.md b/apps/zipline/metadata/description.md old mode 100644 new mode 100755 diff --git a/apps/zipline/metadata/logo.jpg b/apps/zipline/metadata/logo.jpg old mode 100644 new mode 100755 From b37c60f0151eedffd265ffeed7d02f447bba8b06 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 13:52:28 +0000 Subject: [PATCH 029/224] Add wordpress_elderseth --- apps/wordpress_marleebean/docker-compose.yml | 48 ++++++++++---------- apps/wordpress_yoginilist/config.json | 2 +- apps/wordpress_yoginilist/docker-compose.yml | 44 +++++++++--------- 3 files changed, 47 insertions(+), 47 deletions(-) diff --git a/apps/wordpress_marleebean/docker-compose.yml b/apps/wordpress_marleebean/docker-compose.yml index 60890a16a5..7734cad834 100755 --- a/apps/wordpress_marleebean/docker-compose.yml +++ b/apps/wordpress_marleebean/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress_rasies: - container_name: wordpress_rasies + wordpress_marleebean: + container_name: wordpress_marleebean image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_rasies-db + - WORDPRESS_DB_HOST=wordpress_marleebean-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_rasies-db + - wordpress_marleebean-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_marleebean-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_marleebean.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress_marleebean-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-insecure.entrypoints: web + traefik.http.routers.wordpress_marleebean-insecure.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-insecure.middlewares: wordpress_marleebean-redirect # Websecure - traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies.entrypoints: websecure - traefik.http.routers.wordpress_rasies.service: wordpress_rasies - traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + traefik.http.routers.wordpress_marleebean.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_marleebean.entrypoints: websecure + traefik.http.routers.wordpress_marleebean.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress_marleebean-local-insecure.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-local-insecure.entrypoints: web + traefik.http.routers.wordpress_marleebean-local-insecure.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-local-insecure.middlewares: wordpress_marleebean-redirect # Local domain secure - traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local.entrypoints: websecure - traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local.tls: true + traefik.http.routers.wordpress_marleebean-local.rule: Host(`wordpress_marleebean.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_marleebean-local.entrypoints: websecure + traefik.http.routers.wordpress_marleebean-local.service: wordpress_marleebean + traefik.http.routers.wordpress_marleebean-local.tls: true runtipi.managed: true - wordpress_rasies-db: - container_name: wordpress_rasies-db + wordpress_marleebean-db: + container_name: wordpress_marleebean-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} diff --git a/apps/wordpress_yoginilist/config.json b/apps/wordpress_yoginilist/config.json index e379e9230b..c9e7d99031 100755 --- a/apps/wordpress_yoginilist/config.json +++ b/apps/wordpress_yoginilist/config.json @@ -1,7 +1,7 @@ { "name": "WordPress YoginiList", "available": true, - "port": 8233, + "port": 8232, "exposable": true, "id": "wordpress_yoginilist", "description": "WordPress is a popular content management system for creating websites and blogs.", diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml index 1bfcd817c8..04f87d67b2 100755 --- a/apps/wordpress_yoginilist/docker-compose.yml +++ b/apps/wordpress_yoginilist/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: - wordpress_stepparentpath: + wordpress_yoginilist: container_name: wordpress_yoginilist image: wordpress:6.6.1 environment: @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_stepparentpath-db + - wordpress_yoginilist-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_stepparentpath-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_stepparentpath.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_yoginilist-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_yoginilist.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_stepparentpath-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-insecure.entrypoints: web - traefik.http.routers.wordpress_stepparentpath-insecure.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath-insecure.middlewares: wordpress_stepparentpath-redirect + traefik.http.routers.wordpress_yoginilist-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-insecure.entrypoints: web + traefik.http.routers.wordpress_yoginilist-insecure.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-insecure.middlewares: wordpress_yoginilist-redirect # Websecure - traefik.http.routers.wordpress_stepparentpath.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath.entrypoints: websecure - traefik.http.routers.wordpress_stepparentpath.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath.tls.certresolver: myresolver + traefik.http.routers.wordpress_yoginilist.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist.entrypoints: websecure + traefik.http.routers.wordpress_yoginilist.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_stepparentpath-local-insecure.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-local-insecure.entrypoints: web - traefik.http.routers.wordpress_stepparentpath-local-insecure.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath-local-insecure.middlewares: wordpress_stepparentpath-redirect + traefik.http.routers.wordpress_yoginilist-local-insecure.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-local-insecure.entrypoints: web + traefik.http.routers.wordpress_yoginilist-local-insecure.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-local-insecure.middlewares: wordpress_yoginilist-redirect # Local domain secure - traefik.http.routers.wordpress_stepparentpath-local.rule: Host(`wordpress_stepparentpath.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_stepparentpath-local.entrypoints: websecure - traefik.http.routers.wordpress_stepparentpath-local.service: wordpress_stepparentpath - traefik.http.routers.wordpress_stepparentpath-local.tls: true + traefik.http.routers.wordpress_yoginilist-local.rule: Host(`wordpress_yoginilist.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_yoginilist-local.entrypoints: websecure + traefik.http.routers.wordpress_yoginilist-local.service: wordpress_yoginilist + traefik.http.routers.wordpress_yoginilist-local.tls: true runtipi.managed: true - wordpress_stepparentpath-db: - container_name: wordpress_stepparentpath-db + wordpress_yoginilist-db: + container_name: wordpress_yoginilist-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} From 82c1fc1a98ee4468716f0977c01059410cc67060 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 14:06:11 +0000 Subject: [PATCH 030/224] Add wordpress_elderseth --- apps/wordpress_yoginilist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_yoginilist/docker-compose.yml b/apps/wordpress_yoginilist/docker-compose.yml index 04f87d67b2..e3428abeb5 100755 --- a/apps/wordpress_yoginilist/docker-compose.yml +++ b/apps/wordpress_yoginilist/docker-compose.yml @@ -5,7 +5,7 @@ services: container_name: wordpress_yoginilist image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_stepparentpah-db + - WORDPRESS_DB_HOST=wordpress_yoginilist-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} From 1a65b67ba37594b462a6127992687fee5d3ba116 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 18 Aug 2024 17:44:08 +0000 Subject: [PATCH 031/224] Add wordpress_elderseth --- apps/wordpress_elderseth/config.json | 6 +-- apps/wordpress_elderseth/docker-compose.yml | 48 ++++++++++----------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/apps/wordpress_elderseth/config.json b/apps/wordpress_elderseth/config.json index fd477ca33d..ee7362d56c 100755 --- a/apps/wordpress_elderseth/config.json +++ b/apps/wordpress_elderseth/config.json @@ -1,9 +1,9 @@ { - "name": "WordPress Rasies", + "name": "WordPress Elderseth", "available": true, - "port": 8214, + "port": 8235, "exposable": true, - "id": "wordpress_rasies", + "id": "wordpress_elderseth", "description": "WordPress is a popular content management system for creating websites and blogs.", "tipi_version": 10, "version": "6.6.1", diff --git a/apps/wordpress_elderseth/docker-compose.yml b/apps/wordpress_elderseth/docker-compose.yml index 60890a16a5..b4bfec9013 100755 --- a/apps/wordpress_elderseth/docker-compose.yml +++ b/apps/wordpress_elderseth/docker-compose.yml @@ -1,11 +1,11 @@ version: "3.9" services: - wordpress_rasies: - container_name: wordpress_rasies + wordpress_elderseth: + container_name: wordpress_elderseth image: wordpress:6.6.1 environment: - - WORDPRESS_DB_HOST=wordpress_rasies-db + - WORDPRESS_DB_HOST=wordpress_elderseth-db - WORDPRESS_DB_NAME=wordpress - WORDPRESS_DB_USER=tipi - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} @@ -15,37 +15,37 @@ services: - ${APP_PORT}:80 restart: unless-stopped depends_on: - - wordpress_rasies-db + - wordpress_elderseth-db networks: - tipi_main_network labels: # Main traefik.enable: true - traefik.http.middlewares.wordpress_rasies-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress_rasies.loadbalancer.server.port: 80 + traefik.http.middlewares.wordpress_elderseth-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_elderseth.loadbalancer.server.port: 80 # Web - traefik.http.routers.wordpress_rasies-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress_elderseth-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-insecure.entrypoints: web + traefik.http.routers.wordpress_elderseth-insecure.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-insecure.middlewares: wordpress_elderseth-redirect # Websecure - traefik.http.routers.wordpress_rasies.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress_rasies.entrypoints: websecure - traefik.http.routers.wordpress_rasies.service: wordpress_rasies - traefik.http.routers.wordpress_rasies.tls.certresolver: myresolver + traefik.http.routers.wordpress_elderseth.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_elderseth.entrypoints: websecure + traefik.http.routers.wordpress_elderseth.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth.tls.certresolver: myresolver # Local domain - traefik.http.routers.wordpress_rasies-local-insecure.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local-insecure.entrypoints: web - traefik.http.routers.wordpress_rasies-local-insecure.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local-insecure.middlewares: wordpress_rasies-redirect + traefik.http.routers.wordpress_elderseth-local-insecure.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-local-insecure.entrypoints: web + traefik.http.routers.wordpress_elderseth-local-insecure.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-local-insecure.middlewares: wordpress_elderseth-redirect # Local domain secure - traefik.http.routers.wordpress_rasies-local.rule: Host(`wordpress_rasies.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress_rasies-local.entrypoints: websecure - traefik.http.routers.wordpress_rasies-local.service: wordpress_rasies - traefik.http.routers.wordpress_rasies-local.tls: true + traefik.http.routers.wordpress_elderseth-local.rule: Host(`wordpress_elderseth.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_elderseth-local.entrypoints: websecure + traefik.http.routers.wordpress_elderseth-local.service: wordpress_elderseth + traefik.http.routers.wordpress_elderseth-local.tls: true runtipi.managed: true - wordpress_rasies-db: - container_name: wordpress_rasies-db + wordpress_elderseth-db: + container_name: wordpress_elderseth-db image: mariadb:11.1.3 environment: - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} From 8db2943a0abc5a7fa1e1fea40aa8334d5f02e0ae Mon Sep 17 00:00:00 2001 From: root Date: Wed, 21 Aug 2024 16:21:50 +0000 Subject: [PATCH 032/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index 234460709f..cda190440c 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,6 +6,8 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data + - ${APP_DATA_DIR}/data/data/books:/books + - ${APP_DATA_DIR}/data/data/comics:/comics environment: - TZ=${TZ} ports: From 5b8b6af80a2dc675376c2d665d651320a96c6bd5 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Wed, 21 Aug 2024 19:12:39 +0000 Subject: [PATCH 033/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index cda190440c..862189db28 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,8 +6,8 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data - - ${APP_DATA_DIR}/data/data/books:/books - - ${APP_DATA_DIR}/data/data/comics:/comics + - $/mnt/blackfrancis/media/books:/books + - $/mnt/blackfrancis/media/comics:/comics environment: - TZ=${TZ} ports: From d3ba7ddbae6258d45af8ae38ec6e963503c0cd54 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 21 Aug 2024 19:27:32 +0000 Subject: [PATCH 034/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index 862189db28..9c19276aab 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,8 +6,8 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data - - $/mnt/blackfrancis/media/books:/books - - $/mnt/blackfrancis/media/comics:/comics + - $media/books:/books + - $media/comics:/comics environment: - TZ=${TZ} ports: From 4ccfdd004fda7f1a48b5e1153fddef84e0d5af3b Mon Sep 17 00:00:00 2001 From: root Date: Wed, 21 Aug 2024 19:33:33 +0000 Subject: [PATCH 035/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index 9c19276aab..3cd4e945f7 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,8 +6,8 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data - - $media/books:/books - - $media/comics:/comics + - $media/data/books:/books + - $media/data/comics:/comics environment: - TZ=${TZ} ports: From aa7151d34ec339d1c56f120dc3593bcbff2ff553 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 21 Aug 2024 20:04:10 +0000 Subject: [PATCH 036/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index 3cd4e945f7..8c62b5e5f9 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,8 +6,8 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data - - $media/data/books:/books - - $media/data/comics:/comics + - /media/data/books:/books + - /media/data/comics:/comics environment: - TZ=${TZ} ports: From 14b440f52452fe89360b7dd48d890567d212bd78 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 22 Aug 2024 01:38:04 +0000 Subject: [PATCH 037/224] Add wordpress_elderseth --- apps/komga/docker-compose.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml index 8c62b5e5f9..a6b778453c 100755 --- a/apps/komga/docker-compose.yml +++ b/apps/komga/docker-compose.yml @@ -6,8 +6,7 @@ services: volumes: - ${APP_DATA_DIR}/data/config:/config - ${APP_DATA_DIR}/data/data:/data - - /media/data/books:/books - - /media/data/comics:/comics + - /media/data/:/media environment: - TZ=${TZ} ports: From 6bbefac6a00c156a73cd182f12b54ffffc551b0a Mon Sep 17 00:00:00 2001 From: root Date: Thu, 22 Aug 2024 21:26:27 +0000 Subject: [PATCH 038/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 01086aff5a..b130fba219 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -11,7 +11,9 @@ services: - ${ROOT_FOLDER_HOST}/media/data/books:/books - ${ROOT_FOLDER_HOST}/media/data/comics:/comics - ${ROOT_FOLDER_HOST}/media/data/manga:/manga - environment: + - ${ROOT_FOLDER_HOST}/media/data/magazines:/magazines + - ${ROOT_FOLDER_HOST}/media/data/magazines_other:/magazines_other + environment: - TZ=${TZ} restart: unless-stopped networks: From f9839e3d0d39e9ae0dc4b840cf6dd46fecb9a643 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 23 Aug 2024 14:19:23 +0000 Subject: [PATCH 039/224] Add wordpress_elderseth --- apps/syncthing/docker-compose.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/syncthing/docker-compose.yml b/apps/syncthing/docker-compose.yml index 0c42f7c3f6..57b76cbfaa 100755 --- a/apps/syncthing/docker-compose.yml +++ b/apps/syncthing/docker-compose.yml @@ -12,6 +12,9 @@ services: volumes: - ${APP_DATA_DIR}/data:/var/syncthing - ${ROOT_FOLDER_HOST}/media/data/syncthing:/media/data/syncthing + - ${ROOT_FOLDER_HOST}/media/data/rasies.com:/media/data/rasies.com + - ${ROOT_FOLDER_HOST}/media/data/elderseth.com:/media/data/elderseth.com + - ${ROOT_FOLDER_HOST}/media/data/stepparentpath.com:/media/data/stepparentpath.com ports: - ${APP_PORT}:8384 - 22000:22000/tcp # TCP file transfers From 0fb9ece42c8838e04a4d6d9bb8edb87bcaba6bd7 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 23 Aug 2024 16:02:44 +0000 Subject: [PATCH 040/224] Add wordpress_elderseth --- apps/syncthing/docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/syncthing/docker-compose.yml b/apps/syncthing/docker-compose.yml index 57b76cbfaa..c174556159 100755 --- a/apps/syncthing/docker-compose.yml +++ b/apps/syncthing/docker-compose.yml @@ -15,6 +15,7 @@ services: - ${ROOT_FOLDER_HOST}/media/data/rasies.com:/media/data/rasies.com - ${ROOT_FOLDER_HOST}/media/data/elderseth.com:/media/data/elderseth.com - ${ROOT_FOLDER_HOST}/media/data/stepparentpath.com:/media/data/stepparentpath.com + - ${ROOT_FOLDER_HOST}/media/data/lickingvape.com:/media/data/lickingvape.com ports: - ${APP_PORT}:8384 - 22000:22000/tcp # TCP file transfers From 368cde8e250de7c215422ad32a008b3b5893a177 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 28 Aug 2024 04:01:41 +0000 Subject: [PATCH 041/224] Add wordpress_elderseth --- apps/wordpress_tvcoffee/config.json | 30 +++++++++ apps/wordpress_tvcoffee/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_tvcoffee/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_tvcoffee/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes 8 files changed, 260 insertions(+) create mode 100755 apps/wordpress_tvcoffee/config.json create mode 100755 apps/wordpress_tvcoffee/docker-compose.yml create mode 100755 apps/wordpress_tvcoffee/metadata/description.md create mode 100755 apps/wordpress_tvcoffee/metadata/logo.jpg create mode 100755 apps/wordpress_tvcoffee/wordpress/config.json create mode 100755 apps/wordpress_tvcoffee/wordpress/docker-compose.yml create mode 100755 apps/wordpress_tvcoffee/wordpress/metadata/description.md create mode 100755 apps/wordpress_tvcoffee/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_tvcoffee/config.json b/apps/wordpress_tvcoffee/config.json new file mode 100755 index 0000000000..20be773e78 --- /dev/null +++ b/apps/wordpress_tvcoffee/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress TV Coffee Co.", + "available": true, + "port": 8237, + "exposable": true, + "id": "wordpress_tvcoffee", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_tvcoffee/docker-compose.yml b/apps/wordpress_tvcoffee/docker-compose.yml new file mode 100755 index 0000000000..9fdb4fd1a9 --- /dev/null +++ b/apps/wordpress_tvcoffee/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_tvcoffee: + container_name: wordpress_tvcoffee + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_tvcoffee-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_tvcoffee-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_tvcoffee-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_tvcoffee.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_tvcoffee-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_tvcoffee-insecure.entrypoints: web + traefik.http.routers.wordpress_tvcoffee-insecure.service: wordpress_tvcoffee + traefik.http.routers.wordpress_tvcoffee-insecure.middlewares: wordpress_tvcoffee-redirect + # Websecure + traefik.http.routers.wordpress_tvcoffee.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_tvcoffee.entrypoints: websecure + traefik.http.routers.wordpress_tvcoffee.service: wordpress_tvcoffee + traefik.http.routers.wordpress_tvcoffee.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_tvcoffee-local-insecure.rule: Host(`wordpress_tvcoffee.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_tvcoffee-local-insecure.entrypoints: web + traefik.http.routers.wordpress_tvcoffee-local-insecure.service: wordpress_tvcoffee + traefik.http.routers.wordpress_tvcoffee-local-insecure.middlewares: wordpress_tvcoffee-redirect + # Local domain secure + traefik.http.routers.wordpress_tvcoffee-local.rule: Host(`wordpress_tvcoffee.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_tvcoffee-local.entrypoints: websecure + traefik.http.routers.wordpress_tvcoffee-local.service: wordpress_tvcoffee + traefik.http.routers.wordpress_tvcoffee-local.tls: true + runtipi.managed: true + wordpress_tvcoffee-db: + container_name: wordpress_tvcoffee-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_tvcoffee/metadata/description.md b/apps/wordpress_tvcoffee/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_tvcoffee/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_tvcoffee/metadata/logo.jpg b/apps/wordpress_tvcoffee/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_tvcoffee/wordpress/config.json b/apps/wordpress_tvcoffee/wordpress/config.json new file mode 100755 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_tvcoffee/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_tvcoffee/wordpress/docker-compose.yml b/apps/wordpress_tvcoffee/wordpress/docker-compose.yml new file mode 100755 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_tvcoffee/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_tvcoffee/wordpress/metadata/description.md b/apps/wordpress_tvcoffee/wordpress/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_tvcoffee/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_tvcoffee/wordpress/metadata/logo.jpg b/apps/wordpress_tvcoffee/wordpress/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 261dce571f15102b7c04add7f27ed44bae077dbf Mon Sep 17 00:00:00 2001 From: root Date: Wed, 28 Aug 2024 04:18:08 +0000 Subject: [PATCH 042/224] Add wordpress_elderseth --- apps/syncthing/docker-compose.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/syncthing/docker-compose.yml b/apps/syncthing/docker-compose.yml index c174556159..9d48e3e9a2 100755 --- a/apps/syncthing/docker-compose.yml +++ b/apps/syncthing/docker-compose.yml @@ -11,11 +11,11 @@ services: - PGID=1000 volumes: - ${APP_DATA_DIR}/data:/var/syncthing - - ${ROOT_FOLDER_HOST}/media/data/syncthing:/media/data/syncthing - - ${ROOT_FOLDER_HOST}/media/data/rasies.com:/media/data/rasies.com - - ${ROOT_FOLDER_HOST}/media/data/elderseth.com:/media/data/elderseth.com - - ${ROOT_FOLDER_HOST}/media/data/stepparentpath.com:/media/data/stepparentpath.com - - ${ROOT_FOLDER_HOST}/media/data/lickingvape.com:/media/data/lickingvape.com + - ${ROOT_FOLDER_HOST}/media/data/syncthing:/syncthing + - ${ROOT_FOLDER_HOST}/media/data/wordpress_all/rasies.com:/rasies.com + - ${ROOT_FOLDER_HOST}/media/data/wordpress_all/elderseth.com:/elderseth.com + - ${ROOT_FOLDER_HOST}/media/data/wordpress_all/stepparentpath.com:/stepparentpath.com + - ${ROOT_FOLDER_HOST}/media/data/wordpress_all/tvcoffee.com:/tvcoffee.com ports: - ${APP_PORT}:8384 - 22000:22000/tcp # TCP file transfers From 18a7e547ad352b2557b9cd7440bc4b8946584ab9 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 30 Aug 2024 21:17:53 +0000 Subject: [PATCH 043/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index b130fba219..8f45ef77a0 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,5 +1,4 @@ version: "3.9" - services: kavita: container_name: kavita From 85352654c6d062fe922b9080eced5584932dce43 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 30 Aug 2024 21:27:12 +0000 Subject: [PATCH 044/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 8f45ef77a0..2bd9c31cfc 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,5 +1,4 @@ version: "3.9" -services: kavita: container_name: kavita image: jvmilazz0/kavita:0.8.2 From 15e2fd733179a8cccf248e5764d6fec7c725544c Mon Sep 17 00:00:00 2001 From: root Date: Fri, 30 Aug 2024 21:28:44 +0000 Subject: [PATCH 045/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 2bd9c31cfc..6b529dbf74 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,4 +1,5 @@ version: "3.9" +services: kavita: container_name: kavita image: jvmilazz0/kavita:0.8.2 @@ -9,8 +10,6 @@ version: "3.9" - ${ROOT_FOLDER_HOST}/media/data/books:/books - ${ROOT_FOLDER_HOST}/media/data/comics:/comics - ${ROOT_FOLDER_HOST}/media/data/manga:/manga - - ${ROOT_FOLDER_HOST}/media/data/magazines:/magazines - - ${ROOT_FOLDER_HOST}/media/data/magazines_other:/magazines_other environment: - TZ=${TZ} restart: unless-stopped From 53b498ee81aa76ed6388929d285bd82e1d2de068 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 00:27:21 +0000 Subject: [PATCH 046/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 6b529dbf74..6018aed31f 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,4 +1,7 @@ version: "3.9" + + + services: kavita: container_name: kavita From c89ed524245dbe11d35ce5d027adcb805e985b7e Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 02:41:13 +0000 Subject: [PATCH 047/224] Add wordpress_elderseth --- apps/wordpress_rasies/data/nginx/nginx.conf | 6 ++ apps/wordpress_rasies/wordpress/config.json | 30 --------- .../wordpress/docker-compose.yml | 61 ------------------ .../wordpress/metadata/description.md | 39 ----------- .../wordpress/metadata/logo.jpg | Bin 15007 -> 0 bytes 5 files changed, 6 insertions(+), 130 deletions(-) create mode 100644 apps/wordpress_rasies/data/nginx/nginx.conf delete mode 100755 apps/wordpress_rasies/wordpress/config.json delete mode 100755 apps/wordpress_rasies/wordpress/docker-compose.yml delete mode 100755 apps/wordpress_rasies/wordpress/metadata/description.md delete mode 100755 apps/wordpress_rasies/wordpress/metadata/logo.jpg diff --git a/apps/wordpress_rasies/data/nginx/nginx.conf b/apps/wordpress_rasies/data/nginx/nginx.conf new file mode 100644 index 0000000000..77603e0507 --- /dev/null +++ b/apps/wordpress_rasies/data/nginx/nginx.conf @@ -0,0 +1,6 @@ +server { + listen 80; + # Allow following symbolic links + disable_symlinks off; # This is the default behavior + } + diff --git a/apps/wordpress_rasies/wordpress/config.json b/apps/wordpress_rasies/wordpress/config.json deleted file mode 100755 index fd08465589..0000000000 --- a/apps/wordpress_rasies/wordpress/config.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "WordPress", - "available": true, - "port": 8213, - "exposable": true, - "id": "wordpress", - "description": "WordPress is a popular content management system for creating websites and blogs.", - "tipi_version": 10, - "version": "6.6.1", - "categories": ["social"], - "short_desc": "Popular CMS for websites and blogs", - "author": "WordPress.org", - "source": "https://github.com/WordPress/WordPress", - "website": "https://wordpress.org", - "form_fields": [ - { - "type": "random", - "label": "Database Password", - "min": 32, - "env_variable": "DB_PASSWORD" - }, - { - "type": "random", - "label": "Database Root Password", - "min": 32, - "env_variable": "DB_ROOT_PASSWORD" - } - ], - "supported_architectures": ["amd64", "arm64"] -} diff --git a/apps/wordpress_rasies/wordpress/docker-compose.yml b/apps/wordpress_rasies/wordpress/docker-compose.yml deleted file mode 100755 index 9adb1f8156..0000000000 --- a/apps/wordpress_rasies/wordpress/docker-compose.yml +++ /dev/null @@ -1,61 +0,0 @@ -version: "3.9" -services: - - wordpress: - container_name: wordpress - image: wordpress:6.6.1 - environment: - - WORDPRESS_DB_HOST=wordpress-db - - WORDPRESS_DB_NAME=wordpress - - WORDPRESS_DB_USER=tipi - - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} - volumes: - - ${APP_DATA_DIR}/data/wordpress:/var/www/html - ports: - - ${APP_PORT}:80 - restart: unless-stopped - depends_on: - - wordpress-db - networks: - - tipi_main_network - labels: - # Main - traefik.enable: true - traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 - # Web - traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress-insecure.entrypoints: web - traefik.http.routers.wordpress-insecure.service: wordpress - traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect - # Websecure - traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.wordpress.entrypoints: websecure - traefik.http.routers.wordpress.service: wordpress - traefik.http.routers.wordpress.tls.certresolver: myresolver - # Local domain - traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local-insecure.entrypoints: web - traefik.http.routers.wordpress-local-insecure.service: wordpress - traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect - # Local domain secure - traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) - traefik.http.routers.wordpress-local.entrypoints: websecure - traefik.http.routers.wordpress-local.service: wordpress - traefik.http.routers.wordpress-local.tls: true - runtipi.managed: true - wordpress-db: - container_name: wordpress-db - image: mariadb:11.1.3 - environment: - - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} - - MYSQL_DATABASE=wordpress - - MYSQL_USER=tipi - - MYSQL_PASSWORD=${DB_PASSWORD} - volumes: - - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql - restart: unless-stopped - networks: - - tipi_main_network - labels: - runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_rasies/wordpress/metadata/description.md b/apps/wordpress_rasies/wordpress/metadata/description.md deleted file mode 100755 index 1021d7912f..0000000000 --- a/apps/wordpress_rasies/wordpress/metadata/description.md +++ /dev/null @@ -1,39 +0,0 @@ -# WordPress - The Ultimate Content Management System - -WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. - -## Unleash Your Creativity - -Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. - -## Endless Possibilities with Themes and Plugins - -WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. - -## SEO-Friendly and Mobile-Responsive - -WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. - -## Community and Support - -Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. - -## Open Source and Constant Innovation - -WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. - -## Get Started Today - -Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. - -**Official Website:** [WordPress.org](https://wordpress.org) - -**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) - -**Documentation:** [WordPress Codex](https://codex.wordpress.org/) - -**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) - -**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) - -**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_rasies/wordpress/metadata/logo.jpg b/apps/wordpress_rasies/wordpress/metadata/logo.jpg deleted file mode 100755 index 366c287c9f7d062baea1721d411736eedd6d9225..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! From 85a9e7936ebf6b6a7641c9b5575d33b6478a992b Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 02:51:10 +0000 Subject: [PATCH 048/224] Add wordpress_elderseth --- apps/wordpress_rasies/data/php/php.ini | 6 ++++++ apps/wordpress_rasies/docker-compose.yml | 1 + 2 files changed, 7 insertions(+) create mode 100644 apps/wordpress_rasies/data/php/php.ini diff --git a/apps/wordpress_rasies/data/php/php.ini b/apps/wordpress_rasies/data/php/php.ini new file mode 100644 index 0000000000..e52f60975d --- /dev/null +++ b/apps/wordpress_rasies/data/php/php.ini @@ -0,0 +1,6 @@ +file_uploads = On +memory_limit = 256M +upload_max_filesize = 64M +post_max_size = 64M +max_execution_time = 300 +max_input_time = 1000 diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 60890a16a5..dc75fb3507 100755 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -11,6 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress:/var/www/html + - data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped From 6951d89fc277934d8f406967e2c97eebaef66064 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 09:24:10 +0000 Subject: [PATCH 049/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index dc75fb3507..88f8acf62d 100755 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -11,7 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress:/var/www/html - - data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini + - $(APP_DATA_DIR)data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped From cc80f78b8b4fd09c960bc9d4429010746f5873c3 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 09:31:04 +0000 Subject: [PATCH 050/224] Add wordpress_elderseth --- apps/wordpress_rasies/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 88f8acf62d..4575b37da1 100755 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -11,7 +11,7 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress:/var/www/html - - $(APP_DATA_DIR)data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini + - $(APP_DATA_DIR)/data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped From 473a6a68d8b643d78805ddc70d84b6448c706c80 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 09:53:38 +0000 Subject: [PATCH 051/224] Add wordpress_elderseth --- apps/wordpress_rasies/data/nginx/nginx.conf | 6 ------ apps/wordpress_rasies/data/php/php.ini | 6 ------ apps/wordpress_rasies/docker-compose.yml | 1 - 3 files changed, 13 deletions(-) delete mode 100644 apps/wordpress_rasies/data/nginx/nginx.conf delete mode 100644 apps/wordpress_rasies/data/php/php.ini diff --git a/apps/wordpress_rasies/data/nginx/nginx.conf b/apps/wordpress_rasies/data/nginx/nginx.conf deleted file mode 100644 index 77603e0507..0000000000 --- a/apps/wordpress_rasies/data/nginx/nginx.conf +++ /dev/null @@ -1,6 +0,0 @@ -server { - listen 80; - # Allow following symbolic links - disable_symlinks off; # This is the default behavior - } - diff --git a/apps/wordpress_rasies/data/php/php.ini b/apps/wordpress_rasies/data/php/php.ini deleted file mode 100644 index e52f60975d..0000000000 --- a/apps/wordpress_rasies/data/php/php.ini +++ /dev/null @@ -1,6 +0,0 @@ -file_uploads = On -memory_limit = 256M -upload_max_filesize = 64M -post_max_size = 64M -max_execution_time = 300 -max_input_time = 1000 diff --git a/apps/wordpress_rasies/docker-compose.yml b/apps/wordpress_rasies/docker-compose.yml index 4575b37da1..60890a16a5 100755 --- a/apps/wordpress_rasies/docker-compose.yml +++ b/apps/wordpress_rasies/docker-compose.yml @@ -11,7 +11,6 @@ services: - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} volumes: - ${APP_DATA_DIR}/data/wordpress:/var/www/html - - $(APP_DATA_DIR)/data/wordpress/wordpress.ini:/usr/local/etc/php/conf.d/wordpress.ini ports: - ${APP_PORT}:80 restart: unless-stopped From f2c2e0ca065d24a3e04e1332b81d1bc8b87e4bcf Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 13:45:08 +0000 Subject: [PATCH 052/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 6018aed31f..7edf4caab5 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,7 +1,5 @@ version: "3.9" - - services: kavita: container_name: kavita From cc1d375803ed4042fcedd701cb26defaecbc4cdd Mon Sep 17 00:00:00 2001 From: root Date: Sat, 31 Aug 2024 18:04:31 +0000 Subject: [PATCH 053/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 7edf4caab5..68f459db9c 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,22 +1,22 @@ version: "3.9" services: - kavita: +kavita: container_name: kavita image: jvmilazz0/kavita:0.8.2 ports: - ${APP_PORT}:5000 - volumes: +volumes: - ${APP_DATA_DIR}/data/kavita-config:/kavita/config - ${ROOT_FOLDER_HOST}/media/data/books:/books - ${ROOT_FOLDER_HOST}/media/data/comics:/comics - ${ROOT_FOLDER_HOST}/media/data/manga:/manga - environment: +environment: - TZ=${TZ} - restart: unless-stopped - networks: +restart: unless-stopped +networks: - tipi_main_network - labels: +labels: # Main traefik.enable: true traefik.http.middlewares.kavita-web-redirect.redirectscheme.scheme: https @@ -41,4 +41,4 @@ services: traefik.http.routers.kavita-local.entrypoints: websecure traefik.http.routers.kavita-local.service: kavita traefik.http.routers.kavita-local.tls: true - runtipi.managed: true +runtipi.managed: true From ba0b3cded7cc51c1f53ce78ba648ce3bda8dca33 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 1 Sep 2024 01:54:00 +0000 Subject: [PATCH 054/224] Add wordpress_elderseth --- apps/kavita/docker-compose.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 68f459db9c..01086aff5a 100755 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -1,22 +1,22 @@ version: "3.9" services: -kavita: + kavita: container_name: kavita image: jvmilazz0/kavita:0.8.2 ports: - ${APP_PORT}:5000 -volumes: + volumes: - ${APP_DATA_DIR}/data/kavita-config:/kavita/config - ${ROOT_FOLDER_HOST}/media/data/books:/books - ${ROOT_FOLDER_HOST}/media/data/comics:/comics - ${ROOT_FOLDER_HOST}/media/data/manga:/manga -environment: + environment: - TZ=${TZ} -restart: unless-stopped -networks: + restart: unless-stopped + networks: - tipi_main_network -labels: + labels: # Main traefik.enable: true traefik.http.middlewares.kavita-web-redirect.redirectscheme.scheme: https @@ -41,4 +41,4 @@ labels: traefik.http.routers.kavita-local.entrypoints: websecure traefik.http.routers.kavita-local.service: kavita traefik.http.routers.kavita-local.tls: true -runtipi.managed: true + runtipi.managed: true From bc50a9bd174a70edfb6749a6b2d402401dd5c2ee Mon Sep 17 00:00:00 2001 From: root Date: Fri, 6 Sep 2024 21:25:54 +0000 Subject: [PATCH 055/224] Add wordpress_elderseth --- apps/ollama-nvidia/docker-compose.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/ollama-nvidia/docker-compose.yml b/apps/ollama-nvidia/docker-compose.yml index ac0247c733..b9194c07d7 100755 --- a/apps/ollama-nvidia/docker-compose.yml +++ b/apps/ollama-nvidia/docker-compose.yml @@ -17,6 +17,9 @@ services: count: all capabilities: - gpu + placement: + constraints: + - node.role == worker volumes: - ${APP_DATA_DIR}/data/.ollama:/root/.ollama labels: From 014d12692fe91892dfb90bd0e5dc50e1c87496db Mon Sep 17 00:00:00 2001 From: root Date: Fri, 6 Sep 2024 21:41:29 +0000 Subject: [PATCH 056/224] Add wordpress_elderseth --- apps/ollama-nvidia/docker-compose.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/ollama-nvidia/docker-compose.yml b/apps/ollama-nvidia/docker-compose.yml index b9194c07d7..1c4a942c68 100755 --- a/apps/ollama-nvidia/docker-compose.yml +++ b/apps/ollama-nvidia/docker-compose.yml @@ -46,5 +46,9 @@ services: traefik.http.routers.ollama-nvidia-local.rule: Host(`ollama-nvidia.${LOCAL_DOMAIN}`) traefik.http.routers.ollama-nvidia-local.entrypoints: websecure traefik.http.routers.ollama-nvidia-local.service: ollama-nvidia - traefik.http.routers.ollama-nvidia-local.tls: true + traefik.http.routers.ollama-nvidia-local.tls: "true" # Ensure this is a string runtipi.managed: true + +networks: + tipi_main_network: + driver: overlay From 52bfebeeddd15addeb4e5964f5a0c06a606cc1d7 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 7 Sep 2024 13:20:04 +0000 Subject: [PATCH 057/224] Add wordpress_elderseth --- apps/localai/config.json | 18 +++++ apps/localai/docker-compose.yml | 61 +++++++++++++++ apps/localai/metadata/description.md | 108 +++++++++++++++++++++++++++ apps/localai/metadata/logo.jpg | Bin 0 -> 28561 bytes 4 files changed, 187 insertions(+) create mode 100755 apps/localai/config.json create mode 100755 apps/localai/docker-compose.yml create mode 100755 apps/localai/metadata/description.md create mode 100755 apps/localai/metadata/logo.jpg diff --git a/apps/localai/config.json b/apps/localai/config.json new file mode 100755 index 0000000000..223d78f299 --- /dev/null +++ b/apps/localai/config.json @@ -0,0 +1,18 @@ +{ + "$schema": "../schema.json", + "name": "Local AI", + "available": true, + "exposable": true, + "port": 8111, + "id": "localai", + "tipi_version": 26, + "version": "0.3.4", + "categories": ["ai"], + "description": "LocalAI is the free, Open Source OpenAI alternative. LocalAI act as a drop-in replacement REST API that’s compatible with OpenAI API specifications for local inferencing. It allows you to run LLMs, generate images, audio (and not only) locally or on-prem with consumer grade hardware, supporting multiple model families and architectures.", + "short_desc": "LLMs inference server with OpenAI compatible API", + "author": "Giacinto", + "source": "https://github.com/mudler/LocalAI", + "website": "https://github.com/mudler/LocalAI", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] +} diff --git a/apps/localai/docker-compose.yml b/apps/localai/docker-compose.yml new file mode 100755 index 0000000000..0a7ddb4ba4 --- /dev/null +++ b/apps/localai/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" + +services: + api: + # image: localai/localai:latest-aio-gpu-nvidia-cuda-12 + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8111/readyz"] + interval: 1m + timeout: 20m + retries: 5 + ports: + - 8111:8111 + environment: + - DEBUG=true + # ... + volumes: + - ./models:/build/models:cached + # decomment the following piece if running with Nvidia GPUs + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: 1 + capabilities: [gpu] + networks: + - tipi_main_network + traefik.http.routers.localai-secure.service: localai + traefik.http.routers.localai-secure.tls.certresolver: myresolver + traefik.http.services.localai.loadbalancer.server.port: 8111 + + labels: + # Main + traefik.enable: "true" + traefik.http.middlewares.localai-redirect.redirectscheme.scheme: https + traefik.http.services.localai.loadbalancer.server.port: 8111 + # Web + traefik.http.routers.localai-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.localai-insecure.entrypoints: web + traefik.http.routers.localai-insecure.service: localai + traefik.http.routers.localai-insecure.middlewares: localai-web-redirect + # Websecure + traefik.http.routers.localai.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.localai.entrypoints: websecure + traefik.http.routers.localai.service: localai + traefik.http.routers.localai.tls.certresolver: myresolver + # Local domain + traefik.http.routers.localai-local-insecure.rule: Host(`localai.${LOCAL_DOMAIN}`) + traefik.http.routers.localai-local-insecure.entrypoints: web + traefik.http.routers.localai-local-insecure.service: localai + traefik.http.routers.localai-local-insecure.middlewares: localai-web-redirect + # Local domain secure + traefik.http.routers.localai-local.rule: Host(`localai.${LOCAL_DOMAIN}`) + traefik.http.routers.localai-local.entrypoints: websecure + traefik.http.routers.localai-local.service: localai + traefik.http.routers.localai-local.tls: "true" # Ensure this is a string + runtipi.managed: "true" + +networks: + tipi_main_network: + driver: overlay diff --git a/apps/localai/metadata/description.md b/apps/localai/metadata/description.md new file mode 100755 index 0000000000..dc2a4c21ba --- /dev/null +++ b/apps/localai/metadata/description.md @@ -0,0 +1,108 @@ +## Nvidia Instructions + +To enable your Nvidia GPU in Docker: + +- You need to install the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#installation) + +- And configure Docker to use Nvidia driver + +```sh +sudo nvidia-ctk runtime configure --runtime=docker +sudo systemctl restart docker +``` + +--- + +## Usage + +⚠️ This app runs on port **11435**. Take this into account when configuring tools connecting to the app. + +### Use with a frontend + +- [LobeChat](https://github.com/lobehub/lobe-chat) +- [LibreChat](https://github.com/danny-avila/LibreChat) +- [OpenWebUI](https://github.com/open-webui/open-webui) +- [And more ...](https://github.com/ollama/ollama) + +--- + +### Try the REST API + +Ollama has a REST API for running and managing models. + +**Generate a response** + +```sh +curl http://localhost:11434/api/generate -d '{ + "model": "llama3", + "prompt":"Why is the sky blue?" +}' +``` + +**Chat with a model** + +```sh +curl http://localhost:11434/api/chat -d '{ + "model": "llama3", + "messages": [ + { "role": "user", "content": "why is the sky blue?" } + ] +}' +``` + +--- + +## Compatible GPUs + +Ollama supports Nvidia GPUs with compute capability 5.0+. + +Check your compute compatibility to see if your card is supported: +[https://developer.nvidia.com/cuda-gpus](https://developer.nvidia.com/cuda-gpus) + +| Compute Capability | Family | Cards | +| ------------------ | ------------------- | ----------------------------------------------------------------------------------------------------------- | +| 9.0 | NVIDIA | `H100` | +| 8.9 | GeForce RTX 40xx | `RTX 4090` `RTX 4080` `RTX 4070 Ti` `RTX 4060 Ti` | +| | NVIDIA Professional | `L4` `L40` `RTX 6000` | +| 8.6 | GeForce RTX 30xx | `RTX 3090 Ti` `RTX 3090` `RTX 3080 Ti` `RTX 3080` `RTX 3070 Ti` `RTX 3070` `RTX 3060 Ti` `RTX 3060` | +| | NVIDIA Professional | `A40` `RTX A6000` `RTX A5000` `RTX A4000` `RTX A3000` `RTX A2000` `A10` `A16` `A2` | +| 8.0 | NVIDIA | `A100` `A30` | +| 7.5 | GeForce GTX/RTX | `GTX 1650 Ti` `TITAN RTX` `RTX 2080 Ti` `RTX 2080` `RTX 2070` `RTX 2060` | +| | NVIDIA Professional | `T4` `RTX 5000` `RTX 4000` `RTX 3000` `T2000` `T1200` `T1000` `T600` `T500` | +| | Quadro | `RTX 8000` `RTX 6000` `RTX 5000` `RTX 4000` | +| 7.0 | NVIDIA | `TITAN V` `V100` `Quadro GV100` | +| 6.1 | NVIDIA TITAN | `TITAN Xp` `TITAN X` | +| | GeForce GTX | `GTX 1080 Ti` `GTX 1080` `GTX 1070 Ti` `GTX 1070` `GTX 1060` `GTX 1050` | +| | Quadro | `P6000` `P5200` `P4200` `P3200` `P5000` `P4000` `P3000` `P2200` `P2000` `P1000` `P620` `P600` `P500` `P520` | +| | Tesla | `P40` `P4` | +| 6.0 | NVIDIA | `Tesla P100` `Quadro GP100` | +| 5.2 | GeForce GTX | `GTX TITAN X` `GTX 980 Ti` `GTX 980` `GTX 970` `GTX 960` `GTX 950` | +| | Quadro | `M6000 24GB` `M6000` `M5000` `M5500M` `M4000` `M2200` `M2000` `M620` | +| | Tesla | `M60` `M40` | +| 5.0 | GeForce GTX | `GTX 750 Ti` `GTX 750` `NVS 810` | +| | Quadro | `K2200` `K1200` `K620` `M1200` `M520` `M5000M` `M4000M` `M3000M` `M2000M` `M1000M` `K620M` `M600M` `M500M` | + +--- + +## Model library + +Ollama supports a list of models available on [ollama.com/library](https://ollama.com/library 'ollama model library') + +Here are some example models that can be downloaded: + +| Model | Parameters | Size | Download | +| ------------------ | ---------- | ----- | ------------------------------ | +| Llama 3 | 8B | 4.7GB | `ollama run llama3` | +| Llama 3 | 70B | 40GB | `ollama run llama3:70b` | +| Phi-3 | 3,8B | 2.3GB | `ollama run phi3` | +| Mistral | 7B | 4.1GB | `ollama run mistral` | +| Neural Chat | 7B | 4.1GB | `ollama run neural-chat` | +| Starling | 7B | 4.1GB | `ollama run starling-lm` | +| Code Llama | 7B | 3.8GB | `ollama run codellama` | +| Llama 2 Uncensored | 7B | 3.8GB | `ollama run llama2-uncensored` | +| LLaVA | 7B | 4.5GB | `ollama run llava` | +| Gemma | 2B | 1.4GB | `ollama run gemma:2b` | +| Gemma | 7B | 4.8GB | `ollama run gemma:7b` | +| Solar | 10.7B | 6.1GB | `ollama run solar` | + +> Note: You should have at least 8 GB of RAM available to run the 7B models, 16 GB to run the 13B models, and 32 GB to run the 33B models. diff --git a/apps/localai/metadata/logo.jpg b/apps/localai/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..5a60f256ee89c351824b89d7c5209b90cb418ac6 GIT binary patch literal 28561 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

^i1o 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 ZIN@~41TM_5VU~+rmcv~nhV%WN{C{lFH;e!P literal 0 HcmV?d00001 From 6d2f8f671851ea196c2a4e0e18f1b4e599f564bb Mon Sep 17 00:00:00 2001 From: root Date: Sat, 7 Sep 2024 13:43:14 +0000 Subject: [PATCH 058/224] Add wordpress_elderseth --- apps/localai/docker-compose.yml | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/apps/localai/docker-compose.yml b/apps/localai/docker-compose.yml index 0a7ddb4ba4..839abff4cc 100755 --- a/apps/localai/docker-compose.yml +++ b/apps/localai/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.9" services: api: - # image: localai/localai:latest-aio-gpu-nvidia-cuda-12 + image: localai/localai:v2.20.1-sycl-f32-ffmpeg healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8111/readyz"] interval: 1m @@ -12,22 +12,13 @@ services: - 8111:8111 environment: - DEBUG=true + - FEDERATION_ENABLED=true + - FEDERATION_ROLE=master + - FEDERATION_DOMAIN=$[LOCAL_DOMAIN] + - FEDERATION_SECRET=Mycobacteri@98 # ... volumes: - ./models:/build/models:cached - # decomment the following piece if running with Nvidia GPUs - deploy: - resources: - reservations: - devices: - - driver: nvidia - count: 1 - capabilities: [gpu] - networks: - - tipi_main_network - traefik.http.routers.localai-secure.service: localai - traefik.http.routers.localai-secure.tls.certresolver: myresolver - traefik.http.services.localai.loadbalancer.server.port: 8111 labels: # Main From 6d96ea1e517623d36eef13a63e3ef7aa2021ff10 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 7 Sep 2024 14:36:03 +0000 Subject: [PATCH 059/224] Add wordpress_elderseth --- apps/localai/docker-compose.yml | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/apps/localai/docker-compose.yml b/apps/localai/docker-compose.yml index 839abff4cc..3a37a7fbaa 100755 --- a/apps/localai/docker-compose.yml +++ b/apps/localai/docker-compose.yml @@ -12,17 +12,13 @@ services: - 8111:8111 environment: - DEBUG=true - - FEDERATION_ENABLED=true - - FEDERATION_ROLE=master - - FEDERATION_DOMAIN=$[LOCAL_DOMAIN] - - FEDERATION_SECRET=Mycobacteri@98 # ... volumes: - ./models:/build/models:cached - + - - ${ROOT_FOLDER_HOST}/media/data/images/:/tmp/generated/images/ labels: # Main - traefik.enable: "true" + traefik.enable: true traefik.http.middlewares.localai-redirect.redirectscheme.scheme: https traefik.http.services.localai.loadbalancer.server.port: 8111 # Web @@ -44,8 +40,8 @@ services: traefik.http.routers.localai-local.rule: Host(`localai.${LOCAL_DOMAIN}`) traefik.http.routers.localai-local.entrypoints: websecure traefik.http.routers.localai-local.service: localai - traefik.http.routers.localai-local.tls: "true" # Ensure this is a string - runtipi.managed: "true" + traefik.http.routers.localai-local.tls: true + runtipi.managed: true networks: tipi_main_network: From 4f1c80e7ece02c8fdde6da4c0193b1bd375b509b Mon Sep 17 00:00:00 2001 From: root Date: Sat, 7 Sep 2024 14:40:21 +0000 Subject: [PATCH 060/224] Add wordpress_elderseth --- apps/localai/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/localai/docker-compose.yml b/apps/localai/docker-compose.yml index 3a37a7fbaa..d3daa424ac 100755 --- a/apps/localai/docker-compose.yml +++ b/apps/localai/docker-compose.yml @@ -15,7 +15,7 @@ services: # ... volumes: - ./models:/build/models:cached - - - ${ROOT_FOLDER_HOST}/media/data/images/:/tmp/generated/images/ + - ${ROOT_FOLDER_HOST}/media/data/images/:/tmp/generated/images/ labels: # Main traefik.enable: true From 52e71649fb783b58eea73e5ee3e88d45f9b94924 Mon Sep 17 00:00:00 2001 From: root Date: Sat, 7 Sep 2024 16:15:58 +0000 Subject: [PATCH 061/224] Add wordpress_elderseth --- apps/localai/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/localai/docker-compose.yml b/apps/localai/docker-compose.yml index d3daa424ac..25d45dbcae 100755 --- a/apps/localai/docker-compose.yml +++ b/apps/localai/docker-compose.yml @@ -9,7 +9,7 @@ services: timeout: 20m retries: 5 ports: - - 8111:8111 + - ${APP_PORT}:80 environment: - DEBUG=true # ... From 566ca14b524900ba3d73539f032c15fa2b6264dc Mon Sep 17 00:00:00 2001 From: root Date: Sun, 8 Sep 2024 16:49:05 +0000 Subject: [PATCH 062/224] Add wordpress_elderseth --- apps/ghost/docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/ghost/docker-compose.yml b/apps/ghost/docker-compose.yml index 93e0205780..3cd4c715d1 100755 --- a/apps/ghost/docker-compose.yml +++ b/apps/ghost/docker-compose.yml @@ -25,6 +25,7 @@ services: mail__options__auth__pass: ${GHOST_MAIL_PASSWORD} volumes: - ${APP_DATA_DIR}/content:/var/lib/ghost/content + - ${APP_DATA_DIR}/tmp:/tmp/ networks: - tipi_main_network labels: From d51e12ef625e129e2a544ee4d8b88dc440305fd8 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Mon, 9 Sep 2024 00:21:46 +0000 Subject: [PATCH 063/224] Add wordpress_elderseth --- apps/nginx/docker-compose.yml | 3 +++ apps/nginx/nginx.conf | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 apps/nginx/nginx.conf diff --git a/apps/nginx/docker-compose.yml b/apps/nginx/docker-compose.yml index 5667deb90c..6834e33724 100755 --- a/apps/nginx/docker-compose.yml +++ b/apps/nginx/docker-compose.yml @@ -6,6 +6,9 @@ services: restart: unless-stopped ports: - ${APP_PORT}:80 + volumes: + - ./nginx.conf:/etc/nginx/nginx.conf + networks: - tipi_main_network labels: diff --git a/apps/nginx/nginx.conf b/apps/nginx/nginx.conf new file mode 100644 index 0000000000..66294d6684 --- /dev/null +++ b/apps/nginx/nginx.conf @@ -0,0 +1,15 @@ +events {} + +http { + server { + listen 80; + + location / { + proxy_pass http://another-server:8081; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + } +} From e2efe7274fb8e3d3bf90eb30a5efd5400b4d17d3 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Mon, 9 Sep 2024 00:44:05 +0000 Subject: [PATCH 064/224] Add wordpress_elderseth --- apps/nginx/nginx.conf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 apps/nginx/nginx.conf diff --git a/apps/nginx/nginx.conf b/apps/nginx/nginx.conf old mode 100644 new mode 100755 index 66294d6684..bd7aebce4f --- a/apps/nginx/nginx.conf +++ b/apps/nginx/nginx.conf @@ -3,9 +3,10 @@ events {} http { server { listen 80; + server_name data.rasies.com; location / { - proxy_pass http://another-server:8081; + proxy_pass http://192.168.1.12:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From b7e5f8d2c737e2f21a28b62acba4f85ee7b5d447 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Mon, 9 Sep 2024 01:52:57 +0000 Subject: [PATCH 065/224] Add wordpress_elderseth --- apps/nginx/nginx.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/nginx/nginx.conf b/apps/nginx/nginx.conf index bd7aebce4f..7abe7482e5 100755 --- a/apps/nginx/nginx.conf +++ b/apps/nginx/nginx.conf @@ -6,7 +6,7 @@ http { server_name data.rasies.com; location / { - proxy_pass http://192.168.1.12:8081; + proxy_pass http://192.168.1.12:80; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From c71bd0ab846e95aca31a001814b61d23fffdb190 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 10:53:12 +0000 Subject: [PATCH 066/224] Add wordpress_elderseth --- apps/nginx/{ => data/conf}/nginx.conf | 0 apps/nginx/docker-compose.yml | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename apps/nginx/{ => data/conf}/nginx.conf (100%) diff --git a/apps/nginx/nginx.conf b/apps/nginx/data/conf/nginx.conf similarity index 100% rename from apps/nginx/nginx.conf rename to apps/nginx/data/conf/nginx.conf diff --git a/apps/nginx/docker-compose.yml b/apps/nginx/docker-compose.yml index 6834e33724..f30c35f5c5 100755 --- a/apps/nginx/docker-compose.yml +++ b/apps/nginx/docker-compose.yml @@ -7,7 +7,7 @@ services: ports: - ${APP_PORT}:80 volumes: - - ./nginx.conf:/etc/nginx/nginx.conf + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf networks: - tipi_main_network From 5ef63f67e8bb55b643a88f789913fdea5d667fd3 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 14:31:14 +0000 Subject: [PATCH 067/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100755 apps/nginx/data/config/nginx.conf diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf new file mode 100755 index 0000000000..7abe7482e5 --- /dev/null +++ b/apps/nginx/data/config/nginx.conf @@ -0,0 +1,16 @@ +events {} + +http { + server { + listen 80; + server_name data.rasies.com; + + location / { + proxy_pass http://192.168.1.12:80; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + } +} From 544fc0b2095312a5c81e09f7b5ebf4e35087d9f6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 14:40:30 +0000 Subject: [PATCH 068/224] Add wordpress_elderseth --- .../data/config/nginx.conf | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100755 apps/nginx_cool.rasies.com/data/config/nginx.conf diff --git a/apps/nginx_cool.rasies.com/data/config/nginx.conf b/apps/nginx_cool.rasies.com/data/config/nginx.conf new file mode 100755 index 0000000000..7ce84f174c --- /dev/null +++ b/apps/nginx_cool.rasies.com/data/config/nginx.conf @@ -0,0 +1,17 @@ +events {} + +http { + server { + listen 80; + server_name cool.rasies.com; + + + location / { + proxy_pass http://192.168.1.12:80; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + } +} From cfc903605b269b04f137ac25533a321d5633bd0a Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 14:47:17 +0000 Subject: [PATCH 069/224] Add wordpress_elderseth --- apps/nginx_data.rasies.com/config.json | 18 ++++++++ .../data/config/nginx.conf | 16 +++++++ apps/nginx_data.rasies.com/docker-compose.yml | 39 ++++++++++++++++++ .../metadata/description.md | 3 ++ apps/nginx_data.rasies.com/metadata/logo.jpg | Bin 0 -> 12062 bytes 5 files changed, 76 insertions(+) create mode 100755 apps/nginx_data.rasies.com/config.json create mode 100755 apps/nginx_data.rasies.com/data/config/nginx.conf create mode 100755 apps/nginx_data.rasies.com/docker-compose.yml create mode 100755 apps/nginx_data.rasies.com/metadata/description.md create mode 100755 apps/nginx_data.rasies.com/metadata/logo.jpg diff --git a/apps/nginx_data.rasies.com/config.json b/apps/nginx_data.rasies.com/config.json new file mode 100755 index 0000000000..8ab1f6b383 --- /dev/null +++ b/apps/nginx_data.rasies.com/config.json @@ -0,0 +1,18 @@ +{ + "name": "Nginx", + "available": true, + "port": 8754, + "exposable": true, + "id": "nginx_data.rasies.com", + "description": "NEXTCLOUD redirect - I set up this custom app to direct traffic to data.rasies.com to 192.168.1.12", + "tipi_version": 1, + "version": "1.25.3", + "categories": ["utilities"], + "short_desc": "Open-source simple and fast web server.", + "author": "nginx", + "source": "https://github.com/nginx/nginx", + "website": "https://www.nginx.com/", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] + } + diff --git a/apps/nginx_data.rasies.com/data/config/nginx.conf b/apps/nginx_data.rasies.com/data/config/nginx.conf new file mode 100755 index 0000000000..7abe7482e5 --- /dev/null +++ b/apps/nginx_data.rasies.com/data/config/nginx.conf @@ -0,0 +1,16 @@ +events {} + +http { + server { + listen 80; + server_name data.rasies.com; + + location / { + proxy_pass http://192.168.1.12:80; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + } +} diff --git a/apps/nginx_data.rasies.com/docker-compose.yml b/apps/nginx_data.rasies.com/docker-compose.yml new file mode 100755 index 0000000000..7c58ab8341 --- /dev/null +++ b/apps/nginx_data.rasies.com/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" +services: + nginx_data.rasies.com: + image: nginx:1.25.3 + container_name: nginx_data.rasies.com + restart: unless-stopped + ports: + - ${APP_PORT}:80 + volumes: + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf + + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.nginx_data.rasies.com-web-redirect.redirectscheme.scheme: https + traefik.http.services.nginx_data.rasies.com.loadbalancer.server.port: 80 + # Web + traefik.http.routers.nginx_data.rasies.com-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_data.rasies.com-insecure.entrypoints: web + traefik.http.routers.nginx_data.rasies.com-insecure.service: nginx_data.rasies.com + traefik.http.routers.nginx_data.rasies.com-insecure.middlewares: nginx_data.rasies.com-web-redirect + # Websecure + traefik.http.routers.nginx_data.rasies.com.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_data.rasies.com.entrypoints: websecure + traefik.http.routers.nginx_data.rasies.com.service: nginx_data.rasies.com + traefik.http.routers.nginx_data.rasies.com.tls.certresolver: myresolver + # Local domain + traefik.http.routers.nginx_data.rasies.com-local-insecure.rule: Host(`nginx_data.rasies.com.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_data.rasies.com-local-insecure.entrypoints: web + traefik.http.routers.nginx_data.rasies.com-local-insecure.service: nginx_data.rasies.com + traefik.http.routers.nginx_data.rasies.com-local-insecure.middlewares: nginx_data.rasies.com-web-redirect + # Local domain secure + traefik.http.routers.nginx_data.rasies.com-local.rule: Host(`nginx_data.rasies.com.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_data.rasies.com-local.entrypoints: websecure + traefik.http.routers.nginx_data.rasies.com-local.service: nginx_data.rasies.com + traefik.http.routers.nginx_data.rasies.com-local.tls: true + runtipi.managed: true diff --git a/apps/nginx_data.rasies.com/metadata/description.md b/apps/nginx_data.rasies.com/metadata/description.md new file mode 100755 index 0000000000..9836fdd6c6 --- /dev/null +++ b/apps/nginx_data.rasies.com/metadata/description.md @@ -0,0 +1,3 @@ +## Nginx + +A simple and lightweight web server to test that your tipi install works. \ No newline at end of file diff --git a/apps/nginx_data.rasies.com/metadata/logo.jpg b/apps/nginx_data.rasies.com/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..300290b492bc85a6589b96ca77b8be87b7a2aa33 GIT binary patch literal 12062 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 GuKxqa2?&b- literal 0 HcmV?d00001 From f22b8992148ea869cdf7e5b6e4fb41bbeaa35162 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 14:49:18 +0000 Subject: [PATCH 070/224] Add wordpress_elderseth --- apps/nginx_cool.rasies.com/config.json | 18 ++++++++ apps/nginx_cool.rasies.com/docker-compose.yml | 39 ++++++++++++++++++ .../metadata/description.md | 3 ++ apps/nginx_cool.rasies.com/metadata/logo.jpg | Bin 0 -> 12062 bytes 4 files changed, 60 insertions(+) create mode 100755 apps/nginx_cool.rasies.com/config.json create mode 100755 apps/nginx_cool.rasies.com/docker-compose.yml create mode 100755 apps/nginx_cool.rasies.com/metadata/description.md create mode 100755 apps/nginx_cool.rasies.com/metadata/logo.jpg diff --git a/apps/nginx_cool.rasies.com/config.json b/apps/nginx_cool.rasies.com/config.json new file mode 100755 index 0000000000..5208a6d75b --- /dev/null +++ b/apps/nginx_cool.rasies.com/config.json @@ -0,0 +1,18 @@ +{ + "name": "Nginx redirect for cool.rasies.com", + "available": true, + "port": 8754, + "exposable": true, + "id": "nginx_cool.rasies.com", + "description": "Custom Config - Specifically to direct traffic to Collabora on 192.168.1.12", + "tipi_version": 1, + "version": "1.25.3", + "categories": ["utilities"], + "short_desc": "Open-source simple and fast web server.", + "author": "nginx", + "source": "https://github.com/nginx/nginx", + "website": "https://www.nginx.com/", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] + } + diff --git a/apps/nginx_cool.rasies.com/docker-compose.yml b/apps/nginx_cool.rasies.com/docker-compose.yml new file mode 100755 index 0000000000..a396fc005f --- /dev/null +++ b/apps/nginx_cool.rasies.com/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" +services: + nginx_cool.rasies.com: + image: nginx:1.25.3 + container_name: nginx_cool.rasies.com + restart: unless-stopped + ports: + - ${APP_PORT}:80 + volumes: + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf + + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.nginx_cool.rasies.com-web-redirect.redirectscheme.scheme: https + traefik.http.services.nginx_cool.rasies.com.loadbalancer.server.port: 80 + # Web + traefik.http.routers.nginx_cool.rasies.com-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_cool.rasies.com-insecure.entrypoints: web + traefik.http.routers.nginx_cool.rasies.com-insecure.service: nginx_cool.rasies.com + traefik.http.routers.nginx_cool.rasies.com-insecure.middlewares: nginx_cool.rasies.com-web-redirect + # Websecure + traefik.http.routers.nginx_cool.rasies.com.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_cool.rasies.com.entrypoints: websecure + traefik.http.routers.nginx_cool.rasies.com.service: nginx_cool.rasies.com + traefik.http.routers.nginx_cool.rasies.com.tls.certresolver: myresolver + # Local domain + traefik.http.routers.nginx_cool.rasies.com-local-insecure.rule: Host(`nginx_cool.rasies.com.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_cool.rasies.com-local-insecure.entrypoints: web + traefik.http.routers.nginx_cool.rasies.com-local-insecure.service: nginx_cool.rasies.com + traefik.http.routers.nginx_cool.rasies.com-local-insecure.middlewares: nginx_cool.rasies.com-web-redirect + # Local domain secure + traefik.http.routers.nginx_cool.rasies.com-local.rule: Host(`nginx_cool.rasies.com.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_cool.rasies.com-local.entrypoints: websecure + traefik.http.routers.nginx_cool.rasies.com-local.service: nginx_cool.rasies.com + traefik.http.routers.nginx_cool.rasies.com-local.tls: true + runtipi.managed: true diff --git a/apps/nginx_cool.rasies.com/metadata/description.md b/apps/nginx_cool.rasies.com/metadata/description.md new file mode 100755 index 0000000000..9836fdd6c6 --- /dev/null +++ b/apps/nginx_cool.rasies.com/metadata/description.md @@ -0,0 +1,3 @@ +## Nginx + +A simple and lightweight web server to test that your tipi install works. \ No newline at end of file diff --git a/apps/nginx_cool.rasies.com/metadata/logo.jpg b/apps/nginx_cool.rasies.com/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..300290b492bc85a6589b96ca77b8be87b7a2aa33 GIT binary patch literal 12062 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 GuKxqa2?&b- literal 0 HcmV?d00001 From 385c6e1336be334805940877b779dea21c175a48 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 14:58:32 +0000 Subject: [PATCH 071/224] Add wordpress_elderseth --- apps/nginx_data/config.json | 18 +++++++++++ apps/nginx_data/data/config/nginx.conf | 16 ++++++++++ apps/nginx_data/docker-compose.yml | 39 ++++++++++++++++++++++++ apps/nginx_data/metadata/description.md | 3 ++ apps/nginx_data/metadata/logo.jpg | Bin 0 -> 12062 bytes 5 files changed, 76 insertions(+) create mode 100755 apps/nginx_data/config.json create mode 100755 apps/nginx_data/data/config/nginx.conf create mode 100755 apps/nginx_data/docker-compose.yml create mode 100755 apps/nginx_data/metadata/description.md create mode 100755 apps/nginx_data/metadata/logo.jpg diff --git a/apps/nginx_data/config.json b/apps/nginx_data/config.json new file mode 100755 index 0000000000..8deaf232a0 --- /dev/null +++ b/apps/nginx_data/config.json @@ -0,0 +1,18 @@ +{ + "name": "Nginx data.rasies.com", + "available": true, + "port": 8754, + "exposable": true, + "id": "nginx_data", + "description": "NEXTCLOUD redirect - I set up this custom app to direct traffic to data.rasies.com to 192.168.1.12", + "tipi_version": 1, + "version": "1.25.3", + "categories": ["utilities"], + "short_desc": "Open-source simple and fast web server.", + "author": "nginx", + "source": "https://github.com/nginx/nginx", + "website": "https://www.nginx.com/", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] + } + diff --git a/apps/nginx_data/data/config/nginx.conf b/apps/nginx_data/data/config/nginx.conf new file mode 100755 index 0000000000..7abe7482e5 --- /dev/null +++ b/apps/nginx_data/data/config/nginx.conf @@ -0,0 +1,16 @@ +events {} + +http { + server { + listen 80; + server_name data.rasies.com; + + location / { + proxy_pass http://192.168.1.12:80; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + } +} diff --git a/apps/nginx_data/docker-compose.yml b/apps/nginx_data/docker-compose.yml new file mode 100755 index 0000000000..0d8a3b0bea --- /dev/null +++ b/apps/nginx_data/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" +services: + nginx_data.rasies.com: + image: nginx:1.25.3 + container_name: nginx_data + restart: unless-stopped + ports: + - ${APP_PORT}:80 + volumes: + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf + + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.nginx_data-web-redirect.redirectscheme.scheme: https + traefik.http.services.nginx_data.loadbalancer.server.port: 80 + # Web + traefik.http.routers.nginx_data-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_data-insecure.entrypoints: web + traefik.http.routers.nginx_data-insecure.service: nginx_data + traefik.http.routers.nginx_data-insecure.middlewares: nginx_data-web-redirect + # Websecure + traefik.http.routers.nginx_data.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_data.entrypoints: websecure + traefik.http.routers.nginx_data.service: nginx_data + traefik.http.routers.nginx_data.tls.certresolver: myresolver + # Local domain + traefik.http.routers.nginx_data-local-insecure.rule: Host(`nginx_data.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_data-local-insecure.entrypoints: web + traefik.http.routers.nginx_data-local-insecure.service: nginx_data + traefik.http.routers.nginx_data-local-insecure.middlewares: nginx_data-web-redirect + # Local domain secure + traefik.http.routers.nginx_data-local.rule: Host(`nginx_data.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_data-local.entrypoints: websecure + traefik.http.routers.nginx_data-local.service: nginx_data + traefik.http.routers.nginx_data-local.tls: true + runtipi.managed: true diff --git a/apps/nginx_data/metadata/description.md b/apps/nginx_data/metadata/description.md new file mode 100755 index 0000000000..9836fdd6c6 --- /dev/null +++ b/apps/nginx_data/metadata/description.md @@ -0,0 +1,3 @@ +## Nginx + +A simple and lightweight web server to test that your tipi install works. \ No newline at end of file diff --git a/apps/nginx_data/metadata/logo.jpg b/apps/nginx_data/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..300290b492bc85a6589b96ca77b8be87b7a2aa33 GIT binary patch literal 12062 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 GuKxqa2?&b- literal 0 HcmV?d00001 From 36b7da9a8d0cf19a18b20a14d93a221f59cda6bb Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 15:05:43 +0000 Subject: [PATCH 072/224] Add wordpress_elderseth --- apps/nginx/data/conf/nginx.conf | 16 ------- apps/nginx_cool.rasies.com/docker-compose.yml | 39 ------------------ .../config.json | 2 +- .../data/config/nginx.conf | 0 apps/nginx_cool/docker-compose.yml | 39 ++++++++++++++++++ .../metadata/description.md | 0 .../metadata/logo.jpg | Bin apps/nginx_data.rasies.com/config.json | 18 -------- .../data/config/nginx.conf | 16 ------- apps/nginx_data.rasies.com/docker-compose.yml | 39 ------------------ .../metadata/description.md | 3 -- apps/nginx_data.rasies.com/metadata/logo.jpg | Bin 12062 -> 0 bytes 12 files changed, 40 insertions(+), 132 deletions(-) delete mode 100755 apps/nginx/data/conf/nginx.conf delete mode 100755 apps/nginx_cool.rasies.com/docker-compose.yml rename apps/{nginx_cool.rasies.com => nginx_cool}/config.json (93%) rename apps/{nginx_cool.rasies.com => nginx_cool}/data/config/nginx.conf (100%) create mode 100755 apps/nginx_cool/docker-compose.yml rename apps/{nginx_cool.rasies.com => nginx_cool}/metadata/description.md (100%) rename apps/{nginx_cool.rasies.com => nginx_cool}/metadata/logo.jpg (100%) delete mode 100755 apps/nginx_data.rasies.com/config.json delete mode 100755 apps/nginx_data.rasies.com/data/config/nginx.conf delete mode 100755 apps/nginx_data.rasies.com/docker-compose.yml delete mode 100755 apps/nginx_data.rasies.com/metadata/description.md delete mode 100755 apps/nginx_data.rasies.com/metadata/logo.jpg diff --git a/apps/nginx/data/conf/nginx.conf b/apps/nginx/data/conf/nginx.conf deleted file mode 100755 index 7abe7482e5..0000000000 --- a/apps/nginx/data/conf/nginx.conf +++ /dev/null @@ -1,16 +0,0 @@ -events {} - -http { - server { - listen 80; - server_name data.rasies.com; - - location / { - proxy_pass http://192.168.1.12:80; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - } -} diff --git a/apps/nginx_cool.rasies.com/docker-compose.yml b/apps/nginx_cool.rasies.com/docker-compose.yml deleted file mode 100755 index a396fc005f..0000000000 --- a/apps/nginx_cool.rasies.com/docker-compose.yml +++ /dev/null @@ -1,39 +0,0 @@ -version: "3.9" -services: - nginx_cool.rasies.com: - image: nginx:1.25.3 - container_name: nginx_cool.rasies.com - restart: unless-stopped - ports: - - ${APP_PORT}:80 - volumes: - - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf - - networks: - - tipi_main_network - labels: - # Main - traefik.enable: true - traefik.http.middlewares.nginx_cool.rasies.com-web-redirect.redirectscheme.scheme: https - traefik.http.services.nginx_cool.rasies.com.loadbalancer.server.port: 80 - # Web - traefik.http.routers.nginx_cool.rasies.com-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.nginx_cool.rasies.com-insecure.entrypoints: web - traefik.http.routers.nginx_cool.rasies.com-insecure.service: nginx_cool.rasies.com - traefik.http.routers.nginx_cool.rasies.com-insecure.middlewares: nginx_cool.rasies.com-web-redirect - # Websecure - traefik.http.routers.nginx_cool.rasies.com.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.nginx_cool.rasies.com.entrypoints: websecure - traefik.http.routers.nginx_cool.rasies.com.service: nginx_cool.rasies.com - traefik.http.routers.nginx_cool.rasies.com.tls.certresolver: myresolver - # Local domain - traefik.http.routers.nginx_cool.rasies.com-local-insecure.rule: Host(`nginx_cool.rasies.com.${LOCAL_DOMAIN}`) - traefik.http.routers.nginx_cool.rasies.com-local-insecure.entrypoints: web - traefik.http.routers.nginx_cool.rasies.com-local-insecure.service: nginx_cool.rasies.com - traefik.http.routers.nginx_cool.rasies.com-local-insecure.middlewares: nginx_cool.rasies.com-web-redirect - # Local domain secure - traefik.http.routers.nginx_cool.rasies.com-local.rule: Host(`nginx_cool.rasies.com.${LOCAL_DOMAIN}`) - traefik.http.routers.nginx_cool.rasies.com-local.entrypoints: websecure - traefik.http.routers.nginx_cool.rasies.com-local.service: nginx_cool.rasies.com - traefik.http.routers.nginx_cool.rasies.com-local.tls: true - runtipi.managed: true diff --git a/apps/nginx_cool.rasies.com/config.json b/apps/nginx_cool/config.json similarity index 93% rename from apps/nginx_cool.rasies.com/config.json rename to apps/nginx_cool/config.json index 5208a6d75b..8103254f24 100755 --- a/apps/nginx_cool.rasies.com/config.json +++ b/apps/nginx_cool/config.json @@ -3,7 +3,7 @@ "available": true, "port": 8754, "exposable": true, - "id": "nginx_cool.rasies.com", + "id": "nginx_cool", "description": "Custom Config - Specifically to direct traffic to Collabora on 192.168.1.12", "tipi_version": 1, "version": "1.25.3", diff --git a/apps/nginx_cool.rasies.com/data/config/nginx.conf b/apps/nginx_cool/data/config/nginx.conf similarity index 100% rename from apps/nginx_cool.rasies.com/data/config/nginx.conf rename to apps/nginx_cool/data/config/nginx.conf diff --git a/apps/nginx_cool/docker-compose.yml b/apps/nginx_cool/docker-compose.yml new file mode 100755 index 0000000000..3ee1c36c6f --- /dev/null +++ b/apps/nginx_cool/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" +services: + nginx_cool: + image: nginx:1.25.3 + container_name: nginx_cool + restart: unless-stopped + ports: + - ${APP_PORT}:80 + volumes: + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf + + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.nginx_cool-web-redirect.redirectscheme.scheme: https + traefik.http.services.nginx_cool.loadbalancer.server.port: 80 + # Web + traefik.http.routers.nginx_cool-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_cool-insecure.entrypoints: web + traefik.http.routers.nginx_cool-insecure.service: nginx_cool + traefik.http.routers.nginx_cool-insecure.middlewares: nginx_cool-web-redirect + # Websecure + traefik.http.routers.nginx_cool.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_cool.entrypoints: websecure + traefik.http.routers.nginx_cool.service: nginx_cool + traefik.http.routers.nginx_cool.tls.certresolver: myresolver + # Local domain + traefik.http.routers.nginx_cool-local-insecure.rule: Host(`nginx_cool.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_cool-local-insecure.entrypoints: web + traefik.http.routers.nginx_cool-local-insecure.service: nginx_cool + traefik.http.routers.nginx_cool-local-insecure.middlewares: nginx_cool-web-redirect + # Local domain secure + traefik.http.routers.nginx_cool-local.rule: Host(`nginx_cool.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_cool-local.entrypoints: websecure + traefik.http.routers.nginx_cool-local.service: nginx_cool + traefik.http.routers.nginx_cool-local.tls: true + runtipi.managed: true diff --git a/apps/nginx_cool.rasies.com/metadata/description.md b/apps/nginx_cool/metadata/description.md similarity index 100% rename from apps/nginx_cool.rasies.com/metadata/description.md rename to apps/nginx_cool/metadata/description.md diff --git a/apps/nginx_cool.rasies.com/metadata/logo.jpg b/apps/nginx_cool/metadata/logo.jpg similarity index 100% rename from apps/nginx_cool.rasies.com/metadata/logo.jpg rename to apps/nginx_cool/metadata/logo.jpg diff --git a/apps/nginx_data.rasies.com/config.json b/apps/nginx_data.rasies.com/config.json deleted file mode 100755 index 8ab1f6b383..0000000000 --- a/apps/nginx_data.rasies.com/config.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "Nginx", - "available": true, - "port": 8754, - "exposable": true, - "id": "nginx_data.rasies.com", - "description": "NEXTCLOUD redirect - I set up this custom app to direct traffic to data.rasies.com to 192.168.1.12", - "tipi_version": 1, - "version": "1.25.3", - "categories": ["utilities"], - "short_desc": "Open-source simple and fast web server.", - "author": "nginx", - "source": "https://github.com/nginx/nginx", - "website": "https://www.nginx.com/", - "form_fields": [], - "supported_architectures": ["arm64", "amd64"] - } - diff --git a/apps/nginx_data.rasies.com/data/config/nginx.conf b/apps/nginx_data.rasies.com/data/config/nginx.conf deleted file mode 100755 index 7abe7482e5..0000000000 --- a/apps/nginx_data.rasies.com/data/config/nginx.conf +++ /dev/null @@ -1,16 +0,0 @@ -events {} - -http { - server { - listen 80; - server_name data.rasies.com; - - location / { - proxy_pass http://192.168.1.12:80; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - } -} diff --git a/apps/nginx_data.rasies.com/docker-compose.yml b/apps/nginx_data.rasies.com/docker-compose.yml deleted file mode 100755 index 7c58ab8341..0000000000 --- a/apps/nginx_data.rasies.com/docker-compose.yml +++ /dev/null @@ -1,39 +0,0 @@ -version: "3.9" -services: - nginx_data.rasies.com: - image: nginx:1.25.3 - container_name: nginx_data.rasies.com - restart: unless-stopped - ports: - - ${APP_PORT}:80 - volumes: - - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf - - networks: - - tipi_main_network - labels: - # Main - traefik.enable: true - traefik.http.middlewares.nginx_data.rasies.com-web-redirect.redirectscheme.scheme: https - traefik.http.services.nginx_data.rasies.com.loadbalancer.server.port: 80 - # Web - traefik.http.routers.nginx_data.rasies.com-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.nginx_data.rasies.com-insecure.entrypoints: web - traefik.http.routers.nginx_data.rasies.com-insecure.service: nginx_data.rasies.com - traefik.http.routers.nginx_data.rasies.com-insecure.middlewares: nginx_data.rasies.com-web-redirect - # Websecure - traefik.http.routers.nginx_data.rasies.com.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.nginx_data.rasies.com.entrypoints: websecure - traefik.http.routers.nginx_data.rasies.com.service: nginx_data.rasies.com - traefik.http.routers.nginx_data.rasies.com.tls.certresolver: myresolver - # Local domain - traefik.http.routers.nginx_data.rasies.com-local-insecure.rule: Host(`nginx_data.rasies.com.${LOCAL_DOMAIN}`) - traefik.http.routers.nginx_data.rasies.com-local-insecure.entrypoints: web - traefik.http.routers.nginx_data.rasies.com-local-insecure.service: nginx_data.rasies.com - traefik.http.routers.nginx_data.rasies.com-local-insecure.middlewares: nginx_data.rasies.com-web-redirect - # Local domain secure - traefik.http.routers.nginx_data.rasies.com-local.rule: Host(`nginx_data.rasies.com.${LOCAL_DOMAIN}`) - traefik.http.routers.nginx_data.rasies.com-local.entrypoints: websecure - traefik.http.routers.nginx_data.rasies.com-local.service: nginx_data.rasies.com - traefik.http.routers.nginx_data.rasies.com-local.tls: true - runtipi.managed: true diff --git a/apps/nginx_data.rasies.com/metadata/description.md b/apps/nginx_data.rasies.com/metadata/description.md deleted file mode 100755 index 9836fdd6c6..0000000000 --- a/apps/nginx_data.rasies.com/metadata/description.md +++ /dev/null @@ -1,3 +0,0 @@ -## Nginx - -A simple and lightweight web server to test that your tipi install works. \ No newline at end of file diff --git a/apps/nginx_data.rasies.com/metadata/logo.jpg b/apps/nginx_data.rasies.com/metadata/logo.jpg deleted file mode 100755 index 300290b492bc85a6589b96ca77b8be87b7a2aa33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12062 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 GuKxqa2?&b- From 37199a30eebb07d1c9280e6da50747dfad7e8485 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 15:13:05 +0000 Subject: [PATCH 073/224] Add wordpress_elderseth --- apps/nginx_cool/config.json | 2 +- apps/nginx_data/config.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/nginx_cool/config.json b/apps/nginx_cool/config.json index 8103254f24..7211138852 100755 --- a/apps/nginx_cool/config.json +++ b/apps/nginx_cool/config.json @@ -1,7 +1,7 @@ { "name": "Nginx redirect for cool.rasies.com", "available": true, - "port": 8754, + "port": 8756, "exposable": true, "id": "nginx_cool", "description": "Custom Config - Specifically to direct traffic to Collabora on 192.168.1.12", diff --git a/apps/nginx_data/config.json b/apps/nginx_data/config.json index 8deaf232a0..d222b36ef0 100755 --- a/apps/nginx_data/config.json +++ b/apps/nginx_data/config.json @@ -1,7 +1,7 @@ { "name": "Nginx data.rasies.com", "available": true, - "port": 8754, + "port": 8755, "exposable": true, "id": "nginx_data", "description": "NEXTCLOUD redirect - I set up this custom app to direct traffic to data.rasies.com to 192.168.1.12", From 45cedce3269e3a549209d3483f9d7288cd4b2973 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 15:30:35 +0000 Subject: [PATCH 074/224] Add wordpress_elderseth --- apps/nginx_cool/data/config/nginx.conf | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/nginx_cool/data/config/nginx.conf b/apps/nginx_cool/data/config/nginx.conf index 7ce84f174c..2829d57f48 100755 --- a/apps/nginx_cool/data/config/nginx.conf +++ b/apps/nginx_cool/data/config/nginx.conf @@ -7,11 +7,13 @@ http { location / { - proxy_pass http://192.168.1.12:80; + proxy_pass http://192.168.1.12:81; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Port $server_port; } } } From 18ccb7be1f2a90b7aa0561be302278043d4328d4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 16:16:19 +0000 Subject: [PATCH 075/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 37 ++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 7abe7482e5..b311d05aef 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -5,12 +5,47 @@ http { listen 80; server_name data.rasies.com; - location / { + location / { proxy_pass http://192.168.1.12:80; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } + + location / { + proxy_pass http://192.168.1.12:8080; # Adjust this to your Nextcloud Office backend + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /loleaflet { + proxy_pass http://192.168.1.12:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /hosting/discovery { + proxy_pass http://192.168.1.12:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /lool { + proxy_pass http://192.168.1.12:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } + } } From bce5c7245904e8750f60d2b415d9b51cbba6db02 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 16:40:49 +0000 Subject: [PATCH 076/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 34 -------------------- apps/nginx_cool/data/config/nginx.conf | 44 ++++++++++++++++++++------ 2 files changed, 35 insertions(+), 43 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index b311d05aef..0123df36f0 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -12,40 +12,6 @@ http { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } - - location / { - proxy_pass http://192.168.1.12:8080; # Adjust this to your Nextcloud Office backend - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - - location /loleaflet { - proxy_pass http://192.168.1.12:9980; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - - location /hosting/discovery { - proxy_pass http://192.168.1.12:9980; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } - - location /lool { - proxy_pass http://192.168.1.12:9980; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "upgrade"; - } } } diff --git a/apps/nginx_cool/data/config/nginx.conf b/apps/nginx_cool/data/config/nginx.conf index 2829d57f48..4beedd05c8 100755 --- a/apps/nginx_cool/data/config/nginx.conf +++ b/apps/nginx_cool/data/config/nginx.conf @@ -5,15 +5,41 @@ http { listen 80; server_name cool.rasies.com; + location / { + proxy_pass http://127.0.0.1:8080; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /loleaflet { + proxy_pass http://127.0.0.1:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } - location / { - proxy_pass http://192.168.1.12:81; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_set_header X-Forwarded-Host $host; - proxy_set_header X-Forwarded-Port $server_port; - } + location /hosting/discovery { + proxy_pass http://127.0.0.1:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; } + + location /lool { + proxy_pass http://127.0.0.1:9980; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } + + + } + } From a3d56025c3b61077304c7373610f52f0f40296e7 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 16:53:08 +0000 Subject: [PATCH 077/224] Add wordpress_elderseth --- apps/nginx_cool/data/config/nginx.conf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/nginx_cool/data/config/nginx.conf b/apps/nginx_cool/data/config/nginx.conf index 4beedd05c8..3265847f77 100755 --- a/apps/nginx_cool/data/config/nginx.conf +++ b/apps/nginx_cool/data/config/nginx.conf @@ -6,7 +6,7 @@ http { server_name cool.rasies.com; location / { - proxy_pass http://127.0.0.1:8080; + proxy_pass http://192.168.1.12:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -14,7 +14,7 @@ http { } location /loleaflet { - proxy_pass http://127.0.0.1:9980; + proxy_pass http://192.168.1.12:9980; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -22,7 +22,7 @@ http { } location /hosting/discovery { - proxy_pass http://127.0.0.1:9980; + proxy_pass http://192.168.1.12:9980; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -30,7 +30,7 @@ http { } location /lool { - proxy_pass http://127.0.0.1:9980; + proxy_pass http://192.168.1.12:9980; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From f61728e886891fecf07c774e67e8efbfa9420a4e Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 14 Sep 2024 22:31:02 +0000 Subject: [PATCH 078/224] Add wordpress_elderseth --- apps/nginx_clancy/config.json | 18 ++++++++++ apps/nginx_clancy/data/config/nginx.conf | 17 ++++++++++ apps/nginx_clancy/docker-compose.yml | 39 ++++++++++++++++++++++ apps/nginx_clancy/metadata/description.md | 3 ++ apps/nginx_clancy/metadata/logo.jpg | Bin 0 -> 12062 bytes 5 files changed, 77 insertions(+) create mode 100755 apps/nginx_clancy/config.json create mode 100755 apps/nginx_clancy/data/config/nginx.conf create mode 100755 apps/nginx_clancy/docker-compose.yml create mode 100755 apps/nginx_clancy/metadata/description.md create mode 100755 apps/nginx_clancy/metadata/logo.jpg diff --git a/apps/nginx_clancy/config.json b/apps/nginx_clancy/config.json new file mode 100755 index 0000000000..95f457b78b --- /dev/null +++ b/apps/nginx_clancy/config.json @@ -0,0 +1,18 @@ +{ + "name": "Nginx Clancy", + "available": true, + "port": 8757, + "exposable": true, + "id": "nginx_clancy", + "description": "Custom Nginx: redirect christianras.com traffic to 192.168.1.13", + "tipi_version": 1, + "version": "1.25.3", + "categories": ["utilities"], + "short_desc": "Open-source simple and fast web server.", + "author": "nginx", + "source": "https://github.com/nginx/nginx", + "website": "https://www.nginx.com/", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] + } + diff --git a/apps/nginx_clancy/data/config/nginx.conf b/apps/nginx_clancy/data/config/nginx.conf new file mode 100755 index 0000000000..bd0531f3e1 --- /dev/null +++ b/apps/nginx_clancy/data/config/nginx.conf @@ -0,0 +1,17 @@ +events {} + +http { + server { + listen 80; + server_name christianras.com; + + location / { + proxy_pass http://192.168.1.13:80; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + } +} diff --git a/apps/nginx_clancy/docker-compose.yml b/apps/nginx_clancy/docker-compose.yml new file mode 100755 index 0000000000..d01df1537e --- /dev/null +++ b/apps/nginx_clancy/docker-compose.yml @@ -0,0 +1,39 @@ +version: "3.9" +services: + nginx_clancy: + image: nginx:1.25.3 + container_name: nginx_clancy + restart: unless-stopped + ports: + - ${APP_PORT}:80 + volumes: + - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf + + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.nginx_clancy-web-redirect.redirectscheme.scheme: https + traefik.http.services.nginx_clancy.loadbalancer.server.port: 80 + # Web + traefik.http.routers.nginx_clancy-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_clancy-insecure.entrypoints: web + traefik.http.routers.nginx_clancy-insecure.service: nginx_clancy + traefik.http.routers.nginx_clancy-insecure.middlewares: nginx_clancy-web-redirect + # Websecure + traefik.http.routers.nginx_clancy.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.nginx_clancy.entrypoints: websecure + traefik.http.routers.nginx_clancy.service: nginx_clancy + traefik.http.routers.nginx_clancy.tls.certresolver: myresolver + # Local domain + traefik.http.routers.nginx_clancy-local-insecure.rule: Host(`nginx_clancy.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_clancy-local-insecure.entrypoints: web + traefik.http.routers.nginx_clancy-local-insecure.service: nginx_clancy + traefik.http.routers.nginx_clancy-local-insecure.middlewares: nginx_clancy-web-redirect + # Local domain secure + traefik.http.routers.nginx_clancy-local.rule: Host(`nginx_clancy.${LOCAL_DOMAIN}`) + traefik.http.routers.nginx_clancy-local.entrypoints: websecure + traefik.http.routers.nginx_clancy-local.service: nginx_clancy + traefik.http.routers.nginx_clancy-local.tls: true + runtipi.managed: true diff --git a/apps/nginx_clancy/metadata/description.md b/apps/nginx_clancy/metadata/description.md new file mode 100755 index 0000000000..9836fdd6c6 --- /dev/null +++ b/apps/nginx_clancy/metadata/description.md @@ -0,0 +1,3 @@ +## Nginx + +A simple and lightweight web server to test that your tipi install works. \ No newline at end of file diff --git a/apps/nginx_clancy/metadata/logo.jpg b/apps/nginx_clancy/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..300290b492bc85a6589b96ca77b8be87b7a2aa33 GIT binary patch literal 12062 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 GuKxqa2?&b- literal 0 HcmV?d00001 From acc74dc5078ce657b4f55ad9475ffd1f4ba78a77 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 12:57:56 +0000 Subject: [PATCH 079/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 8f4670e99a..8a5c216e16 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -5,7 +5,10 @@ services: container_name: grist environment: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} + - GRIST_SANDBOX_FLAVOR: gvisor + - GRIST_FORWARD_AUTH_HEADER: X-Forwarded-User + - GRIST_FORWARD_AUTH_LOGOUT_PATH: _oauth/logout + - GRIST_SINGLE_ORG: rasies image: "gristlabs/grist:1.1.16" ports: - "${APP_PORT}:8484" From 55b5a2e049434084506083807abaed8d77bf6b3c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 13:09:22 +0000 Subject: [PATCH 080/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 8a5c216e16..b520eb7024 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -5,10 +5,11 @@ services: container_name: grist environment: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - - GRIST_SANDBOX_FLAVOR: gvisor - - GRIST_FORWARD_AUTH_HEADER: X-Forwarded-User - - GRIST_FORWARD_AUTH_LOGOUT_PATH: _oauth/logout - - GRIST_SINGLE_ORG: rasies + - GRIST_SESSION_SECRET=Mycobacteri@98 + - GRIST_DEFAULT_EMAIL=ianras@yahoo.com + - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User + - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout + - GRIST_SINGLE_ORG=rasies image: "gristlabs/grist:1.1.16" ports: - "${APP_PORT}:8484" From 350f569352733bbbd8d3f028a7176c69484ad06c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 13:14:11 +0000 Subject: [PATCH 081/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index b520eb7024..4ffda66ab6 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -7,8 +7,6 @@ services: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User - - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout - GRIST_SINGLE_ORG=rasies image: "gristlabs/grist:1.1.16" ports: From a2a72c493fc98b8441352896cd4bbd0ed734a858 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 13:20:29 +0000 Subject: [PATCH 082/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 4ffda66ab6..969eaf94f9 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -8,12 +8,12 @@ services: - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies - image: "gristlabs/grist:1.1.16" + image: gristlabs/grist:1.1.16 ports: - - "${APP_PORT}:8484" + - ${APP_PORT}:8484 restart: always volumes: - - "${APP_DATA_DIR}/data/grist-data:/persist" + - ${APP_DATA_DIR}/data/grist-data:/persist networks: - tipi_main_network labels: From 36dac953a539341b2ed2357c9693217173b32eb7 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:03:55 +0000 Subject: [PATCH 083/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 969eaf94f9..1c90a27813 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,7 +4,8 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} + - APP_HOME_URL=${APP_PROTOCOL:-https}://${APP_DOMAIN} + - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies From 94572f85d63bf6cd2060b964961e371c568711b0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:13:18 +0000 Subject: [PATCH 084/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 1c90a27813..19a1cbd73e 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,7 +4,7 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=${APP_PROTOCOL:-https}://${APP_DOMAIN} + - APP_HOME_URL=grist.rasies.com - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com From cda19deb0880fccf4fb33486d1c0cfd8c2eef4d1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:21:47 +0000 Subject: [PATCH 085/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 19a1cbd73e..d6382a7d7d 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,7 +4,7 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=grist.rasies.com + - APP_HOME_URL=https://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com From dadb5fb43519a49328c52b5031faf919cf32f0c1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:23:59 +0000 Subject: [PATCH 086/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index d6382a7d7d..8ecea890f7 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,7 +4,7 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=https://${APP_DOMAIN} + - APP_HOME_URL=http://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com From c2ef00eb50a4a2a7ddb20fe775b52b6087f83431 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:31:35 +0000 Subject: [PATCH 087/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 8ecea890f7..0438da9c81 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -9,6 +9,7 @@ services: - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies + - TMPDIR=/persit/tmp image: gristlabs/grist:1.1.16 ports: - ${APP_PORT}:8484 From 4d6e09a5145d16f47e43ee78c186fd872410493b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:47:26 +0000 Subject: [PATCH 088/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 0438da9c81..0d72696939 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -44,3 +44,7 @@ services: traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true runtipi.managed: true + + # WebSocket support + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade From 169f5fce0db93deecba066e973f80a4764eed8ca Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:51:51 +0000 Subject: [PATCH 089/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 0d72696939..6620cb8308 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,7 +4,7 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=http://${APP_DOMAIN} + - APP_HOME_URL=https://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com From 2407437d6c96f245696667685a5babd163a388b3 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 14:53:43 +0000 Subject: [PATCH 090/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 6620cb8308..84240c61e9 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -9,7 +9,6 @@ services: - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies - - TMPDIR=/persit/tmp image: gristlabs/grist:1.1.16 ports: - ${APP_PORT}:8484 @@ -45,6 +44,3 @@ services: traefik.http.routers.grist-local.tls: true runtipi.managed: true - # WebSocket support - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade From 4154d2d1bad2a7310a3e325b35c7343797add09c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:07:29 +0000 Subject: [PATCH 091/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 84240c61e9..196b7b2cf6 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -9,6 +9,13 @@ services: - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies + - GRIST_ALLOWED_HOSTS=https://grist.rasies.com # Replace with webhook target domains + - GRIST_SINGLE_ORG=myorg + - GRIST_HIDE_UI_ELEMENTS=billing + - GRIST_LIST_PUBLIC_SITES=false + - GRIST_ORG_IN_PATH=false + - GRIST_PAGE_TITLE_SUFFIX=_blank + - GRIST_SUPPORT_ANON=false image: gristlabs/grist:1.1.16 ports: - ${APP_PORT}:8484 From ed76f50f5032c31202051ff2558e885318fd479c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:09:29 +0000 Subject: [PATCH 092/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 196b7b2cf6..ebc50d780b 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -50,4 +50,6 @@ services: traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true runtipi.managed: true - + # WebSocket support + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade From 382f75d148bfa1b209b6bdf2247580e79be6d45f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:14:17 +0000 Subject: [PATCH 093/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index ebc50d780b..bedac52a47 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,13 +4,12 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=https://${APP_DOMAIN} + - APP_HOME_URL=https://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies - - GRIST_ALLOWED_HOSTS=https://grist.rasies.com # Replace with webhook target domains - - GRIST_SINGLE_ORG=myorg + - GRIST_ALLOWED_HOSTS=https://grist.rasies.com - GRIST_HIDE_UI_ELEMENTS=billing - GRIST_LIST_PUBLIC_SITES=false - GRIST_ORG_IN_PATH=false @@ -49,7 +48,6 @@ services: traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true - runtipi.managed: true # WebSocket support traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade From 89dfd51c7cafbe8324c29545940827cab36b29cf Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:19:59 +0000 Subject: [PATCH 094/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index bedac52a47..607afb35d6 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -15,6 +15,7 @@ services: - GRIST_ORG_IN_PATH=false - GRIST_PAGE_TITLE_SUFFIX=_blank - GRIST_SUPPORT_ANON=false + - TMPDIR=/persist/tmp image: gristlabs/grist:1.1.16 ports: - ${APP_PORT}:8484 @@ -51,3 +52,4 @@ services: # WebSocket support traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade + From 5b664289508e4eaa0fb30b22f31975c23380e47b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:36:39 +0000 Subject: [PATCH 095/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 607afb35d6..b4406f18c5 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -9,11 +9,9 @@ services: - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - GRIST_SINGLE_ORG=rasies - - GRIST_ALLOWED_HOSTS=https://grist.rasies.com - GRIST_HIDE_UI_ELEMENTS=billing - GRIST_LIST_PUBLIC_SITES=false - GRIST_ORG_IN_PATH=false - - GRIST_PAGE_TITLE_SUFFIX=_blank - GRIST_SUPPORT_ANON=false - TMPDIR=/persist/tmp image: gristlabs/grist:1.1.16 @@ -49,7 +47,4 @@ services: traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true - # WebSocket support - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Upgrade: websocket - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.Connection: Upgrade From 9d71a837e6fe670bb648ed4181c17e478c9265c0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:43:32 +0000 Subject: [PATCH 096/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index b4406f18c5..02ef8caf89 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,17 +4,9 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=https://${APP_DOMAIN} + - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - - GRIST_SESSION_SECRET=Mycobacteri@98 - - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - - GRIST_SINGLE_ORG=rasies - - GRIST_HIDE_UI_ELEMENTS=billing - - GRIST_LIST_PUBLIC_SITES=false - - GRIST_ORG_IN_PATH=false - - GRIST_SUPPORT_ANON=false - - TMPDIR=/persist/tmp - image: gristlabs/grist:1.1.16 + image: gristlabs/grist:1.1.18 ports: - ${APP_PORT}:8484 restart: always @@ -47,4 +39,4 @@ services: traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true - + runtipi.managed: true From 3835ff344be0ee67f91409ba099ef30ea6996f44 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 21 Sep 2024 18:56:48 +0000 Subject: [PATCH 097/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 02ef8caf89..cbfeb59378 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -6,12 +6,16 @@ services: environment: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} + - PUID=1000 + - PGID=1000 + - SUBDOMAINS=grist image: gristlabs/grist:1.1.18 ports: - ${APP_PORT}:8484 restart: always volumes: - ${APP_DATA_DIR}/data/grist-data:/persist + - ${APP_DATA_DIR}/data/tmp:/tmp networks: - tipi_main_network labels: From a589783e764c51183df3165c052ad9444f87ecc4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 26 Sep 2024 00:44:52 +0000 Subject: [PATCH 098/224] Add wordpress_elderseth --- apps/glance/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/glance/docker-compose.yml b/apps/glance/docker-compose.yml index aea630bfea..43564525c2 100755 --- a/apps/glance/docker-compose.yml +++ b/apps/glance/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: glance: - image: glanceapp/glance:v0.5.1 + image: glanceapp/glance:latest restart: unless-stopped container_name: glance ports: From 470138f21921a19e5d07769393bcb017e28d52c4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 26 Sep 2024 19:28:53 +0000 Subject: [PATCH 099/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 113 +++++++++++++++++++++--------------- 1 file changed, 67 insertions(+), 46 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index e9d2e54106..913b29d0ae 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,56 +1,27 @@ -pages: - - name: Home +name: Markets columns: - size: small widgets: - - type: calendar - - - type: rss - limit: 10 - collapse-after: 3 - cache: 3h - feeds: - - url: https://ciechanow.ski/atom.xml - - url: https://www.joshwcomeau.com/rss.xml - title: Josh Comeau - - url: https://samwho.dev/rss.xml - - url: https://awesomekling.github.io/feed.xml - - url: https://ishadeed.com/feed.xml - title: Ahmad Shadeed - - - type: twitch-channels - channels: - - theprimeagen - - cohhcarnage - - christitustech - - blurbs - - asmongold - - jembawls - - - size: full - widgets: - - type: hacker-news - - - type: videos - channels: - - UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling - - UCv6J_jJa8GJqFwQNgNrMuww # ServeTheHome - - UCOk-gHyjcWZNj3Br4oxwh0A # Techno Tim - - - type: reddit - subreddit: selfhosted - - - size: small - widgets: - - type: weather - location: London, United Kingdom - - - type: stocks - stocks: + - type: markets + title: Indices + markets: - symbol: SPY name: S&P 500 + - symbol: DX-Y.NYB + name: Dollar Index + + - type: markets + title: Crypto + markets: - symbol: BTC-USD name: Bitcoin + - symbol: ETH-USD + name: Ethereum + + - type: markets + title: Stocks + sort-by: absolute-change + markets: - symbol: NVDA name: NVIDIA - symbol: AAPL @@ -63,3 +34,53 @@ pages: name: AMD - symbol: RDDT name: Reddit + - symbol: AMZN + name: Amazon + - symbol: TSLA + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology + - type: reddit + show-thumbnails: true + subreddit: wallstreetbets + + - type: videos + style: grid-cards + collapse-after-rows: 3 + channels: + - UCvSXMi2LebwJEM1s4bz5IBA # New Money + - UCV6KDgJskWaEckne5aPA0aQ # Graham Stephan + - UCAzhpt9DmG6PnHXjmJTvRGQ # Federal Reserve + + - size: small + widgets: + - type: rss + title: News + limit: 30 + collapse-after: 13 + feeds: + - url: https://www.ft.com/technology?format=rss + title: Financial Times + - url: https://feeds.a.dj.com/rss/RSSMarketsMain.xml + title: Wall Street Journal From a722483f94779e5ff0a10f6cd87acaffdd4a9e78 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 26 Sep 2024 20:15:45 +0000 Subject: [PATCH 100/224] Add wordpress_elderseth --- apps/glance/config.json | 2 +- apps/glance/docker-compose.json | 2 +- apps/glance/docker-compose.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/glance/config.json b/apps/glance/config.json index 9bc90d323e..0efcb066b9 100755 --- a/apps/glance/config.json +++ b/apps/glance/config.json @@ -6,7 +6,7 @@ "exposable": true, "id": "glance", "tipi_version": 4, - "version": "0.5.1", + "version": "0.6.1", "categories": ["utilities"], "description": "A self-hosted dashboard that puts all your feeds in one place", "short_desc": "Super configurable dashboard", diff --git a/apps/glance/docker-compose.json b/apps/glance/docker-compose.json index f54e922c2f..165ac48c3f 100755 --- a/apps/glance/docker-compose.json +++ b/apps/glance/docker-compose.json @@ -1,7 +1,7 @@ { "services": [ { - "image": "glanceapp/glance:v0.5.1", + "image": "glanceapp/glance:v0.6.1", "name": "glance", "internalPort": 8080, "isMain": true, diff --git a/apps/glance/docker-compose.yml b/apps/glance/docker-compose.yml index 43564525c2..5e7ddaeb11 100755 --- a/apps/glance/docker-compose.yml +++ b/apps/glance/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: glance: - image: glanceapp/glance:latest + image: glanceapp/glance-v0.6.1 restart: unless-stopped container_name: glance ports: From 69f5378f0c5a44dbb5779b5e8be7d7342d5201b4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 16:21:57 +0000 Subject: [PATCH 101/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 59 ++++++++++++++++++++++- apps/glance/data/glance.yml_bk | 86 ++++++++++++++++++++++++++++++++++ 2 files changed, 144 insertions(+), 1 deletion(-) create mode 100755 apps/glance/data/glance.yml_bk diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 913b29d0ae..64f963ffd6 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,4 +1,61 @@ -name: Markets +pages: + - name: Startpage + width: slim + hide-desktop-navigation: true + center-vertically: true + columns: + - size: full + widgets: + - type: search + autofocus: true + + - type: monitor + cache: 1m + title: Services + sites: + - title: LinkWarden + url: https://links.rasies.com/ + icon: si:jellyfin + - title: DATA + url: https://data.rasies.com/ + icon: si:gitea + - title: Immich + url: https://photos.rasies.com/ + icon: si:immich + - title: AdGuard Home + url: https://yourdomain.com/ + icon: si:adguard + - title: Vaultwarden + url: https://yourdomain.com/ + icon: si:vaultwarden + + - type: bookmarks + groups: + - title: General + links: + - title: Gmail + url: https://mail.google.com/mail/u/0/ + - title: Amazon + url: https://www.amazon.com/ + - title: Github + url: https://github.com/ + - title: Entertainment + links: + - title: YouTube + url: https://www.youtube.com/ + - title: Prime Video + url: https://www.primevideo.com/ + - title: Disney+ + url: https://www.disneyplus.com/ + - title: Social + links: + - title: Reddit + url: https://www.reddit.com/ + - title: Twitter + url: https://twitter.com/ + - title: Instagram + url: https://www.instagram.com/ + - name: Markets columns: - size: small widgets: diff --git a/apps/glance/data/glance.yml_bk b/apps/glance/data/glance.yml_bk new file mode 100755 index 0000000000..913b29d0ae --- /dev/null +++ b/apps/glance/data/glance.yml_bk @@ -0,0 +1,86 @@ +name: Markets + columns: + - size: small + widgets: + - type: markets + title: Indices + markets: + - symbol: SPY + name: S&P 500 + - symbol: DX-Y.NYB + name: Dollar Index + + - type: markets + title: Crypto + markets: + - symbol: BTC-USD + name: Bitcoin + - symbol: ETH-USD + name: Ethereum + + - type: markets + title: Stocks + sort-by: absolute-change + markets: + - symbol: NVDA + name: NVIDIA + - symbol: AAPL + name: Apple + - symbol: MSFT + name: Microsoft + - symbol: GOOGL + name: Google + - symbol: AMD + name: AMD + - symbol: RDDT + name: Reddit + - symbol: AMZN + name: Amazon + - symbol: TSLA + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology + - type: reddit + show-thumbnails: true + subreddit: wallstreetbets + + - type: videos + style: grid-cards + collapse-after-rows: 3 + channels: + - UCvSXMi2LebwJEM1s4bz5IBA # New Money + - UCV6KDgJskWaEckne5aPA0aQ # Graham Stephan + - UCAzhpt9DmG6PnHXjmJTvRGQ # Federal Reserve + + - size: small + widgets: + - type: rss + title: News + limit: 30 + collapse-after: 13 + feeds: + - url: https://www.ft.com/technology?format=rss + title: Financial Times + - url: https://feeds.a.dj.com/rss/RSSMarketsMain.xml + title: Wall Street Journal From 94b7072d23eb811dfa1c7e957571ad8a98762114 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 20:48:02 +0000 Subject: [PATCH 102/224] Add wordpress_elderseth --- apps/glance/data/.glance.yml.swp | Bin 0 -> 20480 bytes apps/glance/data/glance.yml | 59 +++++++++++++++++++++---------- 2 files changed, 41 insertions(+), 18 deletions(-) create mode 100644 apps/glance/data/.glance.yml.swp diff --git a/apps/glance/data/.glance.yml.swp b/apps/glance/data/.glance.yml.swp new file mode 100644 index 0000000000000000000000000000000000000000..53bd1e3fb80ceedeef3047d8b2458de80298a2d7 GIT binary patch literal 20480 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 literal 0 HcmV?d00001 diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 64f963ffd6..d1ee09812f 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -15,26 +15,47 @@ pages: sites: - title: LinkWarden url: https://links.rasies.com/ - icon: si:jellyfin + icon: si:internetarchive + - title: Vaultwarden + url: https://passwords.rasies.com + icon: si:vaultwarden - title: DATA url: https://data.rasies.com/ - icon: si:gitea - - title: Immich + icon: si:nextcloud + - title: Immich - Photos url: https://photos.rasies.com/ icon: si:immich - - title: AdGuard Home - url: https://yourdomain.com/ - icon: si:adguard - - title: Vaultwarden - url: https://yourdomain.com/ - icon: si:vaultwarden + - title: Kavita - Books + url: https://books.rasies.com/ + icon: si:bookstack + - title: mStream Music + url: https://music.rasies.com/ + icon: si:musicbrainz + - title: Game Boy + url: https://games.rasies.com/ + icon: si:nintendogameboy + - title: Flowise AI + url: https://flow.rasies.com/ + icon: si:kashflow + - title: OI + url: https://oi.rasies.com/ + icon: si:chatbot + - title: Activepieces AI + url: https://active.rasies.com/ + icon: si:activitypub + - title: AFFiNE + url: https://office.rasies.com/ + icon: si:affine + - title: SyncThing + url: https://sync.rasies.com/ + icon: si:syncthing - type: bookmarks groups: - title: General links: - - title: Gmail - url: https://mail.google.com/mail/u/0/ + - title: Yahoo Mail + url: https://mail.yahoo.com/ - title: Amazon url: https://www.amazon.com/ - title: Github @@ -47,14 +68,16 @@ pages: url: https://www.primevideo.com/ - title: Disney+ url: https://www.disneyplus.com/ - - title: Social + - title: Mine All Mine links: - - title: Reddit - url: https://www.reddit.com/ - - title: Twitter - url: https://twitter.com/ - - title: Instagram - url: https://www.instagram.com/ + - title: The Step Parent Path + url: https://stepparentpath.com/ + - title: TV Coffee Co. + url: https://tvcoffee.co + - title: Aweggly + url: https://aweggly.com/ + - title: Licking Vape! + url: https://lickingvape.com - name: Markets columns: - size: small From 1e9342da99aebe0b021c9b6c8f668d1e44bd7ab1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 21:37:05 +0000 Subject: [PATCH 103/224] Add wordpress_elderseth --- apps/glance/data/.glance.yml.swp | Bin 20480 -> 0 bytes apps/glance/data/glance.yml | 69 ++++++++++++++----------------- 2 files changed, 30 insertions(+), 39 deletions(-) delete mode 100644 apps/glance/data/.glance.yml.swp diff --git a/apps/glance/data/.glance.yml.swp b/apps/glance/data/.glance.yml.swp deleted file mode 100644 index 53bd1e3fb80ceedeef3047d8b2458de80298a2d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20480 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 diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index d1ee09812f..bd7687ba47 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -16,9 +16,6 @@ pages: - title: LinkWarden url: https://links.rasies.com/ icon: si:internetarchive - - title: Vaultwarden - url: https://passwords.rasies.com - icon: si:vaultwarden - title: DATA url: https://data.rasies.com/ icon: si:nextcloud @@ -28,12 +25,9 @@ pages: - title: Kavita - Books url: https://books.rasies.com/ icon: si:bookstack - - title: mStream Music - url: https://music.rasies.com/ - icon: si:musicbrainz - - title: Game Boy - url: https://games.rasies.com/ - icon: si:nintendogameboy + - title: Vaultwarden + url: https://passwords.rasies.com/ + icon: si:vaultwarden - title: Flowise AI url: https://flow.rasies.com/ icon: si:kashflow @@ -46,15 +40,12 @@ pages: - title: AFFiNE url: https://office.rasies.com/ icon: si:affine - - title: SyncThing - url: https://sync.rasies.com/ - icon: si:syncthing - type: bookmarks groups: - title: General links: - - title: Yahoo Mail + - title: Yahoo! Mail url: https://mail.yahoo.com/ - title: Amazon url: https://www.amazon.com/ @@ -68,16 +59,16 @@ pages: url: https://www.primevideo.com/ - title: Disney+ url: https://www.disneyplus.com/ - - title: Mine All Mine + - title: Mine links: - - title: The Step Parent Path - url: https://stepparentpath.com/ - title: TV Coffee Co. - url: https://tvcoffee.co + url: https://tvcoffee.co/ + - title: The Step Parent Path + url: https://stepparentpath.com - title: Aweggly - url: https://aweggly.com/ - - title: Licking Vape! - url: https://lickingvape.com + url: https://aweggly.com + - title: Licking Vape Today! + url: https://likkingvape.com - name: Markets columns: - size: small @@ -140,27 +131,27 @@ pages: widgets: - type: reddit show-thumbnails: true - subreddit: technology - - type: reddit - show-thumbnails: true - subreddit: wallstreetbets - - - type: videos - style: grid-cards - collapse-after-rows: 3 - channels: - - UCvSXMi2LebwJEM1s4bz5IBA # New Money - - UCV6KDgJskWaEckne5aPA0aQ # Graham Stephan - - UCAzhpt9DmG6PnHXjmJTvRGQ # Federal Reserve + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta - - size: small + - size: full widgets: - type: rss title: News - limit: 30 - collapse-after: 13 + style: horizontal-cards feeds: - - url: https://www.ft.com/technology?format=rss - title: Financial Times - - url: https://feeds.a.dj.com/rss/RSSMarketsMain.xml - title: Wall Street Journal + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology From 3633ad055bcab3aecd2d91c2b27c2517703c432f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 21:43:51 +0000 Subject: [PATCH 104/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index bd7687ba47..dd01814a34 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -64,11 +64,12 @@ pages: - title: TV Coffee Co. url: https://tvcoffee.co/ - title: The Step Parent Path - url: https://stepparentpath.com + url: https://stepparentpath.com/ - title: Aweggly url: https://aweggly.com - title: Licking Vape Today! - url: https://likkingvape.com + url: https://likkingvape.com/ + - name: Markets columns: - size: small From 0ae779648582f963bea2af1ccbfcc8d3380b0d4c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 21:52:22 +0000 Subject: [PATCH 105/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index dd01814a34..97e1b5c068 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,7 +1,7 @@ pages: - name: Startpage - width: slim - hide-desktop-navigation: true + width: wide + hide-desktop-navigation: false center-vertically: true columns: - size: full @@ -68,7 +68,7 @@ pages: - title: Aweggly url: https://aweggly.com - title: Licking Vape Today! - url: https://likkingvape.com/ + url: https://lickingvape.com/ - name: Markets columns: From 4b1fde96681d3672a38c42b4672346d8ba43b15a Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:00:19 +0000 Subject: [PATCH 106/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 97e1b5c068..5c99f3026f 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -15,31 +15,31 @@ pages: sites: - title: LinkWarden url: https://links.rasies.com/ - icon: si:internetarchive + #icon: si:internetarchive - title: DATA url: https://data.rasies.com/ - icon: si:nextcloud + #icon: si:nextcloud - title: Immich - Photos url: https://photos.rasies.com/ - icon: si:immich + #icon: si:immich - title: Kavita - Books url: https://books.rasies.com/ - icon: si:bookstack + #icon: si:bookstack - title: Vaultwarden url: https://passwords.rasies.com/ - icon: si:vaultwarden + #icon: si:vaultwarden - title: Flowise AI url: https://flow.rasies.com/ - icon: si:kashflow + #icon: si:kashflow - title: OI url: https://oi.rasies.com/ - icon: si:chatbot + #icon: si:chatbot - title: Activepieces AI url: https://active.rasies.com/ - icon: si:activitypub + #icon: si:activitypub - title: AFFiNE url: https://office.rasies.com/ - icon: si:affine + #icon: si:affine - type: bookmarks groups: From bf5b106e475130379d48914ab5fba8d38c894b17 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:04:22 +0000 Subject: [PATCH 107/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 104 ++--------------------- apps/glance/data/glance2.yml | 158 +++++++++++++++++++++++++++++++++++ 2 files changed, 167 insertions(+), 95 deletions(-) create mode 100755 apps/glance/data/glance2.yml diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 5c99f3026f..7ae569a429 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -15,31 +15,31 @@ pages: sites: - title: LinkWarden url: https://links.rasies.com/ - #icon: si:internetarchive + icon: si:internetarchive - title: DATA url: https://data.rasies.com/ - #icon: si:nextcloud + icon: si:nextcloud - title: Immich - Photos url: https://photos.rasies.com/ - #icon: si:immich + icon: si:immich - title: Kavita - Books url: https://books.rasies.com/ - #icon: si:bookstack + icon: si:bookstack - title: Vaultwarden url: https://passwords.rasies.com/ - #icon: si:vaultwarden + icon: si:vaultwarden - title: Flowise AI url: https://flow.rasies.com/ - #icon: si:kashflow + icon: si:kashflow - title: OI url: https://oi.rasies.com/ - #icon: si:chatbot + icon: si:chatbot - title: Activepieces AI url: https://active.rasies.com/ - #icon: si:activitypub + icon: si:activitypub - title: AFFiNE url: https://office.rasies.com/ - #icon: si:affine + icon: si:affine - type: bookmarks groups: @@ -70,89 +70,3 @@ pages: - title: Licking Vape Today! url: https://lickingvape.com/ - - name: Markets - columns: - - size: small - widgets: - - type: markets - title: Indices - markets: - - symbol: SPY - name: S&P 500 - - symbol: DX-Y.NYB - name: Dollar Index - - - type: markets - title: Crypto - markets: - - symbol: BTC-USD - name: Bitcoin - - symbol: ETH-USD - name: Ethereum - - - type: markets - title: Stocks - sort-by: absolute-change - markets: - - symbol: NVDA - name: NVIDIA - - symbol: AAPL - name: Apple - - symbol: MSFT - name: Microsoft - - symbol: GOOGL - name: Google - - symbol: AMD - name: AMD - - symbol: RDDT - name: Reddit - - symbol: AMZN - name: Amazon - - symbol: TSLA - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - - type: group - widgets: - - type: reddit - show-thumbnails: true - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - - type: group - widgets: - - type: reddit - show-thumbnails: true - subreddit: technology diff --git a/apps/glance/data/glance2.yml b/apps/glance/data/glance2.yml new file mode 100755 index 0000000000..97e1b5c068 --- /dev/null +++ b/apps/glance/data/glance2.yml @@ -0,0 +1,158 @@ +pages: + - name: Startpage + width: wide + hide-desktop-navigation: false + center-vertically: true + columns: + - size: full + widgets: + - type: search + autofocus: true + + - type: monitor + cache: 1m + title: Services + sites: + - title: LinkWarden + url: https://links.rasies.com/ + icon: si:internetarchive + - title: DATA + url: https://data.rasies.com/ + icon: si:nextcloud + - title: Immich - Photos + url: https://photos.rasies.com/ + icon: si:immich + - title: Kavita - Books + url: https://books.rasies.com/ + icon: si:bookstack + - title: Vaultwarden + url: https://passwords.rasies.com/ + icon: si:vaultwarden + - title: Flowise AI + url: https://flow.rasies.com/ + icon: si:kashflow + - title: OI + url: https://oi.rasies.com/ + icon: si:chatbot + - title: Activepieces AI + url: https://active.rasies.com/ + icon: si:activitypub + - title: AFFiNE + url: https://office.rasies.com/ + icon: si:affine + + - type: bookmarks + groups: + - title: General + links: + - title: Yahoo! Mail + url: https://mail.yahoo.com/ + - title: Amazon + url: https://www.amazon.com/ + - title: Github + url: https://github.com/ + - title: Entertainment + links: + - title: YouTube + url: https://www.youtube.com/ + - title: Prime Video + url: https://www.primevideo.com/ + - title: Disney+ + url: https://www.disneyplus.com/ + - title: Mine + links: + - title: TV Coffee Co. + url: https://tvcoffee.co/ + - title: The Step Parent Path + url: https://stepparentpath.com/ + - title: Aweggly + url: https://aweggly.com + - title: Licking Vape Today! + url: https://lickingvape.com/ + + - name: Markets + columns: + - size: small + widgets: + - type: markets + title: Indices + markets: + - symbol: SPY + name: S&P 500 + - symbol: DX-Y.NYB + name: Dollar Index + + - type: markets + title: Crypto + markets: + - symbol: BTC-USD + name: Bitcoin + - symbol: ETH-USD + name: Ethereum + + - type: markets + title: Stocks + sort-by: absolute-change + markets: + - symbol: NVDA + name: NVIDIA + - symbol: AAPL + name: Apple + - symbol: MSFT + name: Microsoft + - symbol: GOOGL + name: Google + - symbol: AMD + name: AMD + - symbol: RDDT + name: Reddit + - symbol: AMZN + name: Amazon + - symbol: TSLA + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology From b50565e0165a4959b4c96dc74b0b0b4f3f1fdb34 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:05:23 +0000 Subject: [PATCH 108/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 7ae569a429..8c37235111 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -41,32 +41,4 @@ pages: url: https://office.rasies.com/ icon: si:affine - - type: bookmarks - groups: - - title: General - links: - - title: Yahoo! Mail - url: https://mail.yahoo.com/ - - title: Amazon - url: https://www.amazon.com/ - - title: Github - url: https://github.com/ - - title: Entertainment - links: - - title: YouTube - url: https://www.youtube.com/ - - title: Prime Video - url: https://www.primevideo.com/ - - title: Disney+ - url: https://www.disneyplus.com/ - - title: Mine - links: - - title: TV Coffee Co. - url: https://tvcoffee.co/ - - title: The Step Parent Path - url: https://stepparentpath.com/ - - title: Aweggly - url: https://aweggly.com - - title: Licking Vape Today! - url: https://lickingvape.com/ From 1d6bbe029c25f3860a1b742096483b341fc4e323 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:06:58 +0000 Subject: [PATCH 109/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 8c37235111..7328f5c41c 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -16,29 +16,5 @@ pages: - title: LinkWarden url: https://links.rasies.com/ icon: si:internetarchive - - title: DATA - url: https://data.rasies.com/ - icon: si:nextcloud - - title: Immich - Photos - url: https://photos.rasies.com/ - icon: si:immich - - title: Kavita - Books - url: https://books.rasies.com/ - icon: si:bookstack - - title: Vaultwarden - url: https://passwords.rasies.com/ - icon: si:vaultwarden - - title: Flowise AI - url: https://flow.rasies.com/ - icon: si:kashflow - - title: OI - url: https://oi.rasies.com/ - icon: si:chatbot - - title: Activepieces AI - url: https://active.rasies.com/ - icon: si:activitypub - - title: AFFiNE - url: https://office.rasies.com/ - icon: si:affine From 8f3fc956849f19c84254af4495dc1d63b4a35813 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:09:26 +0000 Subject: [PATCH 110/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 138 ++++++++++++++++++++++++++++++ apps/glance/data/glance2.yml | 158 ----------------------------------- 2 files changed, 138 insertions(+), 158 deletions(-) delete mode 100755 apps/glance/data/glance2.yml diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 7328f5c41c..28018f0db9 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -16,5 +16,143 @@ pages: - title: LinkWarden url: https://links.rasies.com/ icon: si:internetarchive + - title: DATA + url: https://data.rasies.com/ + icon: si:nextcloud + - title: Immich - Photos + url: https://photos.rasies.com/ + icon: si:immich + #- title: Kavita - Books + #url: https://books.rasies.com/ + #icon: si:bookstack + #- title: Vaultwarden + #url: https://passwords.rasies.com/ + #icon: si:vaultwarden + #- title: Flowise AI + #url: https://flow.rasies.com/ + #icon: si:kashflow + #- title: OI + #url: https://oi.rasies.com/ + #icon: si:chatbot + #- title: Activepieces AI + #url: https://active.rasies.com/ + #icon: si:activitypub + #- title: AFFiNE + #url: https://office.rasies.com/ + #icon: si:affine + - type: bookmarks + groups: + - title: General + links: + - title: Yahoo! Mail + url: https://mail.yahoo.com/ + - title: Amazon + url: https://www.amazon.com/ + - title: Github + url: https://github.com/ + - title: Entertainment + links: + - title: YouTube + url: https://www.youtube.com/ + - title: Prime Video + url: https://www.primevideo.com/ + - title: Disney+ + url: https://www.disneyplus.com/ + - title: Mine + links: + - title: TV Coffee Co. + url: https://tvcoffee.co/ + - title: The Step Parent Path + url: https://stepparentpath.com/ + - title: Aweggly + url: https://aweggly.com + - title: Licking Vape Today! + url: https://lickingvape.com/ + - name: Markets + columns: + - size: small + widgets: + - type: markets + title: Indices + markets: + - symbol: SPY + name: S&P 500 + - symbol: DX-Y.NYB + name: Dollar Index + + - type: markets + title: Crypto + markets: + - symbol: BTC-USD + name: Bitcoin + - symbol: ETH-USD + name: Ethereum + + - type: markets + title: Stocks + sort-by: absolute-change + markets: + - symbol: NVDA + name: NVIDIA + - symbol: AAPL + name: Apple + - symbol: MSFT + name: Microsoft + - symbol: GOOGL + name: Google + - symbol: AMD + name: AMD + - symbol: RDDT + name: Reddit + - symbol: AMZN + name: Amazon + - symbol: TSLA + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology diff --git a/apps/glance/data/glance2.yml b/apps/glance/data/glance2.yml deleted file mode 100755 index 97e1b5c068..0000000000 --- a/apps/glance/data/glance2.yml +++ /dev/null @@ -1,158 +0,0 @@ -pages: - - name: Startpage - width: wide - hide-desktop-navigation: false - center-vertically: true - columns: - - size: full - widgets: - - type: search - autofocus: true - - - type: monitor - cache: 1m - title: Services - sites: - - title: LinkWarden - url: https://links.rasies.com/ - icon: si:internetarchive - - title: DATA - url: https://data.rasies.com/ - icon: si:nextcloud - - title: Immich - Photos - url: https://photos.rasies.com/ - icon: si:immich - - title: Kavita - Books - url: https://books.rasies.com/ - icon: si:bookstack - - title: Vaultwarden - url: https://passwords.rasies.com/ - icon: si:vaultwarden - - title: Flowise AI - url: https://flow.rasies.com/ - icon: si:kashflow - - title: OI - url: https://oi.rasies.com/ - icon: si:chatbot - - title: Activepieces AI - url: https://active.rasies.com/ - icon: si:activitypub - - title: AFFiNE - url: https://office.rasies.com/ - icon: si:affine - - - type: bookmarks - groups: - - title: General - links: - - title: Yahoo! Mail - url: https://mail.yahoo.com/ - - title: Amazon - url: https://www.amazon.com/ - - title: Github - url: https://github.com/ - - title: Entertainment - links: - - title: YouTube - url: https://www.youtube.com/ - - title: Prime Video - url: https://www.primevideo.com/ - - title: Disney+ - url: https://www.disneyplus.com/ - - title: Mine - links: - - title: TV Coffee Co. - url: https://tvcoffee.co/ - - title: The Step Parent Path - url: https://stepparentpath.com/ - - title: Aweggly - url: https://aweggly.com - - title: Licking Vape Today! - url: https://lickingvape.com/ - - - name: Markets - columns: - - size: small - widgets: - - type: markets - title: Indices - markets: - - symbol: SPY - name: S&P 500 - - symbol: DX-Y.NYB - name: Dollar Index - - - type: markets - title: Crypto - markets: - - symbol: BTC-USD - name: Bitcoin - - symbol: ETH-USD - name: Ethereum - - - type: markets - title: Stocks - sort-by: absolute-change - markets: - - symbol: NVDA - name: NVIDIA - - symbol: AAPL - name: Apple - - symbol: MSFT - name: Microsoft - - symbol: GOOGL - name: Google - - symbol: AMD - name: AMD - - symbol: RDDT - name: Reddit - - symbol: AMZN - name: Amazon - - symbol: TSLA - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - - type: group - widgets: - - type: reddit - show-thumbnails: true - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - - type: group - widgets: - - type: reddit - show-thumbnails: true - subreddit: technology From a01ed045c634f7f8b143847ba77502982b16413f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:11:16 +0000 Subject: [PATCH 111/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 28018f0db9..1a304a6382 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -16,12 +16,12 @@ pages: - title: LinkWarden url: https://links.rasies.com/ icon: si:internetarchive - - title: DATA - url: https://data.rasies.com/ - icon: si:nextcloud - - title: Immich - Photos - url: https://photos.rasies.com/ - icon: si:immich + #- title: DATA + #url: https://data.rasies.com/ + #icon: si:nextcloud + #- title: Immich - Photos + #url: https://photos.rasies.com/ + #icon: si:immich #- title: Kavita - Books #url: https://books.rasies.com/ #icon: si:bookstack From 1f25b1a210c721efdb9ab849087d7d7a2ed78459 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 27 Sep 2024 22:14:30 +0000 Subject: [PATCH 112/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 48 ++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 1a304a6382..97e1b5c068 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -16,30 +16,30 @@ pages: - title: LinkWarden url: https://links.rasies.com/ icon: si:internetarchive - #- title: DATA - #url: https://data.rasies.com/ - #icon: si:nextcloud - #- title: Immich - Photos - #url: https://photos.rasies.com/ - #icon: si:immich - #- title: Kavita - Books - #url: https://books.rasies.com/ - #icon: si:bookstack - #- title: Vaultwarden - #url: https://passwords.rasies.com/ - #icon: si:vaultwarden - #- title: Flowise AI - #url: https://flow.rasies.com/ - #icon: si:kashflow - #- title: OI - #url: https://oi.rasies.com/ - #icon: si:chatbot - #- title: Activepieces AI - #url: https://active.rasies.com/ - #icon: si:activitypub - #- title: AFFiNE - #url: https://office.rasies.com/ - #icon: si:affine + - title: DATA + url: https://data.rasies.com/ + icon: si:nextcloud + - title: Immich - Photos + url: https://photos.rasies.com/ + icon: si:immich + - title: Kavita - Books + url: https://books.rasies.com/ + icon: si:bookstack + - title: Vaultwarden + url: https://passwords.rasies.com/ + icon: si:vaultwarden + - title: Flowise AI + url: https://flow.rasies.com/ + icon: si:kashflow + - title: OI + url: https://oi.rasies.com/ + icon: si:chatbot + - title: Activepieces AI + url: https://active.rasies.com/ + icon: si:activitypub + - title: AFFiNE + url: https://office.rasies.com/ + icon: si:affine - type: bookmarks groups: From 78d6aa921aad944550e4dcc23cdddc859347ed5c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 03:27:02 +0000 Subject: [PATCH 113/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 56 ++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 97e1b5c068..53d48e449b 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -41,34 +41,34 @@ pages: url: https://office.rasies.com/ icon: si:affine - - type: bookmarks - groups: - - title: General - links: - - title: Yahoo! Mail - url: https://mail.yahoo.com/ - - title: Amazon - url: https://www.amazon.com/ - - title: Github - url: https://github.com/ - - title: Entertainment - links: - - title: YouTube - url: https://www.youtube.com/ - - title: Prime Video - url: https://www.primevideo.com/ - - title: Disney+ - url: https://www.disneyplus.com/ - - title: Mine - links: - - title: TV Coffee Co. - url: https://tvcoffee.co/ - - title: The Step Parent Path - url: https://stepparentpath.com/ - - title: Aweggly - url: https://aweggly.com - - title: Licking Vape Today! - url: https://lickingvape.com/ + #- type: bookmarks + #groups: + #- title: General + #links: + #- title: Yahoo! Mail + # url: https://mail.yahoo.com/ + #- title: Amazon + # url: https://www.amazon.com/ + #- title: Github + # url: https://github.com/ + #- title: Entertainment + #links: + #- title: YouTube + # url: https://www.youtube.com/ + #- title: Prime Video + # url: https://www.primevideo.com/ + #- title: Disney+ + # url: https://www.disneyplus.com/ + #- title: Mine + #links: + #- title: TV Coffee Co. + # url: https://tvcoffee.co/ + #- title: The Step Parent Path + # url: https://stepparentpath.com/ + #- title: Aweggly + # url: https://aweggly.com + #- title: Licking Vape Today! + # url: https://lickingvape.com/ - name: Markets columns: From 855eb72d62299956c4f0bb8350c4fd8a37f6e690 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:34:27 +0000 Subject: [PATCH 114/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 38 ++++++++++--------------------------- 1 file changed, 10 insertions(+), 28 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 53d48e449b..a9768d36ab 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -41,34 +41,16 @@ pages: url: https://office.rasies.com/ icon: si:affine - #- type: bookmarks - #groups: - #- title: General - #links: - #- title: Yahoo! Mail - # url: https://mail.yahoo.com/ - #- title: Amazon - # url: https://www.amazon.com/ - #- title: Github - # url: https://github.com/ - #- title: Entertainment - #links: - #- title: YouTube - # url: https://www.youtube.com/ - #- title: Prime Video - # url: https://www.primevideo.com/ - #- title: Disney+ - # url: https://www.disneyplus.com/ - #- title: Mine - #links: - #- title: TV Coffee Co. - # url: https://tvcoffee.co/ - #- title: The Step Parent Path - # url: https://stepparentpath.com/ - #- title: Aweggly - # url: https://aweggly.com - #- title: Licking Vape Today! - # url: https://lickingvape.com/ + - type: bookmarks + links: + - title: TV Coffee Co. + url: https://tvcoffee.co/ + - title: The Step Parent Path + url: https://stepparentpath.com/ + - title: Aweggly + url: https://aweggly.com + - title: Licking Vape Today! + url: https://lickingvape.com/ - name: Markets columns: From 04983a0a05066505fd9c2171f8b270315561257a Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:37:18 +0000 Subject: [PATCH 115/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index a9768d36ab..4daa59eb54 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,14 +1,12 @@ pages: - name: Startpage width: wide - hide-desktop-navigation: false center-vertically: true columns: - size: full widgets: - type: search autofocus: true - - type: monitor cache: 1m title: Services @@ -40,7 +38,6 @@ pages: - title: AFFiNE url: https://office.rasies.com/ icon: si:affine - - type: bookmarks links: - title: TV Coffee Co. @@ -51,7 +48,6 @@ pages: url: https://aweggly.com - title: Licking Vape Today! url: https://lickingvape.com/ - - name: Markets columns: - size: small @@ -63,7 +59,6 @@ pages: name: S&P 500 - symbol: DX-Y.NYB name: Dollar Index - - type: markets title: Crypto markets: @@ -71,7 +66,6 @@ pages: name: Bitcoin - symbol: ETH-USD name: Ethereum - - type: markets title: Stocks sort-by: absolute-change @@ -96,7 +90,6 @@ pages: name: Intel - symbol: META name: Meta - - size: full widgets: - type: rss @@ -109,7 +102,6 @@ pages: title: Fox Business - url: https://moxie.foxbusiness.com/google-publisher/technology.xml title: Fox Business - - type: group widgets: - type: reddit @@ -119,7 +111,6 @@ pages: name: Intel - symbol: META name: Meta - - size: full widgets: - type: rss @@ -132,7 +123,6 @@ pages: title: Fox Business - url: https://moxie.foxbusiness.com/google-publisher/technology.xml title: Fox Business - - type: group widgets: - type: reddit From ccfd153ea3dc1f32aa780c5860c5a10e1ffe6073 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:40:45 +0000 Subject: [PATCH 116/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 80 ------------------------------------- 1 file changed, 80 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 4daa59eb54..b7f4f9bb6b 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -48,83 +48,3 @@ pages: url: https://aweggly.com - title: Licking Vape Today! url: https://lickingvape.com/ - - name: Markets - columns: - - size: small - widgets: - - type: markets - title: Indices - markets: - - symbol: SPY - name: S&P 500 - - symbol: DX-Y.NYB - name: Dollar Index - - type: markets - title: Crypto - markets: - - symbol: BTC-USD - name: Bitcoin - - symbol: ETH-USD - name: Ethereum - - type: markets - title: Stocks - sort-by: absolute-change - markets: - - symbol: NVDA - name: NVIDIA - - symbol: AAPL - name: Apple - - symbol: MSFT - name: Microsoft - - symbol: GOOGL - name: Google - - symbol: AMD - name: AMD - - symbol: RDDT - name: Reddit - - symbol: AMZN - name: Amazon - - symbol: TSLA - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - type: group - widgets: - - type: reddit - show-thumbnails: true - name: Tesla - - symbol: INTC - name: Intel - - symbol: META - name: Meta - - size: full - widgets: - - type: rss - title: News - style: horizontal-cards - feeds: - - url: https://feeds.bloomberg.com/markets/news.rss - title: Bloomberg - - url: https://moxie.foxbusiness.com/google-publisher/markets.xml - title: Fox Business - - url: https://moxie.foxbusiness.com/google-publisher/technology.xml - title: Fox Business - - type: group - widgets: - - type: reddit - show-thumbnails: true - subreddit: technology From eeac20e231c9cd8472b2602f1e2a7e2282984157 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:46:21 +0000 Subject: [PATCH 117/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index b7f4f9bb6b..798c550dfd 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,6 +1,6 @@ pages: - name: Startpage - width: wide + width: slim center-vertically: true columns: - size: full @@ -39,12 +39,14 @@ pages: url: https://office.rasies.com/ icon: si:affine - type: bookmarks - links: - - title: TV Coffee Co. - url: https://tvcoffee.co/ - - title: The Step Parent Path - url: https://stepparentpath.com/ - - title: Aweggly - url: https://aweggly.com - - title: Licking Vape Today! - url: https://lickingvape.com/ + groups: + - title: Mine + links: + - title: TV Coffee Co. + url: https://tvcoffee.co/ + - title: The Step Parent Path + url: https://stepparentpath.com/ + - title: Aweggly + url: https://aweggly.com + - title: Licking Vape Today! + url: https://lickingvape.com/ From 5e09707259e2e99af19335bacf069f81643243d7 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:52:19 +0000 Subject: [PATCH 118/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 798c550dfd..40525098cf 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,3 +1,11 @@ +theme: + background-color: 240 21 15 + contrast-multiplier: 1.2 + primary-color: 217 92 83 + positive-color: 115 54 76 + negative-color: 347 70 65 + + pages: - name: Startpage width: slim From 61b8e8d0fe07481d029527b5b9f9190a3292e823 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 10:58:57 +0000 Subject: [PATCH 119/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 40525098cf..44aa8308f5 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -1,11 +1,3 @@ -theme: - background-color: 240 21 15 - contrast-multiplier: 1.2 - primary-color: 217 92 83 - positive-color: 115 54 76 - negative-color: 347 70 65 - - pages: - name: Startpage width: slim @@ -58,3 +50,4 @@ pages: url: https://aweggly.com - title: Licking Vape Today! url: https://lickingvape.com/ + From bfdaab31eb5dc3e236b57f40b3095e66791a95bf Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 11:02:44 +0000 Subject: [PATCH 120/224] Add wordpress_elderseth --- apps/glance/data/glance.yml | 85 +++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/apps/glance/data/glance.yml b/apps/glance/data/glance.yml index 44aa8308f5..5e03b583b9 100755 --- a/apps/glance/data/glance.yml +++ b/apps/glance/data/glance.yml @@ -50,4 +50,89 @@ pages: url: https://aweggly.com - title: Licking Vape Today! url: https://lickingvape.com/ + - name: Markets + columns: + - size: small + widgets: + - type: markets + title: Indices + markets: + - symbol: SPY + name: S&P 500 + - symbol: DX-Y.NYB + name: Dollar Index + + - type: markets + title: Crypto + markets: + - symbol: BTC-USD + name: Bitcoin + - symbol: ETH-USD + name: Ethereum + + - type: markets + title: Stocks + sort-by: absolute-change + markets: + - symbol: NVDA + name: NVIDIA + - symbol: AAPL + name: Apple + - symbol: MSFT + name: Microsoft + - symbol: GOOGL + name: Google + - symbol: AMD + name: AMD + - symbol: RDDT + name: Reddit + - symbol: AMZN + name: Amazon + - symbol: TSLA + name: Tesla + - symbol: INTC + name: Intel + - symbol: META + name: Meta + + - size: full + widgets: + - type: rss + title: News + style: horizontal-cards + feeds: + - url: https://feeds.bloomberg.com/markets/news.rss + title: Bloomberg + - url: https://moxie.foxbusiness.com/google-publisher/markets.xml + title: Fox Business + - url: https://moxie.foxbusiness.com/google-publisher/technology.xml + title: Fox Business + + - type: group + widgets: + - type: reddit + show-thumbnails: true + subreddit: technology + - type: reddit + show-thumbnails: true + subreddit: wallstreetbets + - type: videos + style: grid-cards + collapse-after-rows: 3 + channels: + - UCvSXMi2LebwJEM1s4bz5IBA # New Money + - UCV6KDgJskWaEckne5aPA0aQ # Graham Stephan + - UCAzhpt9DmG6PnHXjmJTvRGQ # Federal Reserve + + - size: small + widgets: + - type: rss + title: News + limit: 30 + collapse-after: 13 + feeds: + - url: https://www.ft.com/technology?format=rss + title: Financial Times + - url: https://feeds.a.dj.com/rss/RSSMarketsMain.xml + title: Wall Street Journal From 29d5480f5c322844c6cd0a9ff7c447a5df275fb6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 11:17:17 +0000 Subject: [PATCH 121/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index cbfeb59378..7f46a6debf 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -9,13 +9,12 @@ services: - PUID=1000 - PGID=1000 - SUBDOMAINS=grist - image: gristlabs/grist:1.1.18 + image: gristlabs/grist:1.2.0 ports: - ${APP_PORT}:8484 restart: always volumes: - ${APP_DATA_DIR}/data/grist-data:/persist - - ${APP_DATA_DIR}/data/tmp:/tmp networks: - tipi_main_network labels: From 963c1d661cfeeca58fc103356e9a04bced62e91e Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 11:54:37 +0000 Subject: [PATCH 122/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 7f46a6debf..6bc88cbb61 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -1,5 +1,4 @@ -version: "2.1" - +version: "3.9" services: grist: container_name: grist @@ -17,10 +16,19 @@ services: - ${APP_DATA_DIR}/data/grist-data:/persist networks: - tipi_main_network + deploy: + resources: + limits: + memory: 8G + cpus: '12' labels: # Main traefik.enable: true traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Proto: https + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Host: ${APP_DOMAIN} + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Port: 443 + traefik.http.middlewares.grist-websocket.headers.customresponseheaders.Access-Control-Allow-Origin: "*" traefik.http.services.grist.loadbalancer.server.port: 8484 # Web traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) @@ -43,3 +51,8 @@ services: traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true runtipi.managed: true + +networks: + tipi_main_network: + driver: bridge + From 81e49c7098687296f9ae4442ab493d1e29da60ac Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 12:08:40 +0000 Subject: [PATCH 123/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 6bc88cbb61..46232bf59e 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -8,6 +8,14 @@ services: - PUID=1000 - PGID=1000 - SUBDOMAINS=grist + - TMPDIR=/persist/tmp + - GRIST_FORCE_LOGIN=true + - GRIST_SUPPORT_ANON=false + - GRIST_DEFAULT_EMAIL=${EMAIL} + - GRIST_SESSION_SECRET=invent-a-secret-here + - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User + - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout + - GRIST_SINGLE_ORG=grist image: gristlabs/grist:1.2.0 ports: - ${APP_PORT}:8484 From f89a341e185e048b827d2b03652caa54dc43cf73 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 28 Sep 2024 12:16:22 +0000 Subject: [PATCH 124/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 46232bf59e..c941dabcfa 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -11,8 +11,8 @@ services: - TMPDIR=/persist/tmp - GRIST_FORCE_LOGIN=true - GRIST_SUPPORT_ANON=false - - GRIST_DEFAULT_EMAIL=${EMAIL} - - GRIST_SESSION_SECRET=invent-a-secret-here + - GRIST_DEFAULT_EMAIL=ianras@yahoo.com + - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout - GRIST_SINGLE_ORG=grist From ce9ba06eb19324bc996edb231bde5bb4384eef79 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 29 Sep 2024 16:44:08 +0000 Subject: [PATCH 125/224] Add wordpress_elderseth --- apps/collabora/metadata/description.md | 27 +++++++++++++++++++++++++ apps/collabora/metadata/logo.jpg | Bin 0 -> 15007 bytes 2 files changed, 27 insertions(+) create mode 100755 apps/collabora/metadata/description.md create mode 100755 apps/collabora/metadata/logo.jpg diff --git a/apps/collabora/metadata/description.md b/apps/collabora/metadata/description.md new file mode 100755 index 0000000000..41acee28d7 --- /dev/null +++ b/apps/collabora/metadata/description.md @@ -0,0 +1,27 @@ +# Collabora Online is a powerful collaborative office suite that supports all major document, spreadsheet and presentation file formats, which you can integrate into your own infrastructure. + +Collabora Online provides data security and sovereignty, and is ideally suited to the demands of a modern distributed working environment. + +Delivering a familiar look and feel, Collabora Online represents a real alternative to other big-brands solutions, giving you control and flexibility. + + +# Connect Everywhere +We support all mainstream, modern browser versions that are still supported by their vendors. +Available in the Google Play store. +Available in the Apple store. +Desktop version available for Windows, Mac and Linux. + +# Document Support +Experts in interoperability +Preservation of layout and formatting of documents +text documents (odt, docx, doc,…) +spreadsheets (ods, xlsx, xls, …) +presentations (odp, pptx, ppt,…) + +# Secure Collaboration +GDPR-compliant +View and edit text documents, spreadsheets, presentations & more. +Collaborative editing features. +Long Term Support and signed security updates. +Works in any modern browser – no plugin needed. +Open Source, scalable, cost-effective. diff --git a/apps/collabora/metadata/logo.jpg b/apps/collabora/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 808d5db05b77db3089d97f2699cf18e1ef3c1201 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 29 Sep 2024 16:49:57 +0000 Subject: [PATCH 126/224] Add wordpress_elderseth --- apps/collabora/config.json | 30 +++++++++++++++ apps/collabora/docker-compose.yml | 62 +++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100755 apps/collabora/config.json create mode 100755 apps/collabora/docker-compose.yml diff --git a/apps/collabora/config.json b/apps/collabora/config.json new file mode 100755 index 0000000000..83e0b9f038 --- /dev/null +++ b/apps/collabora/config.json @@ -0,0 +1,30 @@ +{ + "name": "Collabora Office Online", + "available": true, + "port": 9980, + "exposable": true, + "id": "collabora", + "description": "Collabora Online is a powerful collaborative office suite that supports all major document, spreadsheet and presentation file formats, which you can integrate into your own infrastructure", + "tipi_version": 10, + "version": "2004", + "categories": ["social"], + "short_desc": "Popular Collaborative Office Suite", + "author": "Collabora", + "source": "https://github.com/CollaboraOnline/online", + "website": "https://www.collaboraonline.com", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml new file mode 100755 index 0000000000..c109f4e20d --- /dev/null +++ b/apps/collabora/docker-compose.yml @@ -0,0 +1,62 @@ +version: "3.9" + + +services: + collabora: + image: collabora/code + container_name: collabora + environment: + - domain=data.rasies.com + - enable_admin_console=true + - admin_=ianras + - admin_pass=Mycobacteri@98 + - enamble_macros=true + - dictionaries=en_US + ports: + - ${APP_PORT}:9980 + volumes: + - ${APP_DATA_DIR}/data/collabora:/var/lib/lool + restart: unless-stopped + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.collabora-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.collabora-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.collabora-insecure.entrypoints: web + traefik.http.routers.collabora-insecure.service: collabora + traefik.http.routers.collabora-insecure.middlewares: collabora-redirect + # Websecure + traefik.http.routers.collabora.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.collabora.entrypoints: websecure + traefik.http.routers.collabora.service: collabora + traefik.http.routers.collabora.tls.certresolver: myresolver + # Local domain + traefik.http.routers.collabora-local-insecure.rule: Host(`collabora.${LOCAL_DOMAIN}`) + traefik.http.routers.collabora-local-insecure.entrypoints: web + traefik.http.routers.collabora-local-insecure.service: collabora + traefik.http.routers.collabora-local-insecure.middlewares: collabora-redirect + # Local domain secure + traefik.http.routers.collabora-local.rule: Host(`collabora.${LOCAL_DOMAIN}`) + traefik.http.routers.collabora-local.entrypoints: websecure + traefik.http.routers.collabora-local.service: collabora + traefik.http.routers.collabora-local.tls: true + runtipi.managed: true + collabora-db: + container_name: collabora-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=collabora + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true From c54c102045b8643941dc5fc2fd14bf631c127a9f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 29 Sep 2024 17:17:15 +0000 Subject: [PATCH 127/224] Add wordpress_elderseth --- apps/speedtest-tracker/docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/speedtest-tracker/docker-compose.yml b/apps/speedtest-tracker/docker-compose.yml index 181ac362c7..89edf426a3 100755 --- a/apps/speedtest-tracker/docker-compose.yml +++ b/apps/speedtest-tracker/docker-compose.yml @@ -13,6 +13,7 @@ services: - DB_DATABASE=speedtest-tracker - DB_USERNAME=tipi - DB_PASSWORD=${SPEEDTEST_TRACKER_DB_PASSWORD} + - APP_KEY=base64:aFjSRE6GFx3t7n9F7wIx0B4yfm1p55K2fJbp+UwzwOg= - TZ=${TZ} restart: unless-stopped volumes: From 829a8a0a03cf6984695b59d04e8caa8d4f3ce3e6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 4 Oct 2024 21:23:39 +0000 Subject: [PATCH 128/224] Add wordpress_elderseth --- apps/affine/docker-compose.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/affine/docker-compose.yml b/apps/affine/docker-compose.yml index 57941698a7..176a4e9bbd 100755 --- a/apps/affine/docker-compose.yml +++ b/apps/affine/docker-compose.yml @@ -30,6 +30,7 @@ services: - AFFINE_ADMIN_EMAIL=${AFFINE_ADMIN_EMAIL} - AFFINE_ADMIN_PASSWORD=${AFFINE_ADMIN_PASSWORD} - TELEMETRY_ENABLE=${AFFINE_TELEMETRY_ENABLE} + - OPENAI_API_KEY=sk-ElZb9BRkog4MjEiv3_G6FwffIZ7KiL-RJm8sxXwogKT3BlbkFJM7pRtbGDk6fb32WOF_GHEyXq6tnfM6hhkfPTPIxhAA networks: - tipi_main_network labels: From 293be9a8484238d6e6d2c6af883940e144ab2b74 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 4 Oct 2024 21:38:32 +0000 Subject: [PATCH 129/224] Add wordpress_elderseth --- apps/affine/config.json | 12 ++++++++++-- apps/affine/docker-compose.yml | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/apps/affine/config.json b/apps/affine/config.json index e3847cceaf..2234a91539 100755 --- a/apps/affine/config.json +++ b/apps/affine/config.json @@ -44,10 +44,18 @@ "label": "Affine postgres password", "type": "random", "min": 32 - } + }, + { + "env_variable": "OPENAI_API_KEY", + "label": "OpenAI API Key", + "type": "text", + "required": false + } + + ], "supported_architectures": [ "arm64", "amd64" ] -} \ No newline at end of file +} diff --git a/apps/affine/docker-compose.yml b/apps/affine/docker-compose.yml index 176a4e9bbd..2fbc63654a 100755 --- a/apps/affine/docker-compose.yml +++ b/apps/affine/docker-compose.yml @@ -29,8 +29,8 @@ services: - NODE_ENV=production - AFFINE_ADMIN_EMAIL=${AFFINE_ADMIN_EMAIL} - AFFINE_ADMIN_PASSWORD=${AFFINE_ADMIN_PASSWORD} + - OPENAI_API_KEY=${OPENAI_API_KEY} - TELEMETRY_ENABLE=${AFFINE_TELEMETRY_ENABLE} - - OPENAI_API_KEY=sk-ElZb9BRkog4MjEiv3_G6FwffIZ7KiL-RJm8sxXwogKT3BlbkFJM7pRtbGDk6fb32WOF_GHEyXq6tnfM6hhkfPTPIxhAA networks: - tipi_main_network labels: From 6ba48befd69de1b20d474d33be4faf47747e231b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 5 Oct 2024 18:08:41 +0000 Subject: [PATCH 130/224] Add wordpress_elderseth --- apps/grist/config.json | 16 ++++++++++++++-- apps/grist/docker-compose.yml | 8 ++++---- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/apps/grist/config.json b/apps/grist/config.json index c8a070ef78..89c6491949 100755 --- a/apps/grist/config.json +++ b/apps/grist/config.json @@ -27,8 +27,20 @@ "value": "gvisor" } ], - "env_variable": "GRIST_SANDBOX_FLAVOR" - } + "env_variable": "GRIST_SANDBOX_FLAVOR" + }, + { + "type": "", + "label": "Default Email", + "required": true, + "env_variable": "GRIST_DEFAULT_EMAIL" + }, + { + "type": "", + "label": "Session Seceret", + "required": true, + "env_variable": "GRIST_SESSION_SECRET" + } ], "supported_architectures": ["arm64", "amd64"] } diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index c941dabcfa..3c6e560cf2 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -8,20 +8,20 @@ services: - PUID=1000 - PGID=1000 - SUBDOMAINS=grist - - TMPDIR=/persist/tmp - GRIST_FORCE_LOGIN=true - GRIST_SUPPORT_ANON=false - - GRIST_DEFAULT_EMAIL=ianras@yahoo.com - - GRIST_SESSION_SECRET=Mycobacteri@98 - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout - - GRIST_SINGLE_ORG=grist + - GRIST_SINGLE_ORG=rasies + - GRIST_DEFAULT_EMAIL=${GRIST_DEFAULT_EMAIL} + - GRIST_SESSION_SECRET=${GRIST_SESSION_SECRET} image: gristlabs/grist:1.2.0 ports: - ${APP_PORT}:8484 restart: always volumes: - ${APP_DATA_DIR}/data/grist-data:/persist + - ${APP_DATA_DIR}/data/grist-data/tmp:/tmp networks: - tipi_main_network deploy: From 6ce32f6c48d8b858a9631fd595cc5cee945055b9 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 6 Oct 2024 02:30:56 +0000 Subject: [PATCH 131/224] Add wordpress_elderseth --- apps/n8n/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/n8n/config.json b/apps/n8n/config.json index 9d9af947f4..99de064201 100755 --- a/apps/n8n/config.json +++ b/apps/n8n/config.json @@ -4,7 +4,7 @@ "available": true, "exposable": true, "deprecated": true, - "port": 8094, + "port": 8099, "id": "n8n", "tipi_version": 27, "version": "0.237.0", From db5fcf1267ca33f474cc46585a85e1c53b13ee29 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sun, 6 Oct 2024 02:47:47 +0000 Subject: [PATCH 132/224] Add wordpress_elderseth --- apps/n8n/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/n8n/config.json b/apps/n8n/config.json index 99de064201..abd11f7089 100755 --- a/apps/n8n/config.json +++ b/apps/n8n/config.json @@ -4,7 +4,7 @@ "available": true, "exposable": true, "deprecated": true, - "port": 8099, + "port": 8999, "id": "n8n", "tipi_version": 27, "version": "0.237.0", From 461b8845530f1d607050056bec1077a74ca89306 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Wed, 16 Oct 2024 01:41:53 +0000 Subject: [PATCH 133/224] Add wordpress_elderseth --- apps/nginx_data/data/config/nginx.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/nginx_data/data/config/nginx.conf b/apps/nginx_data/data/config/nginx.conf index 7abe7482e5..16c02dc668 100755 --- a/apps/nginx_data/data/config/nginx.conf +++ b/apps/nginx_data/data/config/nginx.conf @@ -2,11 +2,11 @@ events {} http { server { - listen 80; + listen 443; server_name data.rasies.com; location / { - proxy_pass http://192.168.1.12:80; + proxy_pass https://192.168.1.12:443; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From 4510b860349f0044374f1f14c5b333c3689879cf Mon Sep 17 00:00:00 2001 From: ianras77 Date: Wed, 16 Oct 2024 01:50:10 +0000 Subject: [PATCH 134/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 0123df36f0..4cfbddf306 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -2,11 +2,11 @@ events {} http { server { - listen 80; + listen 443; server_name data.rasies.com; location / { - proxy_pass http://192.168.1.12:80; + proxy_pass https://192.168.1.12:443; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; From 9a43ef71c3092925c170f7d653aa471156e3ef0b Mon Sep 17 00:00:00 2001 From: ianras77 Date: Wed, 16 Oct 2024 02:13:16 +0000 Subject: [PATCH 135/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 4cfbddf306..d1161d5e4a 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -2,7 +2,7 @@ events {} http { server { - listen 443; + listen data.rasies.com; server_name data.rasies.com; location / { From b5d47b09983c65cc692733f4694e8de30173c80f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 17:01:52 +0000 Subject: [PATCH 136/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index d1161d5e4a..8258242586 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -1,17 +1,28 @@ -events {} - http { + # Redirect HTTP traffic to HTTPS server { - listen data.rasies.com; - server_name data.rasies.com; + listen 80; + server_name data.rasies.com; + + # Redirect all HTTP requests to HTTPS handled by Traefik + return 301 https://$host$request_uri; + } - location / { - proxy_pass https://192.168.1.12:443; + # Handle HTTPS traffic and proxy to Apache (with Traefik handling SSL termination) + server { + listen 443; + server_name data.rasies.com; + + # Since Traefik handles SSL, there's no need for SSL configuration here in Nginx + location / { + proxy_pass https://192.168.1.12:443; # Forward HTTPS traffic to Apache proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; - } + # If using a self-signed certificate on Apache, disable SSL verification: + proxy_ssl_verify off; + } } } From 3928ff074ef17887a5298aecfe7e2c06b0fa36da Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 18:24:48 +0000 Subject: [PATCH 137/224] Add wordpress_elderseth --- apps/nginx/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/nginx/docker-compose.yml b/apps/nginx/docker-compose.yml index f30c35f5c5..e81a34399b 100755 --- a/apps/nginx/docker-compose.yml +++ b/apps/nginx/docker-compose.yml @@ -8,7 +8,7 @@ services: - ${APP_PORT}:80 volumes: - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf - + - ${RUNTIPI_APP_DATA_PATH}/traefik/tls:/etc/nginx/certs:ro networks: - tipi_main_network labels: From daac1cf6999c2ab73b7d71dd5fe5e36bdfe06182 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 18:28:55 +0000 Subject: [PATCH 138/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 8258242586..d155e3f9a9 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -1,28 +1,34 @@ +events {} + http { # Redirect HTTP traffic to HTTPS server { listen 80; server_name data.rasies.com; - # Redirect all HTTP requests to HTTPS handled by Traefik + # Redirect all HTTP requests to HTTPS return 301 https://$host$request_uri; } - # Handle HTTPS traffic and proxy to Apache (with Traefik handling SSL termination) + # Handle HTTPS traffic and proxy to Apache server { - listen 443; + listen 443 ssl; server_name data.rasies.com; - # Since Traefik handles SSL, there's no need for SSL configuration here in Nginx - location / { - proxy_pass https://192.168.1.12:443; # Forward HTTPS traffic to Apache + # Assuming Traefik is handling the SSL certificates + ssl_certificate ${SSL_CERTIFICATE_PATH}; + ssl_certificate_key ${SSL_CERTIFICATE_KEY_PATH}; + + location / { + proxy_pass https://192.168.1.12:443; # Ensure this points to your Apache server proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; - # If using a self-signed certificate on Apache, disable SSL verification: + # Optional if you're using a self-signed certificate on Apache proxy_ssl_verify off; } } } + From 0cfcabd8e9db283d48280c0656702f58dfe5f5aa Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 18:39:15 +0000 Subject: [PATCH 139/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index d155e3f9a9..538c22a892 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -10,23 +10,19 @@ http { return 301 https://$host$request_uri; } - # Handle HTTPS traffic and proxy to Apache + # Handle HTTPS traffic and proxy to Apache at 192.168.1.12 (Nextcloud) server { - listen 443 ssl; + listen 80; server_name data.rasies.com; - # Assuming Traefik is handling the SSL certificates - ssl_certificate ${SSL_CERTIFICATE_PATH}; - ssl_certificate_key ${SSL_CERTIFICATE_KEY_PATH}; - - location / { - proxy_pass https://192.168.1.12:443; # Ensure this points to your Apache server + location / { + proxy_pass https://192.168.1.12:443; # Forward to Apache over HTTPS proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; - # Optional if you're using a self-signed certificate on Apache + # Disable SSL verification if using self-signed certificate on Apache proxy_ssl_verify off; } } From 067a257267af4e80e2020fa2623a0adae6e6e56f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 18:47:42 +0000 Subject: [PATCH 140/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 538c22a892..fd42952967 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -1,30 +1,21 @@ events {} http { - # Redirect HTTP traffic to HTTPS - server { - listen 80; - server_name data.rasies.com; - - # Redirect all HTTP requests to HTTPS - return 301 https://$host$request_uri; - } - - # Handle HTTPS traffic and proxy to Apache at 192.168.1.12 (Nextcloud) + # Only listen on HTTP, since Traefik is handling HTTPS server { listen 80; server_name data.rasies.com; + # No need to redirect here, let Traefik handle HTTPS location / { - proxy_pass https://192.168.1.12:443; # Forward to Apache over HTTPS + proxy_pass https://192.168.1.12:443; # Forward traffic to Apache securely proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; - # Disable SSL verification if using self-signed certificate on Apache + # Disable SSL verification if Apache is using self-signed cert proxy_ssl_verify off; } } } - From 99a73c2f47a597382275f3dc674bcc13102d07f9 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Thu, 17 Oct 2024 21:02:04 +0000 Subject: [PATCH 141/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index fd42952967..c94bfc5b7f 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -6,15 +6,18 @@ http { listen 80; server_name data.rasies.com; - # No need to redirect here, let Traefik handle HTTPS location / { - proxy_pass https://192.168.1.12:443; # Forward traffic to Apache securely + proxy_pass http://192.168.1.12:80; # Forward traffic to Apache proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Real-IP $remote_addr; # Pass the real client's IP address + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # Ensure chain of proxies is preserved + proxy_set_header X-Forwarded-Proto $scheme; # Pass the original scheme (HTTP/HTTPS) + proxy_set_header X-Forwarded-Host $host; # Ensure the original host is passed + proxy_set_header X-Forwarded-Port $server_port; # Pass the original port used by the client + proxy_http_version 1.1; + proxy_set_header Connection ""; # Keep the connection alive - # Disable SSL verification if Apache is using self-signed cert + # Optional if you're using a self-signed certificate on Apache proxy_ssl_verify off; } } From 5b5822fb053a44b5b77334e75545924f179cd4f0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 18 Oct 2024 12:56:34 +0000 Subject: [PATCH 142/224] Add wordpress_elderseth --- apps/nginx/docker-compose.yml | 1 - apps/wordpress_sloppyhero/config.json | 30 +++++++++ apps/wordpress_sloppyhero/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_sloppyhero/metadata/logo.jpg | Bin 0 -> 15007 bytes .../wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_tvcoffee/config.json | 2 +- apps/wordpress_usmender/config.json | 30 +++++++++ apps/wordpress_usmender/docker-compose.yml | 61 ++++++++++++++++++ .../metadata/description.md | 39 +++++++++++ apps/wordpress_usmender/metadata/logo.jpg | Bin 0 -> 15007 bytes apps/wordpress_usmender/wordpress/config.json | 30 +++++++++ .../wordpress/docker-compose.yml | 61 ++++++++++++++++++ .../wordpress/metadata/description.md | 39 +++++++++++ .../wordpress/metadata/logo.jpg | Bin 0 -> 15007 bytes 18 files changed, 521 insertions(+), 2 deletions(-) create mode 100755 apps/wordpress_sloppyhero/config.json create mode 100755 apps/wordpress_sloppyhero/docker-compose.yml create mode 100755 apps/wordpress_sloppyhero/metadata/description.md create mode 100755 apps/wordpress_sloppyhero/metadata/logo.jpg create mode 100755 apps/wordpress_sloppyhero/wordpress/config.json create mode 100755 apps/wordpress_sloppyhero/wordpress/docker-compose.yml create mode 100755 apps/wordpress_sloppyhero/wordpress/metadata/description.md create mode 100755 apps/wordpress_sloppyhero/wordpress/metadata/logo.jpg create mode 100755 apps/wordpress_usmender/config.json create mode 100755 apps/wordpress_usmender/docker-compose.yml create mode 100755 apps/wordpress_usmender/metadata/description.md create mode 100755 apps/wordpress_usmender/metadata/logo.jpg create mode 100755 apps/wordpress_usmender/wordpress/config.json create mode 100755 apps/wordpress_usmender/wordpress/docker-compose.yml create mode 100755 apps/wordpress_usmender/wordpress/metadata/description.md create mode 100755 apps/wordpress_usmender/wordpress/metadata/logo.jpg diff --git a/apps/nginx/docker-compose.yml b/apps/nginx/docker-compose.yml index e81a34399b..45e117c9ca 100755 --- a/apps/nginx/docker-compose.yml +++ b/apps/nginx/docker-compose.yml @@ -8,7 +8,6 @@ services: - ${APP_PORT}:80 volumes: - ${APP_DATA_DIR}/data/config/nginx.conf:/etc/nginx/nginx.conf - - ${RUNTIPI_APP_DATA_PATH}/traefik/tls:/etc/nginx/certs:ro networks: - tipi_main_network labels: diff --git a/apps/wordpress_sloppyhero/config.json b/apps/wordpress_sloppyhero/config.json new file mode 100755 index 0000000000..a6818bfbed --- /dev/null +++ b/apps/wordpress_sloppyhero/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Sloppy Hero", + "available": true, + "port": 8238, + "exposable": true, + "id": "wordpress_sloppyhero", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_sloppyhero/docker-compose.yml b/apps/wordpress_sloppyhero/docker-compose.yml new file mode 100755 index 0000000000..3e2275bcad --- /dev/null +++ b/apps/wordpress_sloppyhero/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_sloppyhero: + container_name: wordpress_sloppyhero + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_sloppyhero-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_sloppyhero-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_sloppyhero-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_sloppyhero.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_sloppyhero-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_sloppyhero-insecure.entrypoints: web + traefik.http.routers.wordpress_sloppyhero-insecure.service: wordpress_sloppyhero + traefik.http.routers.wordpress_sloppyhero-insecure.middlewares: wordpress_sloppyhero-redirect + # Websecure + traefik.http.routers.wordpress_sloppyhero.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_sloppyhero.entrypoints: websecure + traefik.http.routers.wordpress_sloppyhero.service: wordpress_sloppyhero + traefik.http.routers.wordpress_sloppyhero.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_sloppyhero-local-insecure.rule: Host(`wordpress_sloppyhero.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_sloppyhero-local-insecure.entrypoints: web + traefik.http.routers.wordpress_sloppyhero-local-insecure.service: wordpress_sloppyhero + traefik.http.routers.wordpress_sloppyhero-local-insecure.middlewares: wordpress_sloppyhero-redirect + # Local domain secure + traefik.http.routers.wordpress_sloppyhero-local.rule: Host(`wordpress_sloppyhero.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_sloppyhero-local.entrypoints: websecure + traefik.http.routers.wordpress_sloppyhero-local.service: wordpress_sloppyhero + traefik.http.routers.wordpress_sloppyhero-local.tls: true + runtipi.managed: true + wordpress_sloppyhero-db: + container_name: wordpress_sloppyhero-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_sloppyhero/metadata/description.md b/apps/wordpress_sloppyhero/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_sloppyhero/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_sloppyhero/metadata/logo.jpg b/apps/wordpress_sloppyhero/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_sloppyhero/wordpress/config.json b/apps/wordpress_sloppyhero/wordpress/config.json new file mode 100755 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_sloppyhero/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_sloppyhero/wordpress/docker-compose.yml b/apps/wordpress_sloppyhero/wordpress/docker-compose.yml new file mode 100755 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_sloppyhero/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_sloppyhero/wordpress/metadata/description.md b/apps/wordpress_sloppyhero/wordpress/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_sloppyhero/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_sloppyhero/wordpress/metadata/logo.jpg b/apps/wordpress_sloppyhero/wordpress/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_tvcoffee/config.json b/apps/wordpress_tvcoffee/config.json index 20be773e78..8eba7e2ce3 100755 --- a/apps/wordpress_tvcoffee/config.json +++ b/apps/wordpress_tvcoffee/config.json @@ -1,5 +1,5 @@ { - "name": "WordPress TV Coffee Co.", + "name": "WordPress Sloppy Hero", "available": true, "port": 8237, "exposable": true, diff --git a/apps/wordpress_usmender/config.json b/apps/wordpress_usmender/config.json new file mode 100755 index 0000000000..a20257442f --- /dev/null +++ b/apps/wordpress_usmender/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress Us Mender", + "available": true, + "port": 8239, + "exposable": true, + "id": "wordpress_usmender", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_usmender/docker-compose.yml b/apps/wordpress_usmender/docker-compose.yml new file mode 100755 index 0000000000..2af2c362c8 --- /dev/null +++ b/apps/wordpress_usmender/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress_usmender: + container_name: wordpress_usmender + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress_usmender-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress_usmender-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress_usmender-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress_usmender.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress_usmender-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_usmender-insecure.entrypoints: web + traefik.http.routers.wordpress_usmender-insecure.service: wordpress_usmender + traefik.http.routers.wordpress_usmender-insecure.middlewares: wordpress_usmender-redirect + # Websecure + traefik.http.routers.wordpress_usmender.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress_usmender.entrypoints: websecure + traefik.http.routers.wordpress_usmender.service: wordpress_usmender + traefik.http.routers.wordpress_usmender.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress_usmender-local-insecure.rule: Host(`wordpress_usmender.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_usmender-local-insecure.entrypoints: web + traefik.http.routers.wordpress_usmender-local-insecure.service: wordpress_usmender + traefik.http.routers.wordpress_usmender-local-insecure.middlewares: wordpress_usmender-redirect + # Local domain secure + traefik.http.routers.wordpress_usmender-local.rule: Host(`wordpress_usmender.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress_usmender-local.entrypoints: websecure + traefik.http.routers.wordpress_usmender-local.service: wordpress_usmender + traefik.http.routers.wordpress_usmender-local.tls: true + runtipi.managed: true + wordpress_usmender-db: + container_name: wordpress_usmender-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true diff --git a/apps/wordpress_usmender/metadata/description.md b/apps/wordpress_usmender/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_usmender/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_usmender/metadata/logo.jpg b/apps/wordpress_usmender/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 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

&c z;h_@B$B~&B-^WuYY=o}zuWE>%^zaFh`Rn+XLo}0qMvT3-_1TZKl^TxG&f{+f|Wh-02W5(MkZiYRQ(B61*7%W_wEBFYIP0Ysc)8E8nnxaGkd7kxoZ%2K%>C?BW9xCZJ zsp+n0+G6C@xIMHSktLAb<&h1RDgb$^F5zh4gRG^?v56DrdghmBnK{?yh-{GZUTqBX zcz;F{xnv}!7SwPz3+CKbGV}0r;;0FbVE?T`#1-99vuvgk{RD^lt8R4J0nci~5yIqz zeiz%N!;Y*&OVP;CH7`x!Pa2NnyYX3QV03Su<@|jv-@c-LI9od^uwc(VIL_&!?}qW6 zR=_w7H#`zJ97~HVzA!l;fm`+}n=Bhs@ahMx1lwd@I`E+e9>Az)nzQ;YM^^%Qvuubb zs`0YqfvA9Ac^^RLVHGRw5HY7wRY2lH=%0&tV-s!r6}MFi9?6%RDymwIQG#u(b0F9M zo{<%bd5cDu5|2?4>6dJ2h76BwtM6pOJb!QM9LmXyWBEOVvbrDzW5M2Lj-xe(Q3;RM zCZ_~0IB|gR`d3getp_=(S{`DgqyQ1fO&X2d;iz)y+>-&bbFS1zP4ndRvS$z0r8~^t z-miwCt*b%YE+&oPOn${0 z(n6&>h4UbIlKRo``P@}F#22f!PF7R%0!D47?-RID;!~d4fp%BkM1NVt1$&^;kEu`$ zi(72B4Q-QFfRR~+U?X5LH1;v_oSX5*H%CLi;MM8Nc5DLvHI-j&^kcH>pkckW$f^%|G&DPnZEjDuX|g{c?1eGTF+`K*azY8`@#G1*j28kcMq8X!JT+gQ zOiYF1>5)z_tyg()Bsn3O?OS?ZbX4&-;KouoYP1R=>vj?n?F*@4vV0?9v`a36eEal+ zZrx(!pGJL3NE9+LiUxBReL<4LeUS%1^DRz{>9( zQ<&%Hf-}twShChBT`H7L(gYyu$lp4-2L%BCyVM@>ApCVu=q+xc;)3$ir;QdR>CDR5h3S~ip>-7^^FmH44O_9#NWGCTJFx)Oljja`R+7Q;rzS9$;z9aDFcBCG2%U^p%gYHKhPQsuDmORA0nv z7&9SfldYhG6K}jHi?luwH1=vp5b~kw6W|!e##OTAM)R5* zfK+SGLw3HiCoip^L&L0Wn5o^`1VrVzI8shHa8Z&{GYpS;CHQ+z5!r|J)!JxgL+g31 z#Ld4U8hyLS%ZBT-9>OnRB2hK-P&K6>`VuuVDk{yz7onm!7Olt&pH_{P&LSNI4}eA#js$2_HQGIO}#q3#rZ}tI>2ykH(AKHn_dwd#eR;@rWm#V`c;~+6fO4T$52V zoF>5DL`FMqs;rvdZ(>|0SvI=A&I*t44&6q-o;H;SjWYEBx|B5+%`sh(lxTe+=LcEC z+Y-sY>e)(j;Sh$##iV zXV;TxBo8ImcSh=?Ykrgmhh9&iU);m*bK-taH#KfXVnV|6gb%9&ANiz$K$ecyxDgDo zuP6sihj2abDUej?UfER?TY*-2ujw#kF%jd#VW9Z5q>I{(I6XG`D9gBic1KaaNEdub zCRSBzJV?gy)t&DVFesvh^V;vIyo-;%tdV@`qpi#>%A5dSs8)JMi`BvEu`5awBhCT^ zyi`EXr7_^u8T$6aeS#ExA)|T2#L=pzm>AjXCxhR|bN805_z-&3uS7xR$KRiROK;Qi z*ODTo0#Ja7z5;cX^aDzCi9-f9Bzj#Q8GsJAdG9*)>!D;9QB6T6G${xBQ z1*7L(R^*Ae*rI$}!v^>+XD=S0llkg8OS-yph)kQXp+CAew;5$8Xxxm?B-u<9G_Lav zovm~zR?<&Rm}*LFav>!zT{{Ak;}yG!b|Ctw^=aiSVMd~t>6A*LS~}JEIjgk~Cebe= z)F7+4J|;Q}3RGcN1q4g?6=Gutp^}%0CSjq88t0lQeuFghs->K97JtaXky` z#k-2e8apD9Z zMfzEK{MU7gS%lU`rH-PaB+vZ2f*c>@mzLOyPjgQc;jv|+9TE;GY~wKD<5gWR_(F_7 zuYZ;`8b^zeQSgNuj~~TwZ9B`YIL_H5|6ZqBR_j zk#N*Adh9|PWB{y`4pBpxye6Uc9FV$y1*9UD``k;5AZ0%&<5p~dN4UBW4bSjcRVRwk zHk^*lSV2Pk9sRZ64PkeO(yyl`ikU~kdB!peRIqcI@3Y;g$z>)jk*%Hm9|CryA`+8O z0!|DJtNZkDt&s+BcDRIyXh3-g=-BfFi&`V(*5P0%JX)UY8clURj)Y2ut_3O^{bs++ zb3`!ZVqSxEQZApJZVG(sQvwZ|TJ{erwMQZ zJWw&3f9Oguoc&P5H86mU-47qZ^OqU`K-eQgKnAy!!0@A=p#9q~07MD}m_UgAFr3m6 zK=MEA06@zD{hcfZAcsqp>*C1wOEi9K3-8c{8f=HjgnD$z|> zxm5<|W0_1>#l)DOTE|TP8j7hLk=|J!%#Fzw((G=*;=mr^z+Oi;Bfx9H$~suzUe~zr zDD^Y(YTmxK&f!F3Ge=|`u^!ndJC(!J(y@E$*m`c4vtO3ToNciE?LXLIVfuf;|Ak%3 zgPQvf_TOQB81_V_vc!uyyPbEelNsJ}YWM;M2^b@u)vdiK7?*Cil>YeB>wYE=+cNJC zPMWtp%&>5XG?&mBxoq zP!M%<)Dmc2ncm|Gg%mA4C?Cgh=u>D@MqtPtt<&7=>z3`jd%^k64*vyH>n{Q$yRvup zum6MuU?~7#IArj@S#%%>01F93{D}!tI#=V`p<->} zYY*B4XHD(jIR+QKRZ>yt<7O^19j5oQPRM+UHFi}i;|V3{5b z5Txr)U+h@Q+(kvM@%@L}d7$(WhooL08p*U7%6Ls&MntJW_JGJWc3!pbG1E}@nWo+7 z=!@3!^=lQT^0oIe2gzI_q^2H$*}=q9AzDk9DoizuC`8W6l?z?89AobcvJ*s>K?!vc z!g@I8T)xbqsRp%e6}q1p8S5Lv3{sbI_=I|Ep(oU@Yn~Wv8xXW+A9Ntszun{z(f9au z6M5V~z{^Ixd21w`9{;r7>MmHuTfP!M?w13*^Tv`fIZj0ym{f#dE>tge0mmmm>}_?d zYyia%j=T>KTg_Wr!3!7DSl@*R%Pi3aq`jsWO8|I8#19CX=qnb4Xo#5=SuvdB7I?-U zIgZSc7b7k!GPTw2mTSytQOoevS!tDE&rw}bU-Z0t>bA`<$507G>I+&* zjXi`g+B&+#(_d?#uLVS>9#K`C5pG+a%7r7Nr>(oudJa2*=r-6V*EOdsuVZN2bYA7X zneT4bU&WMf$T4$YwB1hehwR1QD0DCjl$dr0dY59$E8NklBIt#qnkB=v-39M27N8n@ z71nxs;UJ+svf`f0o4AJ7pvFKJ5yGIsklA0Uq1hQ$D5#lzf#Owl77&dv12<51<2A|} z?k4V+Q>?DF-9PuG02TME5Z`My7T0K9#*^M9BdTF_H0~)s^OB-T96^_WX_i{c-NzQ*huyrIcPOyB(60mn{nQD`z zCQ%{b@ME(QIg&@RXxP!P;HkJrm9b@;g-_KovJvdlXbV&ipf~2uX{9D3P`GIddSHoG zHUoQmEj1@Zs`T@9KfKC~rgiv*FR_fDsXL(ee2_PA{dO)kMXW*CyYZlR(Sqf+bo=6K z&`^GJ2}?Lm18o{QWyEn{C>Io&zC&ZK5M7y-I?zLywEW#(`_u01W7;X%GkOgpt96%| z;vJ3Z1yNgXulg_*4?}VZXP!%p9D6bz@0D9B^i{I7h0`9?Eutp4e2tQ50oS3@h_}Ly zkuxoG`Gq!*fJNf)_j9cczW29cQ;z^A{#p`$2*TZnWDUQhXTM_0CiNFHX z>lB&6(zONGCl>2W#Gr}7PHd4DSXBWrP*;qFy!qr~8TcFlIl31(2J>W9J|O3G9gY?+ zX@z-4y>AgCZY7+xsDIGAzN{M3uh3uBR$f9!?&`8!CVbKrDs9*jWj^!S)b60^os?BQ zNsEvBq9OC1a{JLIRH8;&HKGqs@~ouSJW$Unj9ElF59)OkDe<#q+Ro$9^KVNnU*cBCHR7J4pCkfKZjhS{L=B5nYOryRs`^ z7=7_|PHAa~(>#L(j|(hCjtUv$3O5y9RV_zoZpR%NDW+NgIWj7|Bg~LiYeeqFQRp`0#1j%u zQ+SG>G^&mFgA^M%la8KCR%I$SPsd_^vYnsv@1`J&z%ZFezK~I{ zxB7y%7GPBaPKG1k=BKO5R4$NW+?-+MREW?nx1M+nS20_GXd3M*9R;;kahaT2;1%b= zef@NphCZ3L{%sTkD!&i<3%BRm$OZB_s-0yIGJ%rbLukcUNyNx&H^mL#o(>qgKzqYU zWSV7gIiy)56FmJ04QsZ2_fEnn@JuqY-zwy&o~fS1WtxA+Lv4m{KeY8dcSDR`a+*{- z#XwY>cb3A9tc{eNb6U!cBeKVdFPG1kopOp)yzpi_v{OD~ zC?tdK6K+56D5ccb%8@o=m8*bI@l(BVteX#L-JOu!!UWtDzG6NAFl?EvnImo|bB8nA z%SdRQT%;u3fP~9=5R#LCRy@`t`25|Z;B9+pYhVHW5VnPm=Ru|i79QcN8N!T{=>kfm ze9J8qf|R6m?9*NFMNR>l-f$0ZliAi+aG{i5rnipY9@YXrh6@c$P-cG$&hw-|iK@hC z#FMxD=$PLLNb{IOmK08uW8RfIiU=w<_BVHpJ@+-RtaC9{=K+sQyx zusUw@)R^+Sbjizt9|~V66cOJW-zxlYQIZl}cqO70@&O~BXOv%I^bTZ5BTizMwZ+>f zS`&b7<@<)8t}%b+o{F-T7|FVSzJa!i59aPimA2eyM2EhjaHKa)^?yUDJO2m-QYLN| zne*Acp>A({1S~_2q#$&P%J%Du8y^c*jwftmc?^Vn=^o&jquHX1YI=}y=olFaH{NXp zFq}LB5O5^$NvzN03gt&fh+?scDq%&<3|sFbfH%Y5tL*VL{qsR4R>OqRh0$@aTNw%j zH%l?YodqU3z~GL9#ZIbeAnPv2%KM#sEIV;LEB>25rEJfb=jj`M++}nmeVvNqW-z$_ps@Y6V~+d`8zX-@TXT`PKh)l~9!`C?D~GJVG~n4KrFh zHNjnrb7mt+$S+zGY4w?eGVdeMMIk^HOX~$aBYmZ7QN7!PoPdMdz%xvtd7?HDX(vG^ z*8aq>ho)i+^z^+t-eOl9PA18^VnMeT?rTD}v^^t#Jk);t`Ks`QiTqu^7lzs%Xv^^e zn26D&@inol;lYhVlE0VgPbI5uSkGqDM&o74`X7M?#h*zYM8Su~VsWHci5bzhZf;bb zA6nJe)$eoWL|c@n?&3Uy+|*=W*MuLu&u6gBt$qX|s@}a+&*GpindmuI47cu-udJ4Z zWDKmF@K7Ai#V^}_h)k`!$>K0ZxE5he# z&fCO-7rz2%6w|Zg)9uhs`1}LDVbyJz)H;RJ{+Tp7*rct>6Vs3}B(XE4FUu|ni|f#z z9cD) zK?)^N?JfaE=1`e;r<*x1%Li(-T3pT2mzZS;X~PTiTvRV{+w)&dnYzd$HGcuLXr#4U zrCjB%V^e3?P|}||u0;0Gw4r-gjXE|zc?hw7Qv9ii?sG^4FF~BQPpZ-KhxWr43H~~u zgSM)1nsgyAGje^t)u&|Ste}R=F9ussZnwW?qiY^jX%_7U0|21d_&7_-;?cBb1Dc9# z!-x$eR`%cN>)NP}r%x#k@u{>Tt<^cA+l{4U!l~|KLkEq_ji1d|G0>lL3zMXC@(}$JOk<31J~m=oe65nD&bJ1@NM(V7J7aG0W5dVUOXH3t+wGUVa`j< zKxwR{|B}1w+QlUshd<6S8wO$I`(nCm50BE)WxWh8f%!5}y{pTr?*?ZrWXP=pC7p() z9XVL5cE7!+DL?j+SZ>lc@(dfu3ADCVk=d!Njt3TgknUnqo#Ug{3uKF|gw^~7xc#52 zsh`UQQ7eX79+>pP;WC_y$j(jX%ej}FkY<|uc+|q2D@_|mkHG&Hh9yUd73mf zUU4CnTGcw~r6a|E3uJlHlNVd>)X6|h#KEC(^vY|IIwwxv%{Og76b<*~v;yn__UGRB z?;O;E8=iVM3dN6FGiES7y%o@4es!`OSaS<8hha!%4U^?p9D)}uTM>5v3L?9-*Jyv7EET(=I)*T=q8fw z7syxeiv)6_2nqA=F_TTZy6KtPDwI}TT$R(gUxHXy8q8KZjui;=+xG#JZ)?m$WxH&^ zI1h6Jw)+E2xEB%O|}nXXIV;%io^*WUA%4uS0>c z#}fx&$v4*{;}ytysJ(ign9B-RClW@85A@EU=WEMWAM5Me;9ED5mu@c<+@A93Ik4nh z$0D%xn;qU=@5|=_u&ly4*h=TCn4J_z4K1h>8xEwAfE=0fl)jbAD&k{RH=un3Rz5u* zwOH50x8(Jx>EVH{(tV14=c8Xx3vR+UdNKkRRmA_rpcb|Zyr2n>aTog~JPRAlUu>H~ zHf=MF{F2@EPrHlxF56U!+Qb}*-XY8vwE8$gX=o$ez@hX*hT5!yP_d|;2y+}h3`=ot zR5vWmVO{@f58cIqu?q~am@QKV1rKP=f-mU?gxFdF3+1KM!uGfN3CTQWC^Lf6sjr-P zm+ZfGJv<{@O?y$`K;~G`v-wM&RTbqeZq)m#G#o>673a4i&6m+}TGdikj{wm-<;gX)}a|H2O_9R&~^H-m)(EIXoPn@4Xewy z-MWaGv?$BjWBZQp!3fZpt7E2E7!WRXRp<&eQoUK0EN)v+*NYcl|QL|W~vInV#nZPK$*s{1VV zwe|I{!0c5hW{Uc`(iP^SK#TxAVdPcKc*HoR2nxB?r`X0fnk3`JCi{34p#9O@5pkgp z^~EMf{JuNkcsL?MErH2-1>vXF?abXwy-085&($sxaY(~~*@q8#jOq6as@=~~kL8#d l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 diff --git a/apps/wordpress_usmender/wordpress/config.json b/apps/wordpress_usmender/wordpress/config.json new file mode 100755 index 0000000000..fd08465589 --- /dev/null +++ b/apps/wordpress_usmender/wordpress/config.json @@ -0,0 +1,30 @@ +{ + "name": "WordPress", + "available": true, + "port": 8213, + "exposable": true, + "id": "wordpress", + "description": "WordPress is a popular content management system for creating websites and blogs.", + "tipi_version": 10, + "version": "6.6.1", + "categories": ["social"], + "short_desc": "Popular CMS for websites and blogs", + "author": "WordPress.org", + "source": "https://github.com/WordPress/WordPress", + "website": "https://wordpress.org", + "form_fields": [ + { + "type": "random", + "label": "Database Password", + "min": 32, + "env_variable": "DB_PASSWORD" + }, + { + "type": "random", + "label": "Database Root Password", + "min": 32, + "env_variable": "DB_ROOT_PASSWORD" + } + ], + "supported_architectures": ["amd64", "arm64"] +} diff --git a/apps/wordpress_usmender/wordpress/docker-compose.yml b/apps/wordpress_usmender/wordpress/docker-compose.yml new file mode 100755 index 0000000000..9adb1f8156 --- /dev/null +++ b/apps/wordpress_usmender/wordpress/docker-compose.yml @@ -0,0 +1,61 @@ +version: "3.9" +services: + + wordpress: + container_name: wordpress + image: wordpress:6.6.1 + environment: + - WORDPRESS_DB_HOST=wordpress-db + - WORDPRESS_DB_NAME=wordpress + - WORDPRESS_DB_USER=tipi + - WORDPRESS_DB_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/wordpress:/var/www/html + ports: + - ${APP_PORT}:80 + restart: unless-stopped + depends_on: + - wordpress-db + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.wordpress-redirect.redirectscheme.scheme: https + traefik.http.services.wordpress.loadbalancer.server.port: 80 + # Web + traefik.http.routers.wordpress-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress-insecure.entrypoints: web + traefik.http.routers.wordpress-insecure.service: wordpress + traefik.http.routers.wordpress-insecure.middlewares: wordpress-redirect + # Websecure + traefik.http.routers.wordpress.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.wordpress.entrypoints: websecure + traefik.http.routers.wordpress.service: wordpress + traefik.http.routers.wordpress.tls.certresolver: myresolver + # Local domain + traefik.http.routers.wordpress-local-insecure.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local-insecure.entrypoints: web + traefik.http.routers.wordpress-local-insecure.service: wordpress + traefik.http.routers.wordpress-local-insecure.middlewares: wordpress-redirect + # Local domain secure + traefik.http.routers.wordpress-local.rule: Host(`wordpress.${LOCAL_DOMAIN}`) + traefik.http.routers.wordpress-local.entrypoints: websecure + traefik.http.routers.wordpress-local.service: wordpress + traefik.http.routers.wordpress-local.tls: true + runtipi.managed: true + wordpress-db: + container_name: wordpress-db + image: mariadb:11.1.3 + environment: + - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD} + - MYSQL_DATABASE=wordpress + - MYSQL_USER=tipi + - MYSQL_PASSWORD=${DB_PASSWORD} + volumes: + - ${APP_DATA_DIR}/data/mariadb:/var/lib/mysql + restart: unless-stopped + networks: + - tipi_main_network + labels: + runtipi.managed: true \ No newline at end of file diff --git a/apps/wordpress_usmender/wordpress/metadata/description.md b/apps/wordpress_usmender/wordpress/metadata/description.md new file mode 100755 index 0000000000..1021d7912f --- /dev/null +++ b/apps/wordpress_usmender/wordpress/metadata/description.md @@ -0,0 +1,39 @@ +# WordPress - The Ultimate Content Management System + +WordPress is the quintessential content management system (CMS) that has revolutionized the way websites and blogs are created, managed, and published on the internet. With its robust features, unparalleled flexibility, and user-friendly interface, WordPress has become the go-to choice for individuals, businesses, and organizations of all sizes. + +## Unleash Your Creativity + +Whether you're a seasoned web developer or a novice blogger, WordPress empowers you to bring your digital vision to life. Create stunning websites, blogs, portfolios, e-commerce platforms, and more with ease. Customize every aspect of your site, from layout and design to functionality and user experience. + +## Endless Possibilities with Themes and Plugins + +WordPress boasts an extensive library of themes and plugins that cater to every niche and purpose. Choose from thousands of free and premium themes to give your website a unique and polished look. Enhance your site's functionality with plugins that add features like contact forms, SEO optimization, e-commerce capabilities, and social media integration. + +## SEO-Friendly and Mobile-Responsive + +WordPress is designed with search engine optimization (SEO) in mind, making it easier for your content to rank higher on search engine results pages. Additionally, WordPress themes are mobile-responsive by default, ensuring that your site looks great and functions seamlessly on smartphones, tablets, and desktops. + +## Community and Support + +Join a global community of WordPress enthusiasts, developers, and experts who are always ready to lend a helping hand. With an extensive array of documentation, forums, and tutorials, you'll never be alone on your WordPress journey. Stay up-to-date with the latest trends and best practices in web development and design. + +## Open Source and Constant Innovation + +WordPress is open-source software, which means it's free to use, modify, and distribute. The platform is continually evolving, with regular updates and improvements to enhance security, performance, and usability. Benefit from a future-proof CMS that adapts to the ever-changing digital landscape. + +## Get Started Today + +Whether you're building a personal blog, a corporate website, an online store, or a community forum, WordPress provides the tools and resources you need to succeed. Begin your WordPress journey today and experience the limitless possibilities of the web. + +**Official Website:** [WordPress.org](https://wordpress.org) + +**GitHub Repository:** [WordPress on GitHub](https://github.com/WordPress/WordPress) + +**Documentation:** [WordPress Codex](https://codex.wordpress.org/) + +**Support and Community:** [WordPress Support Forums](https://wordpress.org/support/) + +**WordPress Plugins:** [WordPress Plugin Directory](https://wordpress.org/plugins/) + +**WordPress Themes:** [WordPress Theme Directory](https://wordpress.org/themes/) diff --git a/apps/wordpress_usmender/wordpress/metadata/logo.jpg b/apps/wordpress_usmender/wordpress/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..366c287c9f7d062baea1721d411736eedd6d9225 GIT binary patch literal 15007 zcmc(`WmFtp(>B^OxHGuBySohT?(R--3-0a`NN^4A1PLLy1%d@g2uW}Y5ZprGOmfTf zyzg1-{5flV-|k-Y?%Gw=*OsPgSJym#d|U&tmF1P>0T2iP6k!MOxDF)C1vuFQfSMY> z0ssIqfB?b);9xZn>;OO{0K%U-04Re<|E+6-nEvJg13;V;0RK0SG3@%gz%>7s{`(47 z0{V}}67WCVV4wu|7a%09qz3<6JFNVv)BmYre;`l( zlm@iI?}wx09o|TXK7Iyd0JJ{^9RmX$f`g3%AtJ!TBOszDA%h+CLbS}Zuv3UfjGKd7 zjK@e`LPFliL0?dL55WcYvSu`Wr}$oCtLr+%i~2HCd!(*nPpUvxJn zD?QD|uTVZlhw-{_G8ZWMk5K)%4(`EG6AxE)Q%7*~UvyBb^9tSd8i7dG+6{DC}E11bI9fukhnGE!k!ms}~WOn={7Nx)A>8(M*w`!?E%SE`_iO8?8x zd>^K3RN!2k+P>L4=@*L@yAW(8-azqLUA0sQ0HkG^UHy** zsPKB672d;Vc;FGUI}uR>XH5vsDdO>>@jO&N5KB}&=^Bfx?mj%$UI)*945}eMm3BEg3Un4wm%* z{2{?y7*5SKW?&J)i}r03>uvt+-8Ym47PtXSe?f!jzD|)65s<5t8y_=VStO??r)5Gd zY~`v*0^kUH*k3V%BZ!su$u7m@fVvhtHR4F4d*((Kk= zsA$P4SD2Lh2!GU8=p%H8I;tRcS`^U?@Xpp;JBo#5BWN#^Xd{FR@NXv-@#3?~jJHrz zGMTBWynk}>y-YdgFHmsuadWqWKJ4+`ay3#b&PzboLS<53Hu9u~;%?0blWoV;{fG*o z`z|?(xHPP*!HgxYAjdk3a<6jN-MGApE%J(HmqWRCN`0DlA|Ze41VP_^(D52k?salxPQW<6?zrt;Q9VV7+e2~c>fD=KgxKDN~hVaDV;3_`8YD#7n zZIQE7-sKgG_QAIUfh~l;aDuS7PrMrwX6h#-_1g~`07Lkg-F%C3SJ>oU4~BxLE?7cV zsGKuBvk@Kv=T6&f1pP%atr-^%lW&^yA0E(vW@BH!%JW^n+CdY035kDS*4mLTjwo~I zXnY+^5;0O5+$!YWwtMLInzT;jw8fQ~CR}y;1fY(vKMMs(BIjqelCj=Bille0e|H-I@J$RdWcp?qaF)^d%w3xe4#7X@wO>tw84Q`0F+(Guj3puJ@wa!` z80>FL5p=SWn+;J=GA%^#+ND*Ed*A5()l=AC+yezi%<%6 z$&PEXcBCAU0sva_h`=@z7FGbb){yPA(~gDIIR?Koh*Wa&&!{Es*QGHUe6%T8>Y z_42`Eo7_UhzlN4Ii1>z z**E9!=4#!IVJAK@EUGOu*MwHdQHaKOwq@NUxyZ(ypMKPdTd^)#Xovr|B&?1!tlM8b zW-&2sMyXjAV%moqH$8S($(e75DZfg+9Xk2H*#D2;{x*oL*Z>#|g8zN|Z5CnX5gx#X z;85Wr;BiAWscE?QXnAP^M&Q@_-};dpk!LPaiNBR9Z4U zT%8!oNEBN~V^1#_@1d$LiTP8yUVxO|Szxk;O{6dzk+2$3?P|BTrRZQZsE+uDtF46_ zRy86*Hl_Z&(I%dAx>ci=Bk7F`A)lNu8w8RMll!NwedP_c%@8q35UxneT% z3jLega+JMaLPiD?^}dI2c?ZFfxEoA0+gTH5lLt;ZQ<2tXV=>;a>Nq;Ey)#9GM|9Ce zw(vFKxUX2qW>cbt7w6fK!TgWQJznb}BJRAr7YY-S#NQns z98Hc*6Cc3c(RGO)WFJZjs|z$0l~}aN7H61oAo2N^guT>9O8%)S{=8x1%cuSApFCUc z7MqCvlr{E#vK!@zXZMdlt}@ccq0x}^P=U)nQr=dyqz)%w*}?ZNxD_fGT0S9~{<-fzNcf*v3bE5;9_9Y$LkDpu3v zd+38b&0-Eq5OJi8Cet)$&5dN%YTa2Dg49GLI3L})!0sfZ@!=iIa`{!+^A(HZ&HTZ@HOCFz*`*(TYRg%BBg1 zxNNpL6%+3D!=@I|jhsD>?>kh$C>wC+t<(?rvKX;xpAC0yx3Kj^pF-Zr<5nX4_*;XI zFav`%3skjjr04%NGq5le&(nOHU1w`Vi?mn9)jkoY!+#-9e<)Rh@*m|NKQ(=uq0DlGTD zNkBgpRH@wvVWKpVnihr%m|%_e#lxn$UCgzFw2gz3(M8ELO`&aag>|)WC>O(YczE8O ze-liE$b(R;G5WRMGzzc;-yVv)@QxSd4p~=`Y1#q2yu2mo&)Gei-!-gtB|O(&SNSQJ zHJm-6l^}&_qL3b_=a3 zzJC90^1jzwifj#gU#FYpk65FgcVi|F(|0;eeVvq(`Zz;Xjb7vZSJPHBAT=@YSS9qjTF_QE7Y26KtJsm1Ke;DIOIVtm| zX68s5o;s6>8&>|{r?|BIM??JlQPk}pd%;^G7Lpq!L9r#^uKAHJbJYno=RS);!%$K|*P+{}wW0|qvqZkdwq(R8lgYv*>g+Ily)MMSNI5P~jot@I4l>EW z<*B7Jq@t!wwATMnLHhJo(r&)v56Wvc?2; zc2?a`5ojRL%`6Gs6LW;!n#q_b99Vg3wZn0*Vvb7+y5 z6FJQ=f~3<@-ipFZFdpQ;x1+zkfRaD97G{qnK>+3d2M73H4nb@H1O_7_!y_R4y@`eG zSs~QeRNPWpEpRwAJldWSrBEyD3|uZ=O)pyM$bq@cbeX?RI-=wslb+sJr+;nT;D29d z_6V>BwOHuY%7!e_4XC(eesXm86{l^j>G@&ZX?EzWqIkHpAoH5}@LUT~(tXA27dIA9 z*)Hxh6gkJfiNB*loUW7hy|b$0zP_u|UMKaWii2X{v{AzZG#;OzD^=wZK6vnx|H{TD zP+FcodWrMOgw4&w!K7K!1$x`;EoFja&}E|bOpqxCgKku?x_vmL4D2=_x5I*t%DEz5 zJG~)<((nxTlTr%#(#e&DPBZK@nZDAo(XeYD!#vP{^iS3swFWVXF*OfBCq9Pc>&QNR zeP3>(L>+U0fsJ=09GY*nqrWh58^lQ+T5hvL@UA8*T6$@2$|{89g?Z{D5IRvkJ@o-d zFn*tZR>i@kId_=su62Sv{{-D#%PB=oJ&goj=q#M9Ok2lt{62fW^r7`5Mgsm0XH?0=+QK!2bGTX{CqoCn^dHXFUqDzhu@ zg82kwXg``xNv%4N(9%7cZ{EhT5u8g!ASNM@G<+4WU13>~kgHvJL49zGP&Jr@dSgH2 zAc?ojl+*acPd8V%&7^R70c~IKlZyN|yB^$Plvh3-v-#2bdpdKSpF$XZa#j)S`d%#0 zJKw2YX**tNvSX{eAr=yDpZSh7Ovp049!{aaWrq1G7F6wVvYb`N@AR>si1f6e1`7H~ zm2vaOw%b>Xu|Jb3)bBE9#o|RZ{oJ^fnns+4t<)_%dX8r?l70)imtk2SoZ}&_y_p$iNLV$Np`+ojH>4VpzJW zA7a+Q3vW;2fDr0S+xFD+7!sLaDv{Y$^pxLBXC#Mm2G*bM!`+)d%%us<4sByO^SPbJ z^~@FPhY}UD5bsI`60Mr$u>0ryW{caqOMGvS`1*N#S_f3fq!7yuNrZA+(iwDi(ql0i zi%!C1InX`-i&D#Is(;z0hoa-fy{vfM-b|fHnjb@4vPljWQTtrkeK2c}gVt&cn}5OG zlFLoBc%O{g6-AC&e4*!*_IXHD1N)YLUwqEw|g;ibYd zi`gyN@|k~(zv_W#diC;}b-7;Cu*^#H#rrtWPgM*9YsMo(GI&QnjvV)FS*gR`we zay!udFyGg6_|ysKk)#t;wVM(&L7+*p3#Od-#<0<-ZRt~Hem^`~{v}~D?)Kf+aIs#2 z^uRV_`PcAY976sUl@4!O(HVB8y)q}ft+3B1`s{TYWY7V)`#*`<~=W}&hp|A z%=_S%g@Q`9=^>l1oCZmYqxxE~;2FubK0dp%WYhanuW3{lOLfl=BS!(YI2wmleM(b? z=jw*7^cqTdlc-+IJ&gp+HW0Ij@s`cPSVE~fV3N~LXm~znVkV5pN7_4gROmjv{i6G25#fW?#%GUl-%c?tA(9m^PX})!4RkA0h zK&GpH*OIm4hNyZ;;<+|oQ`=SAadGTtgx*=pH;73{$?;zav}!kBi7qrwPt~|Ib3+sB z?Rmu|WI0`HyFVg`@PF&}FBEC`CSINJRp91F;>?z0J90axX1h*P8P1!x+akR@wdb=w zx7gi-_{LM}x-R>&jqX1+sy{*)=KEM5f%u1q0hs1=Z&hSNkyG_Hy2GWqXw;bZISQ{Q zE$IGCrmlx$GF?ZZpq)BL7tJnFX2-Yg;*TBAyEEgtSoP*ZeFg?uP2@UWAVF04LNq45 zg*0rmG4KvvxlhRE+v6L^Gt%!G&g^K%H{o zvai7K2)wnA&uY;Oh)hC_y3%lNvrMH?u{$RJP_*#Lt@BHW#5(MRRn(5imljron7I^i zMVjsB4$IC;2JmqOZLZ>lWSRDMxZXe;a#hfteOx@oGhPdIHC-dZfALb%l0)(1d3Y$vH$}=LPwB>{gIxu&txt{({ za6pp!5y;BKuhI0{X{^mE%{?GIz}M!-iHhU5<2I%|NVO%(V{R{|Q2x$OI9TQix}hQ4 zVZ_CQs)olR?~^)LZ^Sl3(c_trgd&EebOhkym*H+kaX`j@mZg3(e`{ZE=a|Ygrg(8&%S8brG1?Eq=JTcb3mOwTn6t! zSrAB#SQmo##3v17TlLU=3EB-pfPhdKY=;}$xa4`f`l;j50e8K4bY!0$bwfO#=ZOGz zB%Lg(C51tk9$Kn$+Lq+i$)dckDq@6eOqDHSC7+v@Yo$x84+5f18Qe2AJnLM0z=>$+cDmkSDB_sME%0kQ&QVGobqWHL!Cx z48-tTh^`q~Kv)K~^i- zqjc&VdiAQCcXshA4HJGq-iab=M-dxJ)g?LLrvyLqoW&8_Fy&rezprg!@gn8j)XkOk z_67n5xj4bP;Hfan9=7@bO~yIr8eX@U7@o*#GI;n~Hc$Jpm6Qek)ghupp3Aix;(d80 zv8y~a9uD>T#r53FS45xSN<4;+KW5rX*d2B6Ly?15Hc6XBkkBRSQ$kM0z7k%+

&c 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 l``G4h%_Nqh-hcn;

u1_kwzA(!kFV#uFU2_2co={{ve5`j`L! literal 0 HcmV?d00001 From 59941923b61378a91556478b4de23dbf4587b3a6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 19:28:05 +0000 Subject: [PATCH 143/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 66 ++++++++++++++++--------------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index c109f4e20d..bfb2ad5465 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -1,50 +1,49 @@ version: "3.9" - services: collabora: image: collabora/code container_name: collabora environment: - - domain=data.rasies.com + - domain=cool\\.rasies\\.com # Escaped dots for domain - enable_admin_console=true - - admin_=ianras - - admin_pass=Mycobacteri@98 - - enamble_macros=true + - username=ianras # Removed the underscore from "admin_" + - password=Mycobacteri@98 + - enable_macros=true - dictionaries=en_US ports: - - ${APP_PORT}:9980 + - "9980:9980" # Direct port mapping for Collabora volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped networks: - tipi_main_network labels: - # Main - traefik.enable: true - traefik.http.middlewares.collabora-redirect.redirectscheme.scheme: https - traefik.http.services.wordpress.loadbalancer.server.port: 80 - # Web - traefik.http.routers.collabora-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.collabora-insecure.entrypoints: web - traefik.http.routers.collabora-insecure.service: collabora - traefik.http.routers.collabora-insecure.middlewares: collabora-redirect - # Websecure - traefik.http.routers.collabora.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.collabora.entrypoints: websecure - traefik.http.routers.collabora.service: collabora - traefik.http.routers.collabora.tls.certresolver: myresolver - # Local domain - traefik.http.routers.collabora-local-insecure.rule: Host(`collabora.${LOCAL_DOMAIN}`) - traefik.http.routers.collabora-local-insecure.entrypoints: web - traefik.http.routers.collabora-local-insecure.service: collabora - traefik.http.routers.collabora-local-insecure.middlewares: collabora-redirect - # Local domain secure - traefik.http.routers.collabora-local.rule: Host(`collabora.${LOCAL_DOMAIN}`) - traefik.http.routers.collabora-local.entrypoints: websecure - traefik.http.routers.collabora-local.service: collabora - traefik.http.routers.collabora-local.tls: true - runtipi.managed: true + # Enable Traefik for this service + traefik.enable: true + # Redirect HTTP to HTTPS + traefik.http.middlewares.collabora-redirect.redirectscheme.scheme: https + # Load balancing service for Collabora + traefik.http.services.collabora.loadbalancer.server.port: 9980 + # Insecure (HTTP) Router + traefik.http.routers.collabora-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.collabora-insecure.entrypoints: web + traefik.http.routers.collabora-insecure.middlewares: collabora-redirect + # Secure (HTTPS) Router + traefik.http.routers.collabora.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.collabora.entrypoints: websecure + traefik.http.routers.collabora.service: collabora + traefik.http.routers.collabora.tls.certresolver: myresolver + # Local domain (insecure HTTP) + traefik.http.routers.collabora-local-insecure.rule: Host(`collabora.${LOCAL_DOMAIN}`) + traefik.http.routers.collabora-local-insecure.entrypoints: web + traefik.http.routers.collabora-local-insecure.middlewares: collabora-redirect + # Local domain secure + traefik.http.routers.collabora-local.rule: Host(`collabora.${LOCAL_DOMAIN}`) + traefik.http.routers.collabora-local.entrypoints: websecure + traefik.http.routers.collabora-local.tls.certresolver: myresolver + runtipi.managed: true + collabora-db: container_name: collabora-db image: mariadb:11.1.3 @@ -60,3 +59,8 @@ services: - tipi_main_network labels: runtipi.managed: true + +networks: + tipi_main_network: + external: true + From 0b2c89d2dd276b0b61335af8fd8a9c4303f2c337 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 19:35:20 +0000 Subject: [PATCH 144/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 53 +++++++++++++++---------------- 1 file changed, 25 insertions(+), 28 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index bfb2ad5465..81e319f927 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -2,17 +2,17 @@ version: "3.9" services: collabora: - image: collabora/code + image: collabora/code:latest container_name: collabora environment: - - domain=cool\\.rasies\\.com # Escaped dots for domain + - domain=data\\.rasies\\.com # Escape dots for the domain - enable_admin_console=true - - username=ianras # Removed the underscore from "admin_" + - username=ianras - password=Mycobacteri@98 - - enable_macros=true - dictionaries=en_US + - extra_params=--o:ssl.enable=false --o:ssl.termination=false # Disable SSL within Collabora ports: - - "9980:9980" # Direct port mapping for Collabora + - "9980:9980" volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped @@ -20,29 +20,26 @@ services: - tipi_main_network labels: # Enable Traefik for this service - traefik.enable: true + - traefik.enable=true # Redirect HTTP to HTTPS - traefik.http.middlewares.collabora-redirect.redirectscheme.scheme: https - # Load balancing service for Collabora - traefik.http.services.collabora.loadbalancer.server.port: 9980 - # Insecure (HTTP) Router - traefik.http.routers.collabora-insecure.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.collabora-insecure.entrypoints: web - traefik.http.routers.collabora-insecure.middlewares: collabora-redirect - # Secure (HTTPS) Router - traefik.http.routers.collabora.rule: Host(`${APP_DOMAIN}`) - traefik.http.routers.collabora.entrypoints: websecure - traefik.http.routers.collabora.service: collabora - traefik.http.routers.collabora.tls.certresolver: myresolver - # Local domain (insecure HTTP) - traefik.http.routers.collabora-local-insecure.rule: Host(`collabora.${LOCAL_DOMAIN}`) - traefik.http.routers.collabora-local-insecure.entrypoints: web - traefik.http.routers.collabora-local-insecure.middlewares: collabora-redirect - # Local domain secure - traefik.http.routers.collabora-local.rule: Host(`collabora.${LOCAL_DOMAIN}`) - traefik.http.routers.collabora-local.entrypoints: websecure - traefik.http.routers.collabora-local.tls.certresolver: myresolver - runtipi.managed: true + - traefik.http.middlewares.collabora-redirect.redirectscheme.scheme=https + # Define HTTP router to handle insecure connections + - traefik.http.routers.collabora-insecure.rule=Host(`${APP_DOMAIN}`) + - traefik.http.routers.collabora-insecure.entrypoints=web + - traefik.http.routers.collabora-insecure.middlewares=collabora-redirect + # Define HTTPS router to handle secure connections + - traefik.http.routers.collabora.rule=Host(`${APP_DOMAIN}`) + - traefik.http.routers.collabora.entrypoints=websecure + - traefik.http.routers.collabora.tls.certresolver=myresolver + # Local domain configuration (optional) + - traefik.http.routers.collabora-local-insecure.rule=Host(`collabora.${LOCAL_DOMAIN}`) + - traefik.http.routers.collabora-local-insecure.entrypoints=web + - traefik.http.routers.collabora-local-insecure.middlewares=collabora-redirect + - traefik.http.routers.collabora-local.rule=Host(`collabora.${LOCAL_DOMAIN}`) + - traefik.http.routers.collabora-local.entrypoints=websecure + - traefik.http.routers.collabora-local.tls.certresolver=myresolver + - traefik.http.services.collabora.loadbalancer.server.port=9980 + - runtipi.managed=true collabora-db: container_name: collabora-db @@ -58,7 +55,7 @@ services: networks: - tipi_main_network labels: - runtipi.managed: true + - runtipi.managed=true networks: tipi_main_network: From 3d363e115d52758bdf2e0f0e9c025dabd215293f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 19:46:11 +0000 Subject: [PATCH 145/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 81e319f927..024cb267d2 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,12 +5,13 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com # Escape dots for the domain + - domain=data\\.rasies\\.com # Escape dots in domain - enable_admin_console=true - username=ianras - password=Mycobacteri@98 - dictionaries=en_US - extra_params=--o:ssl.enable=false --o:ssl.termination=false # Disable SSL within Collabora + - server_name=cool.rasies.com # Set the Collabora server name ports: - "9980:9980" volumes: @@ -24,20 +25,14 @@ services: # Redirect HTTP to HTTPS - traefik.http.middlewares.collabora-redirect.redirectscheme.scheme=https # Define HTTP router to handle insecure connections - - traefik.http.routers.collabora-insecure.rule=Host(`${APP_DOMAIN}`) + - traefik.http.routers.collabora-insecure.rule=Host(`cool.rasies.com`) - traefik.http.routers.collabora-insecure.entrypoints=web - traefik.http.routers.collabora-insecure.middlewares=collabora-redirect # Define HTTPS router to handle secure connections - - traefik.http.routers.collabora.rule=Host(`${APP_DOMAIN}`) + - traefik.http.routers.collabora.rule=Host(`cool.rasies.com`) - traefik.http.routers.collabora.entrypoints=websecure - traefik.http.routers.collabora.tls.certresolver=myresolver - # Local domain configuration (optional) - - traefik.http.routers.collabora-local-insecure.rule=Host(`collabora.${LOCAL_DOMAIN}`) - - traefik.http.routers.collabora-local-insecure.entrypoints=web - - traefik.http.routers.collabora-local-insecure.middlewares=collabora-redirect - - traefik.http.routers.collabora-local.rule=Host(`collabora.${LOCAL_DOMAIN}`) - - traefik.http.routers.collabora-local.entrypoints=websecure - - traefik.http.routers.collabora-local.tls.certresolver=myresolver + # Define load balancer service for Collabora on port 9980 - traefik.http.services.collabora.loadbalancer.server.port=9980 - runtipi.managed=true From 98930b2bf638e89f6a95d5174333e4b8f63a0cc3 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 19:51:30 +0000 Subject: [PATCH 146/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 024cb267d2..734a526fb5 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,15 +5,13 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com # Escape dots in domain + - domain=data\\.rasies\\.com - enable_admin_console=true - username=ianras - password=Mycobacteri@98 - dictionaries=en_US - - extra_params=--o:ssl.enable=false --o:ssl.termination=false # Disable SSL within Collabora - - server_name=cool.rasies.com # Set the Collabora server name - ports: - - "9980:9980" + - extra_params=--o:ssl.enable=false --o:ssl.termination=false + - server_name=cool.rasies.com volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped From 24749e0ebd826306ce3ae99467bdb8b98a83f9c6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 20:42:35 +0000 Subject: [PATCH 147/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 734a526fb5..fb867ebdb1 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -10,8 +10,24 @@ services: - username=ianras - password=Mycobacteri@98 - dictionaries=en_US - - extra_params=--o:ssl.enable=false --o:ssl.termination=false - - server_name=cool.rasies.com + - extra_params=--o:ssl.enable=false --o:ssl.termination=false \ + --o:server_name=cool.rasies.com \ + --o:admin_console.username=admin \ + --o:admin_console.password=secureAdminPassword \ + --o:security.permissions.edit=true \ + --o:security.permissions.print=true \ + --o:security.permissions.copy=true \ + --o:security.filter.origin=https://your-nextcloud-domain \ + --o:logging.level=warning \ + --o:logging.file.enable=true \ + --o:logging.file.retain_days=30 \ + --o:logging.file.max_size=10000000 \ + --o:perf.unit_thread_count=2 \ + --o:perf.tile_cache_size=512 \ + --o:perf.image_cache_size=512 \ + --o:limits.idle=3600 \ + --o:limits.timeout=1800 \ + --o:limits.session_idle=1800 volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped From 102b48108c153a138c9cb129128f0dcc8b8dab33 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 20:54:20 +0000 Subject: [PATCH 148/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index fb867ebdb1..b6fa36f205 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -48,8 +48,11 @@ services: - traefik.http.routers.collabora.tls.certresolver=myresolver # Define load balancer service for Collabora on port 9980 - traefik.http.services.collabora.loadbalancer.server.port=9980 + # WebSocket middleware for proper handling + - traefik.http.middlewares.collabora_websocket.replacepathregex.regex=^/loleaflet/(.*) + - traefik.http.middlewares.collabora_websocket.replacepathregex.replacement=/loleaflet/$1 + # Tag for runtipi management - runtipi.managed=true - collabora-db: container_name: collabora-db image: mariadb:11.1.3 From 6b2d0750e90b1d2f67406b04c639363f59a17777 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 21:06:36 +0000 Subject: [PATCH 149/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index b6fa36f205..d956030ec8 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -12,12 +12,12 @@ services: - dictionaries=en_US - extra_params=--o:ssl.enable=false --o:ssl.termination=false \ --o:server_name=cool.rasies.com \ - --o:admin_console.username=admin \ - --o:admin_console.password=secureAdminPassword \ + --o:admin_console.username=ianras \ + --o:admin_console.password=Mycobacteri@98 \ --o:security.permissions.edit=true \ --o:security.permissions.print=true \ --o:security.permissions.copy=true \ - --o:security.filter.origin=https://your-nextcloud-domain \ + --o:security.filter.origin=https://data.rasies.com \ --o:logging.level=warning \ --o:logging.file.enable=true \ --o:logging.file.retain_days=30 \ From 37005e4a6d32a01af7bcdb17674ef9df364dcd33 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 21:17:55 +0000 Subject: [PATCH 150/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 51 ++++++++++++++++++------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index d956030ec8..3053b6b91a 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,29 +5,31 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com + - domain=cool\\.rasies\\.com|data\\.rasies\\.com + - allow_localhost=false - enable_admin_console=true - username=ianras - password=Mycobacteri@98 - dictionaries=en_US - - extra_params=--o:ssl.enable=false --o:ssl.termination=false \ - --o:server_name=cool.rasies.com \ - --o:admin_console.username=ianras \ - --o:admin_console.password=Mycobacteri@98 \ - --o:security.permissions.edit=true \ - --o:security.permissions.print=true \ - --o:security.permissions.copy=true \ - --o:security.filter.origin=https://data.rasies.com \ - --o:logging.level=warning \ - --o:logging.file.enable=true \ - --o:logging.file.retain_days=30 \ - --o:logging.file.max_size=10000000 \ - --o:perf.unit_thread_count=2 \ - --o:perf.tile_cache_size=512 \ - --o:perf.image_cache_size=512 \ - --o:limits.idle=3600 \ - --o:limits.timeout=1800 \ - --o:limits.session_idle=1800 + - extra_params=--o:ssl.enable=false \ + --o:ssl.termination=false \ + --o:server_name=cool.rasies.com \ + --o:admin_console.username=ianras \ + --o:admin_console.password=Mycobacteri@98 \ + --o:security.permissions.edit=true \ + --o:security.permissions.print=true \ + --o:security.permissions.copy=true \ + --o:security.filter.origin=https://data.rasies.com \ + --o:logging.level=warning \ + --o:logging.file.enable=true \ + --o:logging.file.retain_days=30 \ + --o:logging.file.max_size=10000000 \ + --o:perf.unit_thread_count=2 \ + --o:perf.tile_cache_size=512 \ + --o:perf.image_cache_size=512 \ + --o:limits.idle=3600 \ + --o:limits.timeout=1800 \ + --o:limits.session_idle=1800 volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped @@ -48,11 +50,16 @@ services: - traefik.http.routers.collabora.tls.certresolver=myresolver # Define load balancer service for Collabora on port 9980 - traefik.http.services.collabora.loadbalancer.server.port=9980 - # WebSocket middleware for proper handling - - traefik.http.middlewares.collabora_websocket.replacepathregex.regex=^/loleaflet/(.*) - - traefik.http.middlewares.collabora_websocket.replacepathregex.replacement=/loleaflet/$1 + # WebSocket handling middleware for Traefik + - traefik.http.middlewares.collabora-websocket.headers.customrequestheaders.Upgrade=websocket + - traefik.http.middlewares.collabora-websocket.headers.customrequestheaders.Connection=Upgrade + # Set CORS headers to allow Nextcloud + - traefik.http.middlewares.collabora-headers.headers.accesscontrolallowmethods=GET,OPTIONS,POST,PUT + - traefik.http.middlewares.collabora-headers.headers.accesscontrolalloworiginlist=https://data.rasies.com + - traefik.http.middlewares.collabora-headers.headers.accesscontrolallowheaders=Authorization,Origin,Content-Type,Accept # Tag for runtipi management - runtipi.managed=true + collabora-db: container_name: collabora-db image: mariadb:11.1.3 From 570fb111cfcd4e5d6622ee37ad49b51c8cf8cc20 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 21:27:25 +0000 Subject: [PATCH 151/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 3053b6b91a..b69d7e6e05 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,7 +5,7 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=cool\\.rasies\\.com|data\\.rasies\\.com + - domain=cool\\.rasies\\.com|data\\.rasies\\.com|98\\.116\\.52\\.128 - allow_localhost=false - enable_admin_console=true - username=ianras From eeb0b8005fa2b27309784859aa04d2299bcfc143 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 21:31:38 +0000 Subject: [PATCH 152/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index b69d7e6e05..7a27bc9da1 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -19,7 +19,7 @@ services: --o:security.permissions.edit=true \ --o:security.permissions.print=true \ --o:security.permissions.copy=true \ - --o:security.filter.origin=https://data.rasies.com \ + --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128 \ --o:logging.level=warning \ --o:logging.file.enable=true \ --o:logging.file.retain_days=30 \ From 7cbbf4f54660c5ee578c1fa748fe940bfd79d164 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 21:52:26 +0000 Subject: [PATCH 153/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 55 +++++++++++++------------------ 1 file changed, 22 insertions(+), 33 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 7a27bc9da1..58cef27dc2 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,59 +5,48 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=cool\\.rasies\\.com|data\\.rasies\\.com|98\\.116\\.52\\.128 - - allow_localhost=false + - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 # Match the domain name in WOPI client (Nextcloud) - enable_admin_console=true - username=ianras - password=Mycobacteri@98 - dictionaries=en_US - extra_params=--o:ssl.enable=false \ - --o:ssl.termination=false \ - --o:server_name=cool.rasies.com \ - --o:admin_console.username=ianras \ - --o:admin_console.password=Mycobacteri@98 \ - --o:security.permissions.edit=true \ - --o:security.permissions.print=true \ - --o:security.permissions.copy=true \ - --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128 \ - --o:logging.level=warning \ - --o:logging.file.enable=true \ - --o:logging.file.retain_days=30 \ - --o:logging.file.max_size=10000000 \ - --o:perf.unit_thread_count=2 \ - --o:perf.tile_cache_size=512 \ - --o:perf.image_cache_size=512 \ - --o:limits.idle=3600 \ - --o:limits.timeout=1800 \ - --o:limits.session_idle=1800 + --o:ssl.termination=false \ + --o:server_name=cool.rasies.com \ + --o:admin_console.username=ianras \ + --o:admin_console.password=Mycobacteri@98 \ + --o:security.permissions.edit=true \ + --o:security.permissions.print=true \ + --o:security.permissions.copy=true \ + --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128|https://192\\.168\\.1\\.12 \ + --o:wopi.host=https://data\\.rasies\\.com \ + --o:wopi.allow_external_clients=true \ + --o:wopi.client_address=98.116.52.128 \ # Replace with your WOPI client’s IP + --o:logging.level=warning \ + --o:logging.file.enable=true \ + --o:logging.file.retain_days=30 \ + --o:logging.file.max_size=10000000 \ + --o:perf.unit_thread_count=2 \ + --o:perf.tile_cache_size=512 \ + --o:perf.image_cache_size=512 \ + --o:limits.idle=3600 \ + --o:limits.timeout=1800 \ + --o:limits.session_idle=1800 volumes: - ${APP_DATA_DIR}/data/collabora:/var/lib/lool restart: unless-stopped networks: - tipi_main_network labels: - # Enable Traefik for this service - traefik.enable=true - # Redirect HTTP to HTTPS - traefik.http.middlewares.collabora-redirect.redirectscheme.scheme=https - # Define HTTP router to handle insecure connections - traefik.http.routers.collabora-insecure.rule=Host(`cool.rasies.com`) - traefik.http.routers.collabora-insecure.entrypoints=web - traefik.http.routers.collabora-insecure.middlewares=collabora-redirect - # Define HTTPS router to handle secure connections - traefik.http.routers.collabora.rule=Host(`cool.rasies.com`) - traefik.http.routers.collabora.entrypoints=websecure - traefik.http.routers.collabora.tls.certresolver=myresolver - # Define load balancer service for Collabora on port 9980 - traefik.http.services.collabora.loadbalancer.server.port=9980 - # WebSocket handling middleware for Traefik - - traefik.http.middlewares.collabora-websocket.headers.customrequestheaders.Upgrade=websocket - - traefik.http.middlewares.collabora-websocket.headers.customrequestheaders.Connection=Upgrade - # Set CORS headers to allow Nextcloud - - traefik.http.middlewares.collabora-headers.headers.accesscontrolallowmethods=GET,OPTIONS,POST,PUT - - traefik.http.middlewares.collabora-headers.headers.accesscontrolalloworiginlist=https://data.rasies.com - - traefik.http.middlewares.collabora-headers.headers.accesscontrolallowheaders=Authorization,Origin,Content-Type,Accept - # Tag for runtipi management - runtipi.managed=true collabora-db: From be843cdf99630633f4262595fd22962c0b699c88 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 22:38:38 +0000 Subject: [PATCH 154/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 58cef27dc2..f5096042a7 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,7 +5,7 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 # Match the domain name in WOPI client (Nextcloud) + - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 - enable_admin_console=true - username=ianras - password=Mycobacteri@98 @@ -21,7 +21,7 @@ services: --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128|https://192\\.168\\.1\\.12 \ --o:wopi.host=https://data\\.rasies\\.com \ --o:wopi.allow_external_clients=true \ - --o:wopi.client_address=98.116.52.128 \ # Replace with your WOPI client’s IP + --o:wopi.client_address=98.116.52.128,192.168.1.12 \ --o:logging.level=warning \ --o:logging.file.enable=true \ --o:logging.file.retain_days=30 \ From 8624bb47cb553e6cc2b4a209091ee03c3ad208ad Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 22:42:50 +0000 Subject: [PATCH 155/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index f5096042a7..7e13b8aa49 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,7 +5,7 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 + - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 # Match the domain name in WOPI client (Nextcloud) - enable_admin_console=true - username=ianras - password=Mycobacteri@98 @@ -18,10 +18,10 @@ services: --o:security.permissions.edit=true \ --o:security.permissions.print=true \ --o:security.permissions.copy=true \ - --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128|https://192\\.168\\.1\\.12 \ + --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128 \ --o:wopi.host=https://data\\.rasies\\.com \ --o:wopi.allow_external_clients=true \ - --o:wopi.client_address=98.116.52.128,192.168.1.12 \ + --o:wopi.client_address=98.116.52.128 \ --o:logging.level=warning \ --o:logging.file.enable=true \ --o:logging.file.retain_days=30 \ From ea8aa0ddb84b75ea1fa1c44ad522e6bca682c6f6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 22:47:54 +0000 Subject: [PATCH 156/224] Add wordpress_elderseth --- apps/collabora/docker-compose.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/collabora/docker-compose.yml b/apps/collabora/docker-compose.yml index 7e13b8aa49..597d7078f9 100755 --- a/apps/collabora/docker-compose.yml +++ b/apps/collabora/docker-compose.yml @@ -5,7 +5,7 @@ services: image: collabora/code:latest container_name: collabora environment: - - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 # Match the domain name in WOPI client (Nextcloud) + - domain=data\\.rasies\\.com|98\\.116\\.52\\.128 # Match the domain names and IPs in WOPI client (Nextcloud) - enable_admin_console=true - username=ianras - password=Mycobacteri@98 @@ -18,10 +18,10 @@ services: --o:security.permissions.edit=true \ --o:security.permissions.print=true \ --o:security.permissions.copy=true \ - --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128 \ - --o:wopi.host=https://data\\.rasies\\.com \ + --o:security.filter.origin=https://data\\.rasies\\.com|https://98\\.116\\.52\\.128|https://192\\.168\\.1\\.12 \ --o:wopi.allow_external_clients=true \ - --o:wopi.client_address=98.116.52.128 \ + --o:wopi.host=data\\.rasies\\.com \ + --o:wopi.client_address=98.116.52.128,192.168.1.12 \ --o:logging.level=warning \ --o:logging.file.enable=true \ --o:logging.file.retain_days=30 \ From 7393173c25d5462f81d1a88dc3b8aed458fab3ff Mon Sep 17 00:00:00 2001 From: ianras77 Date: Fri, 1 Nov 2024 23:57:56 +0000 Subject: [PATCH 157/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 3c6e560cf2..00e9b4b8e4 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -3,7 +3,7 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} + - APP_HOME_URL=${APP_PROTOCOL:-http}://grist.${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - PUID=1000 - PGID=1000 @@ -21,7 +21,7 @@ services: restart: always volumes: - ${APP_DATA_DIR}/data/grist-data:/persist - - ${APP_DATA_DIR}/data/grist-data/tmp:/tmp + - ${APP_DATA_DIR}/data/grist-data/tmp:/tmp networks: - tipi_main_network deploy: @@ -34,26 +34,26 @@ services: traefik.enable: true traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Proto: https - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Host: ${APP_DOMAIN} + traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Host: grist.${APP_DOMAIN} traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Port: 443 traefik.http.middlewares.grist-websocket.headers.customresponseheaders.Access-Control-Allow-Origin: "*" traefik.http.services.grist.loadbalancer.server.port: 8484 - # Web - traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) + # Web (HTTP) + traefik.http.routers.grist-insecure.rule: Host(`grist.${APP_DOMAIN}`) traefik.http.routers.grist-insecure.entrypoints: web traefik.http.routers.grist-insecure.service: grist traefik.http.routers.grist-insecure.middlewares: grist-web-redirect - # Websecure - traefik.http.routers.grist.rule: Host(`${APP_DOMAIN}`) + # Websecure (HTTPS) + traefik.http.routers.grist.rule: Host(`grist.${APP_DOMAIN}`) traefik.http.routers.grist.entrypoints: websecure traefik.http.routers.grist.service: grist traefik.http.routers.grist.tls.certresolver: myresolver - # Local domain + # Local domain (HTTP) traefik.http.routers.grist-local-insecure.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local-insecure.entrypoints: web traefik.http.routers.grist-local-insecure.service: grist traefik.http.routers.grist-local-insecure.middlewares: grist-web-redirect - # Local domain secure + # Local domain secure (HTTPS) traefik.http.routers.grist-local.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist From cf339459418d89a9bcb33c5c16c075be1c385786 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:01:52 +0000 Subject: [PATCH 158/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 00e9b4b8e4..ba56b9472d 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -15,9 +15,10 @@ services: - GRIST_SINGLE_ORG=rasies - GRIST_DEFAULT_EMAIL=${GRIST_DEFAULT_EMAIL} - GRIST_SESSION_SECRET=${GRIST_SESSION_SECRET} + - DEFAULT_BASE_DOMAIN=grist.${APP_DOMAIN} # Added to correctly set the base domain image: gristlabs/grist:1.2.0 ports: - - ${APP_PORT}:8484 + - ${APP_PORT:-8484}:8484 restart: always volumes: - ${APP_DATA_DIR}/data/grist-data:/persist From 8c31e2caa002bba8c83a31c81f8fd2aaeaf5fee2 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:09:46 +0000 Subject: [PATCH 159/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 49 +++++++++-------------------------- 1 file changed, 12 insertions(+), 37 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index ba56b9472d..a0dbc51096 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -1,67 +1,42 @@ -version: "3.9" +version: "2.1" + services: grist: container_name: grist environment: - - APP_HOME_URL=${APP_PROTOCOL:-http}://grist.${APP_DOMAIN} + - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - - PUID=1000 - - PGID=1000 - - SUBDOMAINS=grist - - GRIST_FORCE_LOGIN=true - - GRIST_SUPPORT_ANON=false - - GRIST_FORWARD_AUTH_HEADER=X-Forwarded-User - - GRIST_FORWARD_AUTH_LOGOUT_PATH=_oauth/logout - - GRIST_SINGLE_ORG=rasies - - GRIST_DEFAULT_EMAIL=${GRIST_DEFAULT_EMAIL} - - GRIST_SESSION_SECRET=${GRIST_SESSION_SECRET} - - DEFAULT_BASE_DOMAIN=grist.${APP_DOMAIN} # Added to correctly set the base domain - image: gristlabs/grist:1.2.0 + image: "gristlabs/grist:1.2.0" ports: - - ${APP_PORT:-8484}:8484 + - "${APP_PORT}:8484" restart: always volumes: - - ${APP_DATA_DIR}/data/grist-data:/persist - - ${APP_DATA_DIR}/data/grist-data/tmp:/tmp + - "${APP_DATA_DIR}/data/grist-data:/persist" networks: - tipi_main_network - deploy: - resources: - limits: - memory: 8G - cpus: '12' labels: # Main traefik.enable: true traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Proto: https - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Host: grist.${APP_DOMAIN} - traefik.http.middlewares.grist-websocket.headers.customrequestheaders.X-Forwarded-Port: 443 - traefik.http.middlewares.grist-websocket.headers.customresponseheaders.Access-Control-Allow-Origin: "*" traefik.http.services.grist.loadbalancer.server.port: 8484 - # Web (HTTP) - traefik.http.routers.grist-insecure.rule: Host(`grist.${APP_DOMAIN}`) + # Web + traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist-insecure.entrypoints: web traefik.http.routers.grist-insecure.service: grist traefik.http.routers.grist-insecure.middlewares: grist-web-redirect - # Websecure (HTTPS) - traefik.http.routers.grist.rule: Host(`grist.${APP_DOMAIN}`) + # Websecure + traefik.http.routers.grist.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist.entrypoints: websecure traefik.http.routers.grist.service: grist traefik.http.routers.grist.tls.certresolver: myresolver - # Local domain (HTTP) + # Local domain traefik.http.routers.grist-local-insecure.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local-insecure.entrypoints: web traefik.http.routers.grist-local-insecure.service: grist traefik.http.routers.grist-local-insecure.middlewares: grist-web-redirect - # Local domain secure (HTTPS) + # Local domain secure traefik.http.routers.grist-local.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true runtipi.managed: true - -networks: - tipi_main_network: - driver: bridge - From 5a9241c3bbe76e5b8950fe2dd2cd661e5cd593e3 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:14:04 +0000 Subject: [PATCH 160/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index a0dbc51096..66b465b404 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -5,10 +5,11 @@ services: container_name: grist environment: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} + - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} # Explicitly set the base domain to avoid issues - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} image: "gristlabs/grist:1.2.0" ports: - - "${APP_PORT}:8484" + - "${APP_PORT:-8484}:8484" restart: always volumes: - "${APP_DATA_DIR}/data/grist-data:/persist" @@ -19,24 +20,29 @@ services: traefik.enable: true traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https traefik.http.services.grist.loadbalancer.server.port: 8484 - # Web - traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) + # Web (HTTP) + traefik.http.routers.grist-insecure.rule: Host(`grist.${APP_DOMAIN}`) traefik.http.routers.grist-insecure.entrypoints: web traefik.http.routers.grist-insecure.service: grist traefik.http.routers.grist-insecure.middlewares: grist-web-redirect - # Websecure - traefik.http.routers.grist.rule: Host(`${APP_DOMAIN}`) + # Websecure (HTTPS) + traefik.http.routers.grist.rule: Host(`grist.${APP_DOMAIN}`) traefik.http.routers.grist.entrypoints: websecure traefik.http.routers.grist.service: grist traefik.http.routers.grist.tls.certresolver: myresolver - # Local domain + # Local domain (HTTP) traefik.http.routers.grist-local-insecure.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local-insecure.entrypoints: web traefik.http.routers.grist-local-insecure.service: grist traefik.http.routers.grist-local-insecure.middlewares: grist-web-redirect - # Local domain secure + # Local domain secure (HTTPS) traefik.http.routers.grist-local.rule: Host(`grist.${LOCAL_DOMAIN}`) traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true runtipi.managed: true + +networks: + tipi_main_network: + driver: bridge + From d47811f6eed17503c55c99b8cc044d78bc225bf4 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:18:49 +0000 Subject: [PATCH 161/224] Add wordpress_elderseth --- apps/grist/config.json | 24 +++++++----------------- apps/grist/docker-compose.yml | 8 ++++---- 2 files changed, 11 insertions(+), 21 deletions(-) diff --git a/apps/grist/config.json b/apps/grist/config.json index 89c6491949..6b79fa9f93 100755 --- a/apps/grist/config.json +++ b/apps/grist/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "grist", "description": "Grist is a modern relational spreadsheet. It combines the flexibility of a spreadsheet with the robustness of a database to organize your data and make you more productive.", - "tipi_version": 15, - "version": "1.1.16", + "tipi_version": 19, + "version": "1.2.0", "categories": ["utilities"], "short_desc": "Grist is the evolution of spreadsheets.", "author": "https://github.com/gristlabs", @@ -27,20 +27,10 @@ "value": "gvisor" } ], - "env_variable": "GRIST_SANDBOX_FLAVOR" - }, - { - "type": "", - "label": "Default Email", - "required": true, - "env_variable": "GRIST_DEFAULT_EMAIL" - }, - { - "type": "", - "label": "Session Seceret", - "required": true, - "env_variable": "GRIST_SESSION_SECRET" - } + "env_variable": "GRIST_SANDBOX_FLAVOR" + } ], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": ["arm64", "amd64"], + "created_at": 1691943801422, + "updated_at": 1727472416000 } diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 66b465b404..e6b861ed6a 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -21,22 +21,22 @@ services: traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https traefik.http.services.grist.loadbalancer.server.port: 8484 # Web (HTTP) - traefik.http.routers.grist-insecure.rule: Host(`grist.${APP_DOMAIN}`) + traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist-insecure.entrypoints: web traefik.http.routers.grist-insecure.service: grist traefik.http.routers.grist-insecure.middlewares: grist-web-redirect # Websecure (HTTPS) - traefik.http.routers.grist.rule: Host(`grist.${APP_DOMAIN}`) + traefik.http.routers.grist.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist.entrypoints: websecure traefik.http.routers.grist.service: grist traefik.http.routers.grist.tls.certresolver: myresolver # Local domain (HTTP) - traefik.http.routers.grist-local-insecure.rule: Host(`grist.${LOCAL_DOMAIN}`) + traefik.http.routers.grist-local-insecure.rule: Host(`${LOCAL_DOMAIN}`) traefik.http.routers.grist-local-insecure.entrypoints: web traefik.http.routers.grist-local-insecure.service: grist traefik.http.routers.grist-local-insecure.middlewares: grist-web-redirect # Local domain secure (HTTPS) - traefik.http.routers.grist-local.rule: Host(`grist.${LOCAL_DOMAIN}`) + traefik.http.routers.grist-local.rule: Host(`${LOCAL_DOMAIN}`) traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true From 1ef108bac432ded267abd06848555d065d71def8 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:24:35 +0000 Subject: [PATCH 162/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index e6b861ed6a..b1f9a112db 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -1,18 +1,18 @@ -version: "2.1" - services: grist: container_name: grist environment: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} # Explicitly set the base domain to avoid issues + - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} + - TMPDIR=/persist/tmp # Set TMPDIR to a directory Grist has access to image: "gristlabs/grist:1.2.0" ports: - "${APP_PORT:-8484}:8484" restart: always volumes: - "${APP_DATA_DIR}/data/grist-data:/persist" + - "${APP_DATA_DIR}/data/grist-data/tmp:/persist/tmp" # Add a writable tmp directory networks: - tipi_main_network labels: From edf31f86d78eb09bcf28bea7b8d58dfa14245de6 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:29:48 +0000 Subject: [PATCH 163/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index b1f9a112db..8cd1043cd1 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -1,3 +1,5 @@ +version: "2.1" + services: grist: container_name: grist @@ -5,14 +7,20 @@ services: - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - - TMPDIR=/persist/tmp # Set TMPDIR to a directory Grist has access to + - TMPDIR=/persist/tmp + - GRIST_SINGLE_ORG=rasies # Enforce a single organization setup + - GRIST_FORCE_LOGIN=true # Force users to log in + - GRIST_SUPPORT_ANON=false # Disable anonymous access + - GRIST_DEFAULT_EMAIL=ian@rasies.com # Admin email for account management + - GRIST_SESSION_SECRET="Mycobacteri@98" # Secret key for session management + - GRIST_CREATE_ACCOUNTS=true # Allow account creation image: "gristlabs/grist:1.2.0" ports: - "${APP_PORT:-8484}:8484" restart: always volumes: - "${APP_DATA_DIR}/data/grist-data:/persist" - - "${APP_DATA_DIR}/data/grist-data/tmp:/persist/tmp" # Add a writable tmp directory + - "${APP_DATA_DIR}/data/grist-data/tmp:/persist/tmp" networks: - tipi_main_network labels: From c4073be34f46797c16de745663ce3bddc29c4170 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:36:25 +0000 Subject: [PATCH 164/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 8cd1043cd1..81f0b0d4f2 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -8,12 +8,13 @@ services: - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - TMPDIR=/persist/tmp - - GRIST_SINGLE_ORG=rasies # Enforce a single organization setup - - GRIST_FORCE_LOGIN=true # Force users to log in - - GRIST_SUPPORT_ANON=false # Disable anonymous access - - GRIST_DEFAULT_EMAIL=ian@rasies.com # Admin email for account management - - GRIST_SESSION_SECRET="Mycobacteri@98" # Secret key for session management + - GRIST_SINGLE_ORG=Rasies # Enforce a single organization setup + - GRIST_FORCE_LOGIN=true # Require login for all users + - GRIST_SUPPORT_ANON=false # Disable anonymous access entirely + - GRIST_DEFAULT_EMAIL=ian@rasies.com # Set your email as the admin + - GRIST_SESSION_SECRET=$Mycobacteri@98 # Unique secret for sessions - GRIST_CREATE_ACCOUNTS=true # Allow account creation + - GRIST_AUTH_SERVICE=email # Enable email-based authentication image: "gristlabs/grist:1.2.0" ports: - "${APP_PORT:-8484}:8484" From a5d7ecc46dc034fe3778af6b5db21d21d91696c9 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:40:24 +0000 Subject: [PATCH 165/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index 81f0b0d4f2..d586a14b0f 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -8,7 +8,7 @@ services: - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - TMPDIR=/persist/tmp - - GRIST_SINGLE_ORG=Rasies # Enforce a single organization setup + - GRIST_SINGLE_ORG=rasies # Enforce a single organization setup - GRIST_FORCE_LOGIN=true # Require login for all users - GRIST_SUPPORT_ANON=false # Disable anonymous access entirely - GRIST_DEFAULT_EMAIL=ian@rasies.com # Set your email as the admin From b3d0230a4372bee33a4ce93dd4a7fb3c7259a50f Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 00:53:41 +0000 Subject: [PATCH 166/224] Add wordpress_elderseth --- apps/grist/docker-compose.yml | 40 ++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/apps/grist/docker-compose.yml b/apps/grist/docker-compose.yml index d586a14b0f..0799aaef43 100755 --- a/apps/grist/docker-compose.yml +++ b/apps/grist/docker-compose.yml @@ -4,17 +4,17 @@ services: grist: container_name: grist environment: - - APP_HOME_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} - - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} + - APP_HOME_URL=https://grist.rasies.com # Explicitly set the home URL + - DEFAULT_BASE_DOMAIN=${APP_DOMAIN} # Use APP_DOMAIN as the base domain - GRIST_SANDBOX_FLAVOR=${GRIST_SANDBOX_FLAVOR} - TMPDIR=/persist/tmp - - GRIST_SINGLE_ORG=rasies # Enforce a single organization setup - - GRIST_FORCE_LOGIN=true # Require login for all users - - GRIST_SUPPORT_ANON=false # Disable anonymous access entirely - - GRIST_DEFAULT_EMAIL=ian@rasies.com # Set your email as the admin - - GRIST_SESSION_SECRET=$Mycobacteri@98 # Unique secret for sessions - - GRIST_CREATE_ACCOUNTS=true # Allow account creation - - GRIST_AUTH_SERVICE=email # Enable email-based authentication + - GRIST_SINGLE_ORG=rasies # Enforce a lowercase single organization setup + - GRIST_FORCE_LOGIN=true # Require login for all users + - GRIST_SUPPORT_ANON=false # Disable anonymous access entirely + - GRIST_DEFAULT_EMAIL=ian@rasies.com # Set your email as the admin + - GRIST_SESSION_SECRET=$Mycobacteri@98 # Unique secret for sessions + - GRIST_CREATE_ACCOUNTS=true # Allow account creation + - GRIST_AUTH_SERVICE=email # Enable email-based authentication image: "gristlabs/grist:1.2.0" ports: - "${APP_PORT:-8484}:8484" @@ -25,30 +25,40 @@ services: networks: - tipi_main_network labels: - # Main + # Enable Traefik traefik.enable: true - traefik.http.middlewares.grist-web-redirect.redirectscheme.scheme: https + + # Service port traefik.http.services.grist.loadbalancer.server.port: 8484 - # Web (HTTP) + + # Middleware to set HTTPS headers + traefik.http.middlewares.grist-https-headers.headers.customrequestheaders.X-Forwarded-Proto: https + + # Web (HTTP) - Redirect HTTP to HTTPS traefik.http.routers.grist-insecure.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist-insecure.entrypoints: web traefik.http.routers.grist-insecure.service: grist - traefik.http.routers.grist-insecure.middlewares: grist-web-redirect + traefik.http.routers.grist-insecure.middlewares: grist-https-headers + # Websecure (HTTPS) traefik.http.routers.grist.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.grist.entrypoints: websecure - traefik.http.routers.grist.service: grist traefik.http.routers.grist.tls.certresolver: myresolver + traefik.http.routers.grist.service: grist + traefik.http.routers.grist.middlewares: grist-https-headers + # Local domain (HTTP) traefik.http.routers.grist-local-insecure.rule: Host(`${LOCAL_DOMAIN}`) traefik.http.routers.grist-local-insecure.entrypoints: web traefik.http.routers.grist-local-insecure.service: grist - traefik.http.routers.grist-local-insecure.middlewares: grist-web-redirect + traefik.http.routers.grist-local-insecure.middlewares: grist-https-headers + # Local domain secure (HTTPS) traefik.http.routers.grist-local.rule: Host(`${LOCAL_DOMAIN}`) traefik.http.routers.grist-local.entrypoints: websecure traefik.http.routers.grist-local.service: grist traefik.http.routers.grist-local.tls: true + traefik.http.routers.grist-local.middlewares: grist-https-headers runtipi.managed: true networks: From 2d2f5873bd4e0f168894597f34a536cfb8a34456 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 01:34:14 +0000 Subject: [PATCH 167/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index c94bfc5b7f..785abd524b 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -20,5 +20,9 @@ http { # Optional if you're using a self-signed certificate on Apache proxy_ssl_verify off; } + + # Allow large file uploads by setting client_max_body_size + client_max_body_size 16G; } } + From a81e63ab9bbc459f0e2b4213e6c7b09eee8e6ca1 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 01:38:45 +0000 Subject: [PATCH 168/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 46 +++++++++++++++++++++++-------- 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 785abd524b..9e9689d2d6 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -1,28 +1,50 @@ -events {} +events { + worker_connections 1024; +} http { - # Only listen on HTTP, since Traefik is handling HTTPS + gzip on; + gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; + gzip_min_length 256; + gzip_comp_level 5; + gzip_vary on; + + # Caching for static assets + proxy_buffering on; + proxy_buffers 8 16k; + proxy_buffer_size 16k; + proxy_busy_buffers_size 32k; + proxy_temp_file_write_size 64k; + proxy_cache_valid 200 1h; + proxy_cache_valid 404 1m; + proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504; + server { listen 80; server_name data.rasies.com; location / { - proxy_pass http://192.168.1.12:80; # Forward traffic to Apache + proxy_pass http://192.168.1.12:80; proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; # Pass the real client's IP address - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # Ensure chain of proxies is preserved - proxy_set_header X-Forwarded-Proto $scheme; # Pass the original scheme (HTTP/HTTPS) - proxy_set_header X-Forwarded-Host $host; # Ensure the original host is passed - proxy_set_header X-Forwarded-Port $server_port; # Pass the original port used by the client + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Port $server_port; proxy_http_version 1.1; - proxy_set_header Connection ""; # Keep the connection alive - - # Optional if you're using a self-signed certificate on Apache + proxy_set_header Connection ""; proxy_ssl_verify off; } - # Allow large file uploads by setting client_max_body_size + # Large file uploads client_max_body_size 16G; + + # Static files caching and logging + location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { + expires 30d; + add_header Cache-Control "public"; + access_log off; + } } } From 7faad4327f1086130183667d21a7d910444cd407 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 01:42:35 +0000 Subject: [PATCH 169/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index 9e9689d2d6..a64c72b7d5 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -1,30 +1,21 @@ events { - worker_connections 1024; + worker_connections 1024; # Allows for a reasonable number of connections } http { + # Compression for smaller, faster file transfers gzip on; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; gzip_min_length 256; - gzip_comp_level 5; gzip_vary on; - # Caching for static assets - proxy_buffering on; - proxy_buffers 8 16k; - proxy_buffer_size 16k; - proxy_busy_buffers_size 32k; - proxy_temp_file_write_size 64k; - proxy_cache_valid 200 1h; - proxy_cache_valid 404 1m; - proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504; - + # Only listen on HTTP, since Traefik is handling HTTPS server { listen 80; server_name data.rasies.com; location / { - proxy_pass http://192.168.1.12:80; + proxy_pass http://192.168.1.12:80; # Forward traffic to Apache proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -32,18 +23,19 @@ http { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; proxy_http_version 1.1; - proxy_set_header Connection ""; + proxy_set_header Connection ""; # Keep the connection alive + + # Optional if you're using a self-signed certificate on Apache proxy_ssl_verify off; } - # Large file uploads + # Allow large file uploads client_max_body_size 16G; - # Static files caching and logging + # Light cache headers for static assets (adjust expiration as needed) location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 30d; add_header Cache-Control "public"; - access_log off; } } } From 817683d9be388b5e3d27263e1d7ed2124227cbe0 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 01:46:25 +0000 Subject: [PATCH 170/224] Add wordpress_elderseth --- apps/nginx/data/config/nginx.conf | 6 ------ 1 file changed, 6 deletions(-) diff --git a/apps/nginx/data/config/nginx.conf b/apps/nginx/data/config/nginx.conf index a64c72b7d5..706ce769ca 100755 --- a/apps/nginx/data/config/nginx.conf +++ b/apps/nginx/data/config/nginx.conf @@ -31,12 +31,6 @@ http { # Allow large file uploads client_max_body_size 16G; - - # Light cache headers for static assets (adjust expiration as needed) - location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { - expires 30d; - add_header Cache-Control "public"; - } } } From 0d62995e2a56c223479efdd050c2e6e15dda517d Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 19:46:32 +0000 Subject: [PATCH 171/224] Add wordpress_elderseth --- apps/activepieces/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/activepieces/docker-compose.yml b/apps/activepieces/docker-compose.yml index 368f390a41..47343a3697 100755 --- a/apps/activepieces/docker-compose.yml +++ b/apps/activepieces/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: activepieces: - image: activepieces/activepieces:0.29.1 + image: activepieces/activepieces:0.34.9 container_name: activepieces restart: unless-stopped ports: From ae6494f1438e59ba1e3ce73a21cc7f0e47b2f46c Mon Sep 17 00:00:00 2001 From: ianras77 Date: Sat, 2 Nov 2024 19:48:37 +0000 Subject: [PATCH 172/224] Add wordpress_elderseth --- apps/activepieces/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/activepieces/config.json b/apps/activepieces/config.json index eaad350c13..d3cf6d690f 100755 --- a/apps/activepieces/config.json +++ b/apps/activepieces/config.json @@ -6,7 +6,7 @@ "id": "activepieces", "description": "Your friendliest open source all-in-one automation tool.", "tipi_version": 28, - "version": "0.29.1", + "version": "0.34.9", "categories": ["automation"], "short_desc": "True zapier alternative.", "author": "Activepieces", From 1a46b7a18f247e9878aa86af35212e3fa82f6615 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Mon, 11 Nov 2024 17:26:29 +0000 Subject: [PATCH 173/224] Add wordpress_elderseth --- apps/odoo/config.json | 2 +- apps/odoo/docker-compose.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/odoo/config.json b/apps/odoo/config.json index efc12964dd..5fce0393cc 100755 --- a/apps/odoo/config.json +++ b/apps/odoo/config.json @@ -5,7 +5,7 @@ "exposable": true, "id": "odoo", "tipi_version": 2, - "version": "17", + "version": "18", "categories": ["utilities", "finance"], "description": "Open-source business management software suite designed to streamline various aspects of business operations. With its modular structure, users can choose and integrate specific applications such as accounting, inventory, and sales. Odoo provides a user-friendly interface, scalability for businesses of all sizes, and is available in both community (free) and enterprise editions. Its integrated approach and customization options make it a popular choice for comprehensive ERP (Enterprise Resource Planning) solutions.", "short_desc": "Open-source business management software with modular applications for streamlined operations.", diff --git a/apps/odoo/docker-compose.yml b/apps/odoo/docker-compose.yml index 27677215a3..bbb72aa992 100755 --- a/apps/odoo/docker-compose.yml +++ b/apps/odoo/docker-compose.yml @@ -18,7 +18,7 @@ services: runtipi.managed: true odoo: container_name: odoo - image: odoo:17 + image: odoo:18 user: root depends_on: - odoodb From 7bdc1ca4b8a78d205eebce675fde8ce405de3946 Mon Sep 17 00:00:00 2001 From: ianras77 Date: Mon, 18 Nov 2024 03:02:55 +0000 Subject: [PATCH 174/224] Add wordpress_elderseth --- apps/tinytroupe/metadata/description.md | 41 ++++++++++++++++++++++++ apps/tinytroupe/metadata/logo.jpg | Bin 0 -> 15223 bytes 2 files changed, 41 insertions(+) create mode 100755 apps/tinytroupe/metadata/description.md create mode 100755 apps/tinytroupe/metadata/logo.jpg diff --git a/apps/tinytroupe/metadata/description.md b/apps/tinytroupe/metadata/description.md new file mode 100755 index 0000000000..363ed0bbbd --- /dev/null +++ b/apps/tinytroupe/metadata/description.md @@ -0,0 +1,41 @@ +# TinyTroupe: LLM-Powered Persona Simulation + +**TinyTroupe** is an experimental Python library that enables the simulation of people with specific personalities, interests, and goals. These artificial agents, called **TinyPersons**, can interact with us and one another, respond thoughtfully, and carry out their activities within simulated **TinyWorld** environments. + +By leveraging the power of **Large Language Models (LLMs)**, notably GPT-4, TinyTroupe generates realistic simulated behavior. This allows for the exploration of a wide range of interactions and consumer types with highly customizable personas, under controlled conditions. + +The primary focus of TinyTroupe is on understanding human behavior rather than directly assisting it (as traditional AI assistants do). This approach results in specialized mechanisms that make sense only in a simulation context. Unlike other game-like LLM-based simulation approaches, TinyTroupe is designed to enhance productivity and business scenarios, contributing to more successful projects and products. + +--- + +## Key Applications of TinyTroupe + +### 1. **Advertisement** +Evaluate digital ads (e.g., Bing Ads) offline using a simulated audience before committing to a marketing budget. + +### 2. **Software Testing** +Provide test inputs to systems like search engines, chatbots, or AI copilots, and evaluate their responses. + +### 3. **Training and Exploratory Data** +Generate realistic synthetic data for model training or opportunity analysis. + +### 4. **Product and Project Management** +Analyze project or product proposals, offering feedback from the perspective of specific personas (e.g., physicians, lawyers, or knowledge workers). + +### 5. **Brainstorming** +Simulate focus groups to deliver exceptional product feedback at a fraction of the cost. + +These applications, among others, help experimenters gain actionable insights into their domain of interest, enabling better decision-making. + +--- + +## Early-Stage Release and Contributions + +TinyTroupe is being released at a relatively early stage of development. Significant work remains, and feedback from users is critical for steering its growth. + +The team is especially interested in: +- Identifying new potential use cases. +- Exploring applications in specific industries. + +Your contributions and insights can shape TinyTroupe’s development into a versatile tool for understanding and simulating human + diff --git a/apps/tinytroupe/metadata/logo.jpg b/apps/tinytroupe/metadata/logo.jpg new file mode 100755 index 0000000000000000000000000000000000000000..40e9a7ad74f6f3da8663c4bdba845c253cab7213 GIT binary patch literal 15223 zcmdsebzD?k*Y?oeoe~2`&(JO1-6=72cL|7s2-4l%sdP8eA|N1*fOII*0{RUWzR!I> z-|zeP{kFq7dtdunYwcKj&)MsY-)Fyn0AR~Y%Si)ZU;qFZ=s&>sRX7FdK*+AoRf7*%V@D;Z9{{VP)eeO!KL= zlZML1T$o0OTM4A(EMZ}7BkSvGq2a5n3Guaq@SD>-5TO$C7Vvg(cCc_arSf*LcXSi* z7N+^3TmYKCh1qGSeo)-)glWWXty1YKsZvQexmr;1vVmD4AP|U(m!FLv0)cRuTkvzT zP;r1bIM_j)>|icdFqZ&`SAc_q>Q|zH8gw8b#$ZstwGYl4dQC!>~7=aNOh~x)Xd4lU6=;i*q^;{ zaQ>tAUx({2qLR}8o$BClI|e`0y1A=c+_m>#6}xHrI9sr*TevxSxI!$TblO{CX8{RU z3sZL|S4}4;``-hpYVG9ia`W+Wg1}s0u#}{@loYQRh=)s(pA#%5$;tCuR?-RL;b7tD{#(}k zPL}V#%HBGJgEQ2!q=l=Er-iw+tCIuOk6sJd{P(tS|5ts#WX=D3TX_DfEIYI@?6-6K z*IfUGpbm7K{o}mQ!XNjyaD@82E7ZBa?*nioJs@^I&{YKwT}49BwRH%<{Ncp_^DZa? z^L+sz0YHR@hev=%L_k19L4^LHAtNFpqoJdsqM@RqW265_*yxy8*jSk8czF2uczEPw zWMt&`{-j$aFi1#980Z+p*x1CR1ULkwe=7f9Gv9jvILNR7SO6Rh4geMh1`Y@2dmn%d z+H_dB+pXbGLO_IrM}obrB!%M8%0D&G3=BLh90KC^c>p>ThsB1&hC;i6e>46U=dti8 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