electerious / Ackee

Self-hosted, Node.js based analytics tool for those who care about privacy.
https://ackee.electerious.com
MIT License
4.31k stars 362 forks source link

Add fast deploy on other platforms #149

Closed katriellucas closed 3 years ago

katriellucas commented 4 years ago

I just discovered Ackee Analytics and I like it a lot, visuals, mission, and specially the privacy it gives in comparison to google, I'm a frontend developer, student, it's my first time dealing with backend, tried the installation guides and failed miserably. :sweat_smile:

I think it would be a nice enhacement to be able to fast deploy Ackee on other services for folks like me. There aren't many simple free alternatives to host Ackee besides heroku (the button don't work anymore at this date 01/09/2020), the mongodb addon needs credit card and it seems that it will be discontinued in November 10, 2020...

Here are some FREE with limits services that I think (correct me if I'm wrong) it can run Ackee:

Okteto

They have a fast deploy button, it's a kubernetes platform, also support helm charts and a lot of databases, including mongo, maria, postgre and others. It sleeps in 24 hours after no activity.

image https://okteto.com/docs/cloud/develop-on-okteto-button

Fly.io

Dockers images, but they have their own commands, we get $10 every month to use on their services, seems like they deploy the apps in multiple servers, basically a CDN, they have something called turboku, a way to connect heroku apps, more info here: https://fly.io/heroku

Alwaysdata

Regular hosting with 100 MB of space, they have nodeJS, yarn, mongodb and others, I guess we can run Ackee but the space is too little, I assume... But I think we can use Atlas just for the database. (I couldn't figure out how to do the connection too. :disappointed:)

Qovery

They have a free tier for developers, community projects and small stuff, I don't think it sleeps or anything like this but it's full CLI, the docs teach how to deploy with Git and Docker, also support databases like MongoDB, Postgre, etc. Seems like a good place for hosting Ackee, if anyone make it work, please comment.

Kintohub

Making Ackee work on Kintohub is easy (even for me. 😅), supports linking to git and even regular https for public and private repos, dockers, databases, it seems perfect but... Ackee doesn't seem to deploy with 256mb of memory, that's the free plan offer, if you upgrade to the pay-as-you-go (needs credit/debit card) you get $10 every month for free to use on their services, but you will get billed if you use more than $10, the credit card unlinking is also hard (I'm still trying and no response to this date yet). So, if you can control your expenses and maintain under $10, it's free.

I would volunter myself to make the guides, but I just don't know how to setup everything. Any help is appreciated, also tell me what you think or if you use other (preferebly free) services.

electerious commented 4 years ago

Sounds like a good idea to add more free services to the documentation. Help is welcome! Feel free to suggest more hosting options.

electerious commented 4 years ago

Related: https://github.com/electerious/Ackee/issues/60

Tragio commented 4 years ago

@electerious @Go-Merk thank you for this project and this contribution. I really want to start using Ackee but I'm not seeing what would be the best host for this. I was thinking of using Vultr (5€) as I have other services there, but I was wondering if there's a cheaper service available for deploy Ackee.

electerious commented 4 years ago

Netlify + MongoDB Atlas might be a good solution. Ackee will also support Vercel in the future which might a good choice, too. I however don't have enough data to say that the free plans are enough long-term.

Tragio commented 4 years ago

Netlify + MongoDB Atlas might be a good solution. Ackee will also support Vercel in the future which might a good choice, too. I however don't have enough data to say that the free plans are enough long-term.

Thank you for the fast reply! Yes, I saw the pull request for Vercel. I already use Vercel so I'm excited to use it together with MongoDB Atlas 😁

jasonofdain commented 4 years ago

Would be great to know to deploy on Linode, just spend some hours trying to, but kept winding up with errors that I'm not sure what to make of. This is part of the error, seems to be timing out in 10 seconds.

{"errorType":"Runtime.UnhandledPromiseRejection","errorMessage":"MongooseServerSelectionError: connection timed out","trace":["Runtime.UnhandledPromiseRejection: MongooseServerSelectionError: connection timed out"," at process. (/var/runtime/index.js:35:15)"," at process.emit (events.js:314:20)"," at processPromiseRejections (internal/process/promises.js:209:33)"," at processTicksAndRejections (internal/process/task_queues.js:98:32)"]}

I used the deploy with Netlify option, and setup my own MongoDB server with administrative user and Ackee database. Tested connecting to it from another Linode but when it comes to Ackee, it didn't work with connecting and I'm not sure what I missed. I've tried modifying the connection string with using the mongo login credentials and without (with mongo security disabled).

I'm giving Uberspace a try.

hiensarahly commented 3 years ago

In addition to Uberspace, I would also tip in https://www.cloudron.io/ (free for 2 apps).

Ackee is here : https://www.cloudron.io/store/com.electerious.ackee.html and it is fully packaged.

electerious commented 3 years ago

The get started guide keeps growing. I will close this issue as it's not really an issue, but I enabled GitHub discussions in case someone wants to post more hosting suggestions 😊 https://github.com/electerious/Ackee/discussions