Installer does not replace tags in docker-compose.yml (installer_linux_amd64) #1800

Closed
opened 2026-04-05 19:41:59 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @lesservehicle on 2/8/2025

My environment

  • VPS
  • Ubuntu 24.04.1 LTS
  • Docker
uname -a
Linux myhostname 6.8.0-52-generic #53-Ubuntu SMP PREEMPT_DYNAMIC Sat Jan 11 00:06:25 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux

cat /etc/debian_version 
trixie/sid

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04.1 LTS
Release:        24.04
Codename:       noble

How to reproduce

Make a new directory and download the installer:

cd ~
mkdir ~/pangolin
cd ~/pangolin
wget -O installer "https://github.com/fosrl/pangolin/releases/download/1.0.0-beta.12/installer_linux_amd64" && chmod +x ./installer

Run the installer, taking the defaults:

sudo ./installer

=== Basic Configuration ===
Enter your base domain (no subdomain e.g. example.com): example.com
Enter the domain for the Pangolin dashboard (default: pangolin.example.com): 
Enter email for Let's Encrypt certificates: admin@example.com
Do you want to use Gerbil to allow tunned connections (yes/no) (default: yes): 

=== Admin User Configuration ===
Enter admin user email (default: admin@example.com): 
Create admin user password: 
Confirm admin user password: 

=== Security Settings ===
Disable signup without invite (yes/no) (default: yes): 
Disable users from creating organizations (yes/no) (default: no): 

=== Email Configuration ===
Enable email functionality (yes/no) (default: no): 
Would you like to install and start the containers? (yes/no) (default: yes): 
Starting containers...
Using 'docker compose' command to pull containers...
[+] Pulling 3/3
 ✘ gerbil Error   context canceled                                                                           0.2s 
 ✘ traefik Error  context canceled                                                                           0.2s 
 ✘ pangolin Error manifest for fosrl/pangolin:replaceme not found: manifest unknown: mani...                 0.2s 
Error response from daemon: manifest for fosrl/pangolin:replaceme not found: manifest unknown: manifest unknown
Installation complete!

It looks like the installer script ought to have replaced "replaceme" with a relevant tag like "latest", as it's used across a couple of files.

find . -type f | xargs grep replaceme
./docker-compose.yml:    image: fosrl/pangolin:replaceme
./docker-compose.yml:    image: fosrl/gerbil:replaceme
./config/traefik/traefik_config.yml:      version: "replaceme"
grep: ./installer: binary file matches

Workaround

Manually changing the resultant ./docker-compose.yml and ./config/traefik/traefik_config.yml files and then running docker compose from the pangolin directory resolves the issue:

sed -i 's/pangolin\:replaceme/pangolin\:v1.0.0-beta.12/' ./docker-compose.yml
sed -i 's/gerbil\:replaceme/gerbil\:v1.0.0-beta.3/' ./docker-compose.yml
sed -i 's/replaceme/v1.0.0-beta.3/' ./config/traefik/traefik_config.yml

docker compose up -d
[+] Running 4/4
 ✔ Network pangolin    Created                                                                               0.2s 
 ✔ Container pangolin  Healthy                                                                               8.6s 
 ✔ Container gerbil    Started                                                                               8.0s 
 ✔ Container traefik   Started                                                                               8.7s 

docker compose ps
NAME       IMAGE                   COMMAND                  SERVICE    CREATED         STATUS                   PORTS
gerbil     fosrl/gerbil:latest     "/entrypoint.sh --re…"   gerbil     3 minutes ago   Up 3 minutes             0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:51820->51820/udp, :::51820->51820/udp
pangolin   fosrl/pangolin:latest   "docker-entrypoint.s…"   pangolin   3 minutes ago   Up 3 minutes (healthy)   
traefik    traefik:v3.3.3          "/entrypoint.sh --co…"   traefik    3 minutes ago   Up 3 minutes   
*Originally created by @lesservehicle on 2/8/2025* ## My environment - VPS - Ubuntu 24.04.1 LTS - Docker ``` uname -a Linux myhostname 6.8.0-52-generic #53-Ubuntu SMP PREEMPT_DYNAMIC Sat Jan 11 00:06:25 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux cat /etc/debian_version trixie/sid lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.1 LTS Release: 24.04 Codename: noble ``` ## How to reproduce Make a new directory and download the installer: ``` cd ~ mkdir ~/pangolin cd ~/pangolin wget -O installer "https://github.com/fosrl/pangolin/releases/download/1.0.0-beta.12/installer_linux_amd64" && chmod +x ./installer ``` Run the installer, taking the defaults: ``` sudo ./installer === Basic Configuration === Enter your base domain (no subdomain e.g. example.com): example.com Enter the domain for the Pangolin dashboard (default: pangolin.example.com): Enter email for Let's Encrypt certificates: admin@example.com Do you want to use Gerbil to allow tunned connections (yes/no) (default: yes): === Admin User Configuration === Enter admin user email (default: admin@example.com): Create admin user password: Confirm admin user password: === Security Settings === Disable signup without invite (yes/no) (default: yes): Disable users from creating organizations (yes/no) (default: no): === Email Configuration === Enable email functionality (yes/no) (default: no): Would you like to install and start the containers? (yes/no) (default: yes): Starting containers... Using 'docker compose' command to pull containers... [+] Pulling 3/3 ✘ gerbil Error context canceled 0.2s ✘ traefik Error context canceled 0.2s ✘ pangolin Error manifest for fosrl/pangolin:replaceme not found: manifest unknown: mani... 0.2s Error response from daemon: manifest for fosrl/pangolin:replaceme not found: manifest unknown: manifest unknown Installation complete! ``` It looks like the installer script ought to have replaced "replaceme" with a relevant tag like "latest", as it's used across a couple of files. ``` find . -type f | xargs grep replaceme ./docker-compose.yml: image: fosrl/pangolin:replaceme ./docker-compose.yml: image: fosrl/gerbil:replaceme ./config/traefik/traefik_config.yml: version: "replaceme" grep: ./installer: binary file matches ``` ## Workaround Manually changing the resultant `./docker-compose.yml` and `./config/traefik/traefik_config.yml` files and then running `docker compose` from the `pangolin` directory resolves the issue: ``` sed -i 's/pangolin\:replaceme/pangolin\:v1.0.0-beta.12/' ./docker-compose.yml sed -i 's/gerbil\:replaceme/gerbil\:v1.0.0-beta.3/' ./docker-compose.yml sed -i 's/replaceme/v1.0.0-beta.3/' ./config/traefik/traefik_config.yml docker compose up -d [+] Running 4/4 ✔ Network pangolin Created 0.2s ✔ Container pangolin Healthy 8.6s ✔ Container gerbil Started 8.0s ✔ Container traefik Started 8.7s docker compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS gerbil fosrl/gerbil:latest "/entrypoint.sh --re…" gerbil 3 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 0.0.0.0:51820->51820/udp, :::51820->51820/udp pangolin fosrl/pangolin:latest "docker-entrypoint.s…" pangolin 3 minutes ago Up 3 minutes (healthy) traefik traefik:v3.3.3 "/entrypoint.sh --co…" traefik 3 minutes ago Up 3 minutes ```
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#1800