# tyrian-http4s **Repository Path**: jiangxiaowei96/tyrian-http4s ## Basic Information - **Project Name**: tyrian-http4s - **Description**: tyrian-http4s - **Primary Language**: Scala - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-29 - **Last Updated**: 2024-09-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## scala前后端开发代码模板 ### 后端技术栈 http4s doobie tapir circe cats cats-effect pureconfig ### 前端技术栈 scala.js tyrian ### 说明 一个scala开发前端和后端的示例代码 三个模块: common:公共模型,前后端可以共同依赖使用其中定义的类型 app: 前端代码 server:后端代码 #### 本地后端启动 直接点击 idea 的 run 按钮启动 #### 本地前端启动 1.首先进入 ./app 目录下,安装npm依赖: ``` npm install ``` 2.编译代码,在项目根目录下,命令行输入 sbt 启动sbt ``` -- 输入 project app 命令进入app 项目 project app -- 编译app代码为javascript ~fastOptJs ``` 3.启动前端 在./app目录下,输入 npm run start 即可本地启动 ### 部署后端 sbt 进入命令行,执行下面的命令生成镜像 ``` stagingBuild / Docker / publishLocal ``` 打包生成docker镜像后,把镜像发送到服务器即可启动部署 docker命令行执行,生成server.tar文件,把文件拷贝到服务器 docker save -o server.tar tyrian-http4s:0.1.0-SNAPSHOT 服务器端docker加载镜像 docker load -i server.tar 服务器端docker加载容器 docker run -d -p 4046:4046 -v /data/logs:/opt/docker/logs --name full-stack tyrian-http4s:0.1.0-SNAPSHOT ### 部署前端 1.编译代码,在项目根目录下,命令行输入 sbt 启动sbt ``` -- 输入 project app 命令进入app 项目 project app -- 编译app , 编译完成后,生成的js代码会放到dist目录下 fullOptJs ``` 2.npm打包, 把dist目录下的文件,即为前端代码,复制到服务器端的 nginx 设置的目录即可 npm run build