mona

所属分类:人工智能/神经网络/深度学习
开发工具:Scala
文件大小:3282KB
下载次数:0
上传日期:2023-04-15 04:25:08
上 传 者sh-1993
说明:  北美MassBank(MoNA)是一个以元数据为中心的自动管理存储库,旨在实现高效存储和查询...
(MassBank of North America (MoNA) is a metadata-centric, auto-curating repository designed for efficient storage and querying of mass spectral records. The MoNA server is a set of Spring microservices written in Scala and Java utilizing MongoDB and ElasticSearch for data storage and RabbitMQ for messaging. The front-end is an Angular 10 web)

文件列表:
.run (0, 2023-04-15)
.run\Build Docker Image Auth Server.run.xml (1260, 2023-04-15)
.run\Build Docker Image Bootstrap.run.xml (1251, 2023-04-15)
.run\Build Docker Image Config.run.xml (1245, 2023-04-15)
.run\Build Docker Image Curation Runner.run.xml (1267, 2023-04-15)
.run\Build Docker Image Curation Scheduler.run.xml (1273, 2023-04-15)
.run\Build Docker Image Discovery.run.xml (1251, 2023-04-15)
.run\Build Docker Image Download Scheduler.run.xml (1273, 2023-04-15)
.run\Build Docker Image Persistence Server.run.xml (1274, 2023-04-15)
.run\Build Docker Image Proxy Prod.run.xml (1250, 2023-04-15)
.run\Build Docker Image Proxy Staging.run.xml (1256, 2023-04-15)
.run\Build Docker Image Similarity.run.xml (1257, 2023-04-15)
.run\Build Docker Image Webhooks Server.run.xml (1267, 2023-04-15)
.run\Build Docker Images.run.xml (1198, 2023-04-15)
.run\MoNA Run Test Suite.run.xml (1122, 2023-04-15)
.run\Run Full Test Suite.run.xml (329, 2023-04-15)
.run\Start Test Server.run.xml (509, 2023-04-15)
LICENSE.txt (7651, 2023-04-15)
backend (0, 2023-04-15)
backend\app (0, 2023-04-15)
backend\app\pom.xml (866, 2023-04-15)
backend\app\server (0, 2023-04-15)
backend\app\server\pom.xml (733, 2023-04-15)
backend\app\server\proxy (0, 2023-04-15)
backend\app\server\proxy\.browserslistrc (853, 2023-04-15)
backend\app\server\proxy\.docker (0, 2023-04-15)
backend\app\server\proxy\.editorconfig (274, 2023-04-15)
backend\app\server\proxy\angular.json (5504, 2023-04-15)
backend\app\server\proxy\karma.conf.js (1017, 2023-04-15)
backend\app\server\proxy\package-lock.json (551281, 2023-04-15)
backend\app\server\proxy\package.json (2754, 2023-04-15)
... ...

# MassBank of North America Application ## Common: - Highly Recommended to use Linux OS (Preferably Ubuntu LTS 18.04 or 20.04) - Ensure you have the following installed - Node Version Manager(NVM) - Docker Engine (And Docker-Compose) - NPM (Node Package Manager) - Angular CLI 10.2.3 - IntelliJ IDEA Ultimate - Maven 3 (Should be baked into IntelliJ) - Git - AWS CLI (for ECR to pull docker images) - Java 1.8_292 (open_jdk x***) - Scala 2.13 - Installs in IntelliJ - Right-click the main 'mona' project and click 'Add Framework Support' - Gain Access to the following - Internal mona-config private repo - You'll need admin access and will need to generate a Personal Access Token (https://github.com/settings/tokens) - Then open your `~/.bash_rc` and set the following variables, 'GIT_USER' and 'GIT_PASS' to your github username and new personal access token. This allows the discovery service to work as intended - Note: You'll need to set these tokens on the IPA and GOSE servers as they expire every year (you can configure how quickly these expire). - Access to AWS account and ability to push to ECR - Admin access to public mona repo - You'll need a settings.xml file for your maven 'User Settings File' this will include the nexus profile and all the necessary repo's for pulling down libraries. Please ask a developer on the team for this config and store file at `~/.m2` ## Starting Development: - There are 3 scripts in the project to easily start development - `./start_corsproxy.sh` - Solves CORS issues when connecting the frontend to the microservices - `./start_docker_dev.sh` - Starts all necessary docker microservices - `./start_frontend.sh` - Starts the Angular 10 frontend with ng serve to develop on the fly ## PROD Deployment: - Production deployment is simple with docker - Bring down the application with: `docker stack rm mona` - Bring the application back up with `docker stack deploy -c docker-compose-prod.yml` - Note: You may need to force the newest images to pull down with `docker-compose -f docker-compose-prod.yml pull` ## Running Test Suite With IntelliJ and Maven: - Using the built-in Maven tab, we can run the full scala test suite - Make sure the following Maven profiles are selected (and only those): nexus, scala, scala-test - Run the following docker-compose file: `docker-compose -f docker-compose-test.yml -d` - Finally, run `mvn clean install` on the 'backend(root)' ## Generate new Docker Images: - Make sure the following Maven profiles are selected (and only those): nexus, scala, docker - The following services can be built into docker images: discovery, bootstrap, webhooks-server,curation-scheduler, repository, persistence-server, auth-server, similarity, proxy, download-scheduler, and curation-runner - `mvn clean install` will build a local docker image for the corresponding service - `mvn clean deploy` will build the docker image and deploy it to ECR (make sure you signed in to AWS CLI) - default tag is 'test' you can easily configure that in the main mona pom.xml - NOTE: For the proxy service pom.xml, you'll need to configure the 'ng.env' variable to 'staging' or 'prod' depending on if the build is for IPA('staging') or GOSE('prod'); ## Important Development Notes: - Make sure project sdk/jdk is set to Java 1.8_292 - Make sure to configure Maven in IntelliJ IDEA to use the same project jdk which should be Java 1.8_292 - Make sure you added framework support for scala 2.13 in IntelliJ for the mona project - When making a new branch for git, naming convention should typically have a ticket number (i.e. FIEHN-1234) following a slash and a description of the ticket (i.e. FIEHN-1234/ThisIsATicket). - If your having issues pulling packages with maven, you can troubleshoot with deleting your `~/.m2/repository` directory. Additionally, ensure you have the correct 'settings.xml' file in `~/.m2`. If problems still persist, try the 'Invalidate Caches' under File tab in IntelliJ IDEA. ### ports for cluster service nodes: - persistence svr: 2222 - configuration svr: 1111 - discovery service: 8761 - auth server: 3333 - proxy service: 8080 (entry point) ### ports for in-memory node: - postgresql db : 5432

近期下载者

相关文件


收藏者