From ebb9e685f99536342ef4a9a7e124840b9277bc6d Mon Sep 17 00:00:00 2001 From: Sunil Shrestha <35072109+Shrest4647@users.noreply.github.com> Date: Sun, 26 Oct 2025 06:54:21 +0545 Subject: [PATCH] Feat/mixpost (#457) * feat(mixpost): add Mixpost blueprint with Docker Compose, template, logo, and metadata * chore(mixpost): add environment variable placeholders to mixpost service in docker-compose.yml * chore(meta): add missing newline at end of meta.json * Update configuration values to use quotes * Update blueprints/mixpost/template.toml --------- Co-authored-by: Sunil Shrestha Co-authored-by: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> --- blueprints/mixpost/docker-compose.yml | 48 ++++++++++++++++++++++++++ blueprints/mixpost/mixpost.png | Bin 0 -> 5480 bytes blueprints/mixpost/template.toml | 23 ++++++++++++ meta.json | 17 +++++++++ 4 files changed, 88 insertions(+) create mode 100644 blueprints/mixpost/docker-compose.yml create mode 100644 blueprints/mixpost/mixpost.png create mode 100644 blueprints/mixpost/template.toml diff --git a/blueprints/mixpost/docker-compose.yml b/blueprints/mixpost/docker-compose.yml new file mode 100644 index 00000000..bf98c728 --- /dev/null +++ b/blueprints/mixpost/docker-compose.yml @@ -0,0 +1,48 @@ +services: + mixpost: + image: inovector/mixpost:latest + environment: + APP_NAME: ${APP_NAME} + APP_KEY: ${APP_KEY} + APP_DEBUG: ${APP_DEBUG} + APP_DOMAIN: ${APP_DOMAIN} + APP_URL: ${APP_URL} + DB_DATABASE: ${DB_DATABASE} + DB_USERNAME: ${DB_USERNAME} + DB_PASSWORD: ${DB_PASSWORD} + volumes: + - storage:/var/www/html/storage/app + - logs:/var/www/html/storage/logs + depends_on: + - mysql + - redis + restart: unless-stopped + mysql: + image: 'mysql/mysql-server:8.0' + environment: + MYSQL_DATABASE: ${DB_DATABASE} + MYSQL_USER: ${DB_USERNAME} + MYSQL_PASSWORD: ${DB_PASSWORD} + volumes: + - 'mysql:/var/lib/mysql' + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-p ${DB_PASSWORD}"] + retries: 3 + timeout: 5s + restart: unless-stopped + redis: + image: 'redis:latest' + command: redis-server --appendonly yes --replica-read-only no + volumes: + - 'redis:/data' + healthcheck: + test: ["CMD", "redis-cli", "ping"] + retries: 3 + timeout: 5s + restart: unless-stopped + +volumes: + mysql: {} + redis: {} + storage: {} + logs: {} \ No newline at end of file diff --git a/blueprints/mixpost/mixpost.png b/blueprints/mixpost/mixpost.png new file mode 100644 index 0000000000000000000000000000000000000000..b7cae55f66667a808469f3ed7393d24db77395df GIT binary patch literal 5480 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%0DD1$kkFG@8L`ZQO#5_f5}A9ga4ref@f7iB z<56VFzVPmQ-CWIt4oEg39CZmJa*d7^Rhlws$`c!*?h+F&Xne3mQKx zRJF_&v{s8wAL9H0Q-=lTQAtjmQf~(iBKb|e6T_@Dh_E9qhdnfDQD$ZYx6XDpIu1bZ zIVAA=hewnv_QVJ;Qj3WjjQ#P}wn{yRt}$(dRLm*%c+5~*m*6iR#h@6bjiP)wkY{Sj zEEsGV5e;rf4{#(v8Z~bx|*+LlauN&jlXmg0#EK-;zZ0+feh_@gqtAOCS zoHO1apd9fU=!j9!48nr7%8NhB8NuSfpqe7`aZPW`#YlY1#ENv#s~SmiqLWA0l5HT- zMwt_C&Q({hWvkF9k>w4wY1X`Gsl{a<5;f6-0=CHpqHi`Eq%;*d8zzFQt1V7-9~vk> z&R9%sehUpuzcMwczL;#lm;A7$WLu#&ski+0=E9qZ@IQDS4t))Jb^6-s=3$S2ef0Jd zh4dO;!y1no)V_vj8I!1C$?c~3{bY~lcBL6CSuoF-LgU_wbG(V*)N3OV*A$nF%6EdX zM)5XHdvSxIPP_C&~y z2#H~qfwbu5ivnh-p2(myKvk^uu(5q+bLC(@5`*3;C|e!uN+Vxc=#`%F7u zmma^|5>@|RLRPVmawaSK-p)P4G&A-`{DcC(l>5&B4FtSsM#?Pho%7A%6VXL$aFcah zTA`})ClTJ&WsNsjx3Vq1kKLr57*}FK@vS@_2~7l|YBf4Dn8g6V|n0<#JzZw%vL4gzDtwu|aEcb|V>~?jeqV3IVX2R3U19t1IrSf!+e#yR%^@5?E2u(;K*qa zGLvBz`TIuYh#DH8;H9f>a$?Qf-;EqR_vHegNd@ETHeFX`k#Mlc!D0o<^TXMJ>0c2M z@&$dg*p^{+OPLhnM-Bu5B=|p3gs+%aSLz)S$lT-4#%aPk#J#T!7hl}os_Eq(kVEKD zGQOFb5IpquXbnt9V`=e{CMgGlK7o?Q$1f$}(I)tB15;Hr=~^lKo<)n##h-~*p0)P{ zoj!LOwGcW_!SH*gSG^Lu_q|A-=BlU828C>P0{V|wpMW3Zef$KZ7GBkK#&!)DexT=bvMWJ?t?@hC8F!L z4ilwHpXgISC?E;-zN%HC4`M&K*v~wa8WROD7sL-jBaBH2oPihQK7g|=tH+&f7@n&RwvYv9%b44-P=MBkPWt1E=KfmhAQd0LgmN}&$*G=0Po zpB&;_g;%R=d?Jrjfc{|zK-67M?WzFgg@}3?;y39YR14z6W!a%dx{jW=>8KcREi{Cq zm}kwX@v8dV3G@P*bK4(IZv!9?T(G4(1TC3RLP`^!Z3IY#J`@t{+8(QsgC%t*T!j!| zP)&(y9{nBc6O=DJPf*$rz$W3Rp%kz^4QM^@#6bh|dPQKSgEriSw3>}?#*BzUPbwdp z%&i1`dNLL}ORhqS9I8q^1mj9kn#$s4jg}5&4*sPh#4wwZYmh?u0c?I(GF05m^kL8s z_;b74k3x`47G-C)b4n7lncZJ z#B8=t>|C!}#&Qte7bu9;*ip!d|gWcILJJ1 z^Qez&efNi~UiH3US{MN?()iXWFdMY^Yg}*qH;n})QvOyQUBO{M_k$OcGCO`QA^XZ8 zA=T&I2COXhuVkIWUn=K=8p!Um%qc1v3u{upHio$`1uh4+#!rP#hohxDYbp-cRS2d$zXIL~TX5Itdlhtz`|ZlFf+GQviR%n)BNBhZrVHr_L?m`J7DBzM;ty3uI-rYe z6=rV{moiB;Ox%{!rGX&|qs(g1c_%AD2(e03{uQyP-;u9