Skip to content

Remove proxy container and prepare configuration for host proxy#56

Open
krzysdz wants to merge 1 commit into
mainfrom
krzysdz/host-nginx
Open

Remove proxy container and prepare configuration for host proxy#56
krzysdz wants to merge 1 commit into
mainfrom
krzysdz/host-nginx

Conversation

@krzysdz
Copy link
Copy Markdown
Collaborator

@krzysdz krzysdz commented Mar 17, 2026

Docker-based proxy is gone and with it Windows compatibility (of the prod profile). Now proxy must be running on the host system, which as an upside means that if you already had a proxy, there's only one now.

The app listens on a unix socket /run/gunicorn/gunicorn.sock (/run/gunicorn is a bind mount).

Installation/migration instructions

The installation can be done using a script which generates configuration files and installs them in the nginx conf directory, but some manual work is required.

1. prod/config.env changes

The setup script requires initial configuration or changes to prod/config.env. There are 2 new variables that have to be set in this file:

FULLCHAIN_PATH=/path/to/fullchain.pem
PRIVKEY_PATH=/path/to/privkey.pem

For example with domain openroboticplatform.com and certificates from Let's Encrypt, prod/config.env should look like this:

DOMAIN=openroboticplatform.com
FULLCHAIN_PATH=/etc/letsencrypt/live/openroboticplatform.com/fullchain.pem
PRIVKEY_PATH=/etc/letsencrypt/live/openroboticplatform.com/privkey.pem

2. Nginx config file generation and configuration

prod/setup-proxy.sh will generate a configuration file prod/nginx/conf/orp.conf and try to symlink it (along with other required files) to the nginx directory. Run prod/setup-proxy.sh -h for more information about its options. On Debian/Ubuntu the easiest way to use it is:

prod/setup-proxy.sh --install

The script will use sudo if symlinking or copying will fail.

3. Remaining nginx configuration

The installed configuration starts only a HTTPS server. If you don't have one, please create a configuration file (e.g. /etc/nginx/sites-enabled/https-redir.conf or /etc/nginx/conf.d/https-redir.conf) with a simple server:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    location / {
        return 301 https://$host$request_uri;
    }
}

4. Remember to reload nginx configuration

nginx -s reload

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant