• 25 Posts
  • 107 Comments
Joined 1 year ago
cake
Cake day: July 14th, 2023

help-circle

  • ok I checked and you are right, the apache container actually exposes the 11000 port on the host. so i tried following the instructions for “traefik in a docker container on the same machine” and… it still didn’t work (now I was getting a Bad Gateway error)

    at this point I think I’ll just stick with my old setup with docker compose. I was interested in AIO because I thought it could have been an easier to maintain way to host NC (also considering it’s official, while the docker compose method is not) but apparently it’s not meant to be inserted in an already existing setup like mine so I’ll stick with what I currently have.

    it would be nice though if the NC devs also publish a “recommended docker-compose.yaml file” (in a similar way of what Immich does) so that more advanced users still can have an easy way to set everything up without having to look for the correct containers and settings required all over the internet


  • thank you! so, wanting to follow your tip and exposing the 11000 port from the apache container to the host (in order to have a setup that is valid even if I move the service to another machine), how should I do that? because the apache container is also created by AIO’s mastercontainer and so I don’t have a place where to specify its port mapping (while usually I would do it adding 11000:11000 to the ports section of the docker compose)…


  • Thank you! Idk how but I didn’t noticed the paragraph in the docs saying that labels condition is not supported. I’ll try with the file config and see if this way I can make it work. The only thing I’m still missing is the IP of the Apache container: shouldn’t it be an IP on the traefik_net network where also the traefik container runs? And if so how can I specify to the mastercontainer to create the Apache container on that network with a specific IP address?











  • Thank you, but the problem is that is howdy installation (that gets automatically executed after I run sudo apt install howdy that tries to run “old fashioned” pip commands. So I should either find a way to tweak Howdy install (like building it from source after changing something maybe?) or disable this system security feature temporarily, install howdy and re-enable it immediately after


  • Nope I didn’t, but the problem doesn’t seem to be the Python version, but instead the fact that now Python is “externally managed” and therefore I cannot install packages using pip install packagename as it used to be.

    I know that this is done for security reasons and that the good practice would be using pipx or conda, but the problem is that howdy istallation still tries to use the “old approach”







  • Arrivo un po’ tardi per portare un punto di vista diverso: a me (decisamente unexperienced developer) Dart e Flutter piacciono molto e per la mia limitata esperienza hanno entrambi grandi vantaggi rispetto agli altri linguaggi e framework.

    Dart a mio avviso combina un po’ il meglio di Java (/ C# / altri linguaggi OO) e Javascript, mantenendo appunto una struttura OO con classi, ereditarietà, fortemente tipizzata ecc. ma allo stesso tempo introducendo una serie di strumenti per la programmazione asincrona (come i futures) un po’ “alla javascript” semplificando così molto l’implementazione di applicazioni complesse (per esempio che richiedono concorrenza o l’utilizzo della rete) rispetto a Java. Ah e il fatto che qualche versione a questa parte sia fortemente null-safe è una comodità a parer mio da non sottovalutare. Come detto sopra non sono un programmatore esperto, ma se ora come ora dovessi scegliere un linguaggio tra Java, Javascript, C# e Dart sceglierei Dart abbastanza a occhi chiusi.

    Su Flutter posso fare un confronto più limitato purtroppo, poiché per il momento l’unico altro framework per costruire UI che ho approfondito veramente è JavaFX (e fidati, anche qui a parer mio Flutter è avanti anni luce). L’unica cosa che mi sento di dire è che all’inizio l’approccio a “albero di widget” lasciava scettico anche me ma in realtà è molto flessibile e snello (supponendo tu stia programmando con un IDE e non dal blocco note s’intende) e la possibilità di fare hot reload e quindi vedere immediatamente nella tua app i cambiamenti grafici che hai appena fatto al codice senza dover rebuildare è una comodità enorme.

    Quindi TL;DR: se hai tempo e voglia, dai a Dart e Flutter una chance e secondo me non te ne pentirai. Ovviamente non sono la soluzione a tutte le esigenze e hanno sicuramente margini di miglioramento, però per molti casi sono secondo me una validissima opzione che nulla ha da invidiare a Java+JavaFX, C#+WPF o JavaScript+[inserire qualsivoglia nome di framework]



  • Then I would suggest you to take a look at Reverse Proxies, which are programs that let you publicly expose different services hosted on the same computer under different (sub)domains.

    The easiest to start with (and also probably the one that better fits your needs) afaik is NGINX Proxy Manager, which can be set up really easily using docker, and you can find plenty of tutorials online (here is one I watched when I was starting to look into docker and selfhosting, it’s a bit old but should still be valid).

    If after having set up that you will to thinker around it a little bit and dive a bit deeper, there’s also Traefik which is pretty cool and also has a lot of materials to learn online.

    I don’t remember if the video I linked mention it or not, but to use a reverse proxy to expose your services on the web you will first need to set up a dynamic dns (probably the easiest way is to use Cloudflare) or to ask your ISP for a static IP, then go into your routers settings and find the Port Forwarding section where you should tell your routers to send all the incoming traffic from ports 80 (HTTP) and 443 (HTTPS) to the local IP of your server. And then you should be ready to use spin up Nginx Proxy Manager or Traefik on your server.

    (idk if I was clear or not but I swear it’s easier that how it seems ahah)