-
-
Notifications
You must be signed in to change notification settings - Fork 655
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cloud Based API Instance for Developers #1428
Comments
@noman2002 @kb-0311 I can give this issue a try |
there is file named |
|
@kirtanchandak Please proceed with this. You can use that file, you just need to do some minor changes. But I would suggest please check other solutions like render.com instead of Heroku. |
Hi @noman2002 @kirtanchandak, I have been working on this same issue containerization talawa-api using docker here - #1418 that was merged yesterday and was working on developing a ci/cd pipeline for this exact use case, @kirtanchandak can I work on this issue if you haven't made any significant progress yet? |
One issue per person |
Okay |
This issue did not get any activity in the past 10 days and will be closed in 180 days if no update occurs. Please check if the develop branch has fixed it and report again or close the issue. |
@kirtanchandak Are you still working on this? |
@palisadoes I can work on this if @kirtanchandak is not working on this |
Assigning to@vasujain275. Please work with @noman2002 and @kb-0311 for comments, advice and reviewing the PR |
Hi @noman2002 and @kb-0311, I did some research and found that the MongoDB Atlas free tier is good enough for our use case. I looked into redis free tier at render.com, it has 25 MB of memory with a 50 connection limit and no persistence storage. We can also host our API on render.com but it will be shut down after an inactivity of 5 minutes and will be restarted when called again. Will that render.com's inactivity delay or redis free tier will be a problem? |
|
@kb-0311 We can use the AWS free tier, which will have a t2.micro ec2 instance free for 12 months per account ( we will need a credit card to avail this 12-month free tier ). We can use the docker file and docker-compose file I created in a recent issue, we can set a ci/cd pipeline to push our image to the docker hub on each push and then pull to e2c using GitHub actions. We can then run docker-compose on e2c also using GitHub ci/cd that can run containers of both redis and MongoDB, although I think it will be best to run MongoDB on Atlas as it has a good free tier and will reduce the load on our t2.micro ec2 instance if we run it on atlas. We can also use azure/gcp, they also have this exact free tier of 12 months that requires a credit card on signup. |
@vasujain275 Ideally we also want:
Other:
|
Q. How can github actions do all the changes in our aws instance? My proposed solution -
@noman2002 @kb-0311 , appreciate your feedback on possible improvements in this approach |
|
|
@kb-0311 |
|
@palisadoes Okay I will keep that in mind |
👍
…On Sun, 24 Mar, 2024, 9:36 am Vasu Jain, ***@***.***> wrote:
@varshith257 <https://github.com/varshith257> Okay, I will take docker
files from your pr and paste it in my fork to test the ci cd pipeline
—
Reply to this email directly, view it on GitHub
<#1428 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A4BF3HCL7T6Y6QMMPR6ZPY3YZZGK7AVCNFSM6AAAAAA7O5GJSWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMJWGY4DKOBRHE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Sorry for no progress last week on this issue, I was not well. Resuming the work again |
@vasujain275 Are you fine now? |
Better now, thanks for asking |
Any progress on this? |
Yeah, I am researching a solution that will be effective than current one. Currently, we are using |
Yes the build issue is fixed |
Great, is it merged? |
This issue did not get any activity in the past 10 days and will be closed in 180 days if no update occurs. Please check if the develop branch has fixed it and report again or close the issue. |
PR for #1751 by @varshith257 merged yesterday only, will work on this from today |
I haven’t been paying much attention to this, however I noticed that Talawa-API Docker instances do not import sample data. The CLI commands in the INSTALLATION.md file execute without error but don’t populate the Docker Mongo instance database. The setup script doesn’t prompt to load data either. This is covered in this issue: My understanding was that the GoDaddy API deployment was via Docker, and that there would be a job running to periodically overwrite the database with sample data to reduce the risk of abuse. The discovery of this issue means that the instance is not functional in that the data will always be blank. I’ve also noticed that the cloud deployments have been failing too. Why is that? We should have this working and eventually well documented in INSTALLATION.md in summary form and docs.talawa.io in more detail. Please give a status update on this. It’s not clear to me. |
@palisadoes Sorry for late reply, I am currently busy at school due to end sem exams till 30 May. I can continue the work after that If anybody do not solve this issue till them. Sorry for the inconvenience |
|
Thanks for understanding |
This issue did not get any activity in the past 10 days and will be closed in 180 days if no update occurs. Please check if the develop branch has fixed it and report again or close the issue. |
@varshith257 Did you fix the build issues as I am not able to get the server up and running in production mode, here is the list of commands I run - npm install
npm setup
npm run prebuild
npm run build
npm run start Please take a look into it PS: I am successfully able to run the server in dev mode using - |
@noman2002 @Cioppolo14 This is a cloud instance issue to follow. |
I have reviewed the Issue that was raised to fix the build errors - #1916 but saw that was not able to successfully fix all errors in the build process due to stability issues. @palisadoes shall we continue with dev images only as we are doing currently? They will 3x the size of production docker images (600MB -> 1.8GB) but this is the only viable option imo right now |
Why 1.8GB image size is required? The multi-stage build has been done to reduce image size, it is now ~500MB of dev and prod (~200MB). |
It won't because we are still pointing it to a stale file. There needs a refactoring of the codebase to support the production environment. I have closed the issue by fixing some of them, But it needs to be fixed with tsconfig and fixing of the errors emitted. The compiler from ts-> js is accompanied by incompatibility and it breaks down due to some libraries being built of ECMA. |
|
@vasujain275 You can go with testing it with dev image. As we are developing this for developers dev image could be right one to go with IMO |
|
Do we need a docker account at this stage? |
@palisadoes If we need a paid account for docker hub then I can implement the pipeline without docker hub. Docker hub would make this a little easier but we can implement the pipeline without it too. |
OK. I'll shutdown the docker account over the weekend. |
We need to have a cloud based API instance for developers to test against. It must:
Please coordinate these efforts with @noman2002 and @kb-0311. Ask to be assigned this task by them.
The text was updated successfully, but these errors were encountered: