Node.js, Python & Docker articles
Node.js, Python & Docker 210
Getting a Django application running
Django is not in the cPanel apps installer, and nothing is missing: that installer is for PHP applications. Django...
Node.js, Python & Docker 197
Getting a Ruby on Rails application running
Ruby on Rails is not in the cPanel apps installer, because that installer is for PHP applications. Ruby has a tool...
Node.js, Python & Docker 184
Installing Tomcat on a server of your own
There is no Java and no Tomcat on our shared hosting servers, and they cannot be installed there. A Java application...
Node.js, Python & Docker 171
Configuring Tomcat: ports, memory and the site in front of it
Still a VPS or dedicated server subject, with administrator access. There is no Java and no Tomcat on our shared...
Node.js, Python & Docker 392
Getting a Node.js application running
Yes, there is Node.js on this hosting. It is not an extra you ask for, and it is not a VPS thing: it is in your...
Node.js, Python & Docker 156
Installing Docker and Docker Compose on a VPS
Docker goes on a VPS with root access over SSH, never on shared hosting: there is no way to run it there. We...
Node.js, Python & Docker 136
Your first container, and what to look at when it will not start
A container is a program running in a space of its own, with everything it needs already packed in an image. It...
Node.js, Python & Docker 128
Docker Compose: an application with its database
Docker Compose describes a whole application in a single file: the program, the database, the networks between them...
Node.js, Python & Docker 140
Nginx as a reverse proxy in front of a container
A reverse proxy is nginx receiving requests on ports 80 and 443, under your domain, and handing them to the...
Node.js, Python & Docker 140
HTTPS for a container: a certificate and a domain
For an application running in a container to show the padlock, you need a domain pointing at the VPS and a...
Node.js, Python & Docker 132
Updating a Docker application without losing data
Updating an application in Docker is, as a rule, pulling the new image and recreating the container. The data...
Node.js, Python & Docker 136
Docker filling the disk: images, volumes and logs
Docker fills a VPS disk in three ways: the images and layers left behind after updates, the volumes nobody uses, and...
Node.js, Python & Docker 154
Node.js in cPanel: choosing the version and using npm
In cPanel, Node.js is set up under “Setup Node.js App”. The tool offers 13 versions, from 10.24.1 to 24.x, and each...
Node.js, Python & Docker 161
Keeping a Node.js app running on a VPS with PM2
If you run node app.js in an SSH session, the application dies when the session closes, and does not return if the...
Node.js, Python & Docker 173
Node.js app in cPanel returns 503: the usual causes
A 503 error on an application created under “Setup Node.js App” almost always means the same thing: the server tried...
Node.js, Python & Docker 137
Python in cPanel: virtual environments and pip
In cPanel, Python runs through “Setup Python App”, which offers Python 2.7 and the 3.3 to 3.13 versions. Each...
Node.js, Python & Docker 123
Running a Flask or FastAPI application
Flask runs on shared hosting with no tricks: it speaks WSGI, and that is what the Passenger behind “Setup Python...
Node.js, Python & Docker 121
Environment variables and secrets for your application
An environment variable is a value the application reads from outside the code: the database password, an API key,...
Node.js, Python & Docker 143
Ports and firewall on a VPS: why your app is not reachable
The application runs, answers on the server itself, and does not open from outside. In almost every case it is one...
Node.js, Python & Docker 130
Deploying a Next.js app: static export or Node server, and where each one fits
Next.js can come out in two very different ways, and picking the wrong one lies behind almost every deployment...
Node.js, Python & Docker 109
Publishing a React or Vue site: the build folder, and the refresh that gives a 404
A site built with React or Vue (with Vite or with the older tools) does not run on the server: you build it on your...
Node.js, Python & Docker 101
Express says Cannot GET or returns 404 on every route: the causes
The message Cannot GET / is Express saying: “I received a GET request for this path and none of my routes or files...
Node.js, Python & Docker 123
npm, yarn or pnpm: which to use, and why you keep only one lockfile
npm, yarn and pnpm do the same job: they install the libraries your project needs. The short answer: use the package...
Node.js, Python & Docker 99
npm install fails with EACCES, ERESOLVE or out of memory: what to do
When npm install fails, the message is usually long, but the cause fits one of half a dozen families. The short...
Node.js, Python & Docker 106
pip says externally-managed-environment: why it happens and the right fix
You typed pip install on a VPS and got error: externally-managed-environment. Nothing is broken and you are not...
Node.js, Python & Docker 149
Where console.log and print output goes, and how to read your app logs
On your computer, console.log (Node.js) and print (Python) show up on screen. A server has no screen, and the...
Node.js, Python & Docker 152
Permission denied in a Node.js or Python app on cPanel: ownership, modes and folders
EACCES: permission denied in Node.js, PermissionError: [Errno 13] in Python. The application tried to do something...
Node.js, Python & Docker 121
CORS error between your front end and your API: how to fix it
“Access to fetch at … has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present”. It is...
Node.js, Python & Docker 137
Django DisallowedHost, CSRF failed and missing static files: the fixes
You put Django online and three errors show up that nearly everyone meets: DisallowedHost, CSRF verification failed...
Node.js, Python & Docker 172
Deploying a Node.js or Python app from Git: pull, install, restart
Publishing over FTP works, until the day you forget a file. With Git, deployment becomes the same sequence every...
Node.js, Python & Docker 136
WebSockets and Socket.IO: what to expect on cPanel and on a VPS
A chat, a dashboard that updates by itself, live notifications: all of these need a connection that stays open...
Node.js, Python & Docker 122
Running Flask or Django with gunicorn and systemd on a VPS
The server that ships with Flask and Django (flask run, manage.py runserver) is for development, not for the public....
Node.js, Python & Docker 123
FastAPI on a VPS: uvicorn workers, proxy headers and a service that restarts
FastAPI speaks ASGI, and the server that runs it is uvicorn. On a VPS, the production recipe has four pieces:...
Node.js, Python & Docker 139
Installing or upgrading Node.js on a VPS: distro package, NodeSource or nvm
You installed Node.js on a VPS and the version is too old for your project, or you need to move up. The short...
Node.js, Python & Docker 114
Error listen EADDRINUSE address already in use: finding what holds the port
The application will not start and the message says Error: listen EADDRINUSE: address already in use :::3000. In...
Node.js, Python & Docker 158
Writing a Dockerfile for a Node.js or Python app
The Dockerfile is the recipe that turns your application into an image: a package with the code, the libraries and...
Node.js, Python & Docker 133
Getting inside a running container: exec, cp and what not to edit there
The container is running and you need to look inside: a file, a variable, run one of the application’s commands. The...
Node.js, Python & Docker 107
Docker containers that cannot reach each other or the host: networks explained
An application in Docker “cannot see” the database, or two projects cannot talk to each other, or a container cannot...
Node.js, Python & Docker 105
Docker volumes or bind mounts: where your data lives and how to back it up
What a container writes inside itself disappears when it is deleted. For data to survive, you connect it to...
Node.js, Python & Docker 125
Running Docker on a VPS safely: the precautions that matter
Docker makes it easy to get an application running, which is why it also makes it easy to get a poorly protected one...
Node.js, Python & Docker 107
Nextcloud on a VPS: your own file storage, with Docker Compose
The short answer: Nextcloud is an open-source program that gives you your own “Drive”: files, calendar and contacts,...
Node.js, Python & Docker 84
Running a Go program on a VPS as a service that restarts by itself
The short answer: a Go program compiles to a single file, with nothing to install on the server. On a VPS, the right...





