From fae839ba89cb12ccbafa381861366403173b625d Mon Sep 17 00:00:00 2001 From: Rizky Date: Mon, 16 Oct 2023 06:53:10 +0000 Subject: [PATCH] fix docker image --- Dockerfile | 13 +++++++++++++ bun.lockb | Bin 291488 -> 291488 bytes deploy/captain-definition | 13 ------------- pkgs/core/index.ts | 25 +++++++++++++------------ pkgs/core/utils/prisma.ts | 6 ++++-- 5 files changed, 30 insertions(+), 27 deletions(-) create mode 100644 Dockerfile delete mode 100644 deploy/captain-definition diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..ef37f925 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +# use the official Bun image +# see all versions at https://hub.docker.com/r/oven/bun/tags +FROM oven/bun:debian as base +WORKDIR /usr/src/app + +RUN apt update +RUN apt install git + +RUN git clone https://github.com/rizrmd/prasi-bun --depth=1 +USER bun +RUN bun i +EXPOSE 4550/tcp +ENTRYPOINT [ "bun", "prod" ] \ No newline at end of file diff --git a/bun.lockb b/bun.lockb index 0813dfed7302201d01d12af201fe05e969f217f8..deb58b49f3fa9309feed268fad6b08a844ed4a0f 100755 GIT binary patch delta 5186 zcmYk=SG1*O0fymoW+JvoCTk_wv15s1$Bup5A~9+hD;lHN(O9r=6AQ5tH4ev$W5bS7 zBe7z~8tmJSb+F^uu%jp6>qRc$S>Fqn{|y{Gbo9YPN1t}i_Ibx_Z|(HQZ0|pEYinzJ zYdLD!-rCx`bE327gq_ol-9Bme>E_t&{kyo9$Y22Pl8QNu;9p9yfC*NYRxDwL;4+F8 zED&B+u?FLES`jp0US2VV7A#vafe!2|D5lVZb4A59Y{0#eVg>_vS60kn1pg|E1x&EI zs$vN<1Xok6V1dw4tiiatRs;>0*HDb11?!rM33OmzOEHBWoZ}SNumShliWv;xT}Ls8 z5qwv%fC*ODRV-nK;ChM`ED&B_u?FJ?S`jp0-cT`y7OWd7CeVR>W5pEuT`qV~Px=2r z^*E@W-gR#xG8n+SsbUTz_%~B5V1m`n6-$^QxP@W`3xu~+tiiaIRs;>0zG4h5ShrS8 zpac6hiYfHq+*WZ78*p!@n85(v?GvCg@J~=IV1m^>6ib*PI8m{J1;TqO z)?nOAD}n~hdn?A!f_0K&0v*_)VhTMt`xV!)0rx(N84TdvS22eX{QD^uFv05niY3et zJV3F61;Pg^)?h?h5j0>vNHK;MtOqM5(1CrjVhTMt4^dph2HaB=GZ?^osA3Ky_zzPo zV1iYwSi%g!!xbx7Abf;k4aOt2B51&Tlwu4mSdUgrpac6ciYfHqJXUcH8*mfF3v2$m|*n^#S&%+&Qh#kf$)`zH5do9 zB51%Y6k}+?+EGlP1N&8qDfHmHT5$~}KDf1P3h6RcjZSi%fJsaU}R z;TsfdFb--((17_y#TZ(!-lUj72lks4Q|Q5Yi{ctK;J#Hcg8{rsF^3WSw<#7d!Rqab zCCm`KL$QJd!gngxV7yB!f(FcYE5^`*^&Z6pI@xMwS7Fo5?y#T-WP z->+D}1gj4ymM}wbj$#E1gdbF_!DzH1Xuv#IF@_eb4=E!0i+>7{L3yVh$ttUr;Pyg4GulOPC?}l41o5gkM&y!T5?+1Pz$yDaO!()hi~@ zf&Ep*6nb#JrnrU;xL;SyU;ytMiaCtne^ar530B`yEMbP=+lmz|5N;G}FutP|K?CM@ z6=P_@`krC}9oXMjOrZzo2a0Rhfcrzm3}KD|BGS) z(=HeMcs_II^h4Xn@BY~-|Ekw!2xhGc76|{QScCC*tq2-0|DhN|3)Vjs6X?MHmtqP% zIR92$!v@^{C}uE#w0n?Fo1Va#T-WPFQ!<)1gncHmM}wbq+$gNgqKjP o!7#NVXuv#5F@_ebeTvC0XPxREcgEp;dv>qA=N{g7#MvkR4@cvwhyVZp delta 5192 zcmYk=SJ0+r0fyoIcO$k)HZu`B_D_w99Xobx5seyRMPn2@8VhzzEW}FGxU3ap!;VoS zv10$M!Hym4V#nC9qko=z#>oL(^W1Rwp1>K0jy&Vgktd(EbIwsa#~tjC+ByF4We-*_F z76`7YSi=h8MzI0oYFZJrU|wA@h7PQ2C?>E4`)I`!de~f3F@ph|YboY1f_rVn0w(Yr z#S&)lucKJO0>O0^Ygi$?o?-*W^|c~s!MuTD3>{cER7_wC_Kg%%=yy5)Q9behN7dD9 z12{L<%3%ceCW-}2;N4WQgcfp>ew5@zu4pjg2Ifv;G@3gI0U8!+yq6+sK;ofTu~ zz`BcK0$Z@}s+d9#n`0C+7{IxkVh$s?fnos@cz0JUVFv#miWMvn9IIHv3gJB!8!+yr z6+sK;y%l5Vz&cJbfi2jfVhTNMj#tcJ0Ovl6IgH@mSFwNzy!$DZFoS=8#R?V(9-vsm z3gH748!#fR2wE^7q!>d7)`Jxj*n)k6VhTNM9-^4R0M3buIgH>wRIz{wyoV{4FoPc} zRn^6=UeYIz=&oE!fXdOreL( za}_ffz zoS_v#3+5XYW9YzolVSo}u-~khLJym_C}uE#^H#+iMsRDz0w(a@rdYxZ{@WERSRiXtg3}!8}_rh7PO`DJHN5`@@PU^sxDeVg>^^A63j@1ovZ# z1x(<5T(N{1{7$ig1%gi~*04hONyP??PiaNag86C17&@>%qnN-J?9VEu(8K0)iWv;x zY!!1D!Tr2q0TXy%P%L2v|BH$hED(H2v4$1GFDo`+d_^mQ7R+-LW9Y!@6%*Kk{Z+*j zdf0qTF@ph|uPf#-g8L1{0w(ajsaV1c{SRnYeVht;VgJJ{5ceEmC!Thdb3>{eC zQ%qnB_V*Q2=wb5%#S8{;eyEtk2=0#*3z)zg6-$`G|FL2P3j{w=tYL-lr-}_2Khuh! z1@q^MF?3-4LNS3Y*oPET=wUM{W-x&BOT`>UaDSy(zy#i}6-$`G|BYe=3k1JatYL-l zcZv-dzt@VO1#?!6p#$p=iV1ANK36e?9yWhe%wPcLPl`E=;Qm>$fC;?6D3&nqa{kZf z(+-|;Xy?2?J=I_J+5*9%Rl^G5-xM1#{;m~43+6u*W9Y#8r(yzIu>Yl)LJymND`qf& z^B=_=MsQcf0w(bOt60J;4)}X_|6m=cbYIT99}IRx4J(9u6&o=2X+_Y2d6;4h9atAo zOkfMPp_oDsn+qytFo1I*#T-U(FRWO=1l~myOPImGsA2^R1cxiuutIn-#Rd#hD}olx hBNSukz}l~vh|^DUjz0C={d;$>eP^G$|FAPp_#e4Vo=E@z diff --git a/deploy/captain-definition b/deploy/captain-definition deleted file mode 100644 index b0f979b6..00000000 --- a/deploy/captain-definition +++ /dev/null @@ -1,13 +0,0 @@ -{ - "schemaVersion": 2, - "dockerfileLines": [ - "FROM oven/bun", - "COPY package.json bun.lockb /temp/prod/", - "RUN cd /temp/prod && bun install --frozen-lockfile --production", - "RUN mkdir -p /temp/prod", - "COPY /temp/prod/node_modules node_modules", - "ENV PORT 80", - "EXPOSE 4550", - "CMD [ \"bun\", \"prod\" ]" - ] -} diff --git a/pkgs/core/index.ts b/pkgs/core/index.ts index 1f3bf7d4..06fceb0a 100644 --- a/pkgs/core/index.ts +++ b/pkgs/core/index.ts @@ -11,6 +11,7 @@ import { preparePrisma } from "./utils/prisma"; g.status = "init"; + await createLogger(); g.api = {}; g.mode = process.argv.includes("dev") ? "dev" : "prod"; @@ -22,17 +23,17 @@ if (g.mode === "dev") { } await preparePrisma(); -await ensureNotRunning(); +// await ensureNotRunning(); -if (g.db) { - g.db.$connect().catch((e: any) => { - g.log.error(`[DB ERROR]\n${e.message}`); - }); -} +// if (g.db) { +// g.db.$connect().catch((e: any) => { +// g.log.error(`[DB ERROR]\n${e.message}`); +// }); +// } -createServer(); -await parcelBuild(); -await generateAPIFrm(); -await prepareApiRoutes(); -await prepareAPITypes(); -g.status = "ready"; +// createServer(); +// await parcelBuild(); +// await generateAPIFrm(); +// await prepareApiRoutes(); +// await prepareAPITypes(); +// g.status = "ready"; diff --git a/pkgs/core/utils/prisma.ts b/pkgs/core/utils/prisma.ts index 0ea8a307..0550c35c 100644 --- a/pkgs/core/utils/prisma.ts +++ b/pkgs/core/utils/prisma.ts @@ -5,12 +5,14 @@ import { g } from "./global"; export const preparePrisma = async () => { if (await existsAsync(dir.path("app/db/.env"))) { - if (!(await existsAsync(dir.path("node_modules/.prisma")))) { + const hasPrisma = await existsAsync(dir.path("node_modules/.prisma")); + if (!hasPrisma) { await $({ cwd: dir.path(`app/db`) })`bun prisma generate`; } + const { PrismaClient } = await import("../../../app/db/db"); g.db = new PrismaClient(); } - + g.dburl = process.env.DATABASE_URL || ""; };