Skip to content

Offline Installation (Windows)

When to Use Offline Installation

Choose offline installation when: - Your server does not have internet access (air-gapped environment) - Corporate security policies restrict internet downloads - You need to install a specific version of Osprey - Network connectivity is unreliable or very slow - You want to maintain local copies of installation files

Prerequisites

Before starting offline installation, you'll need to prepare your system and download the required files.

System Preparation

Enable WSL2 (Required)

Podman requires WSL2. Run the following commands in an elevated PowerShell to enable the required Windows features, then restart:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl --set-default-version 2

Important: A restart is required after running these commands before proceeding.

Alternatively, you can enable these features via Windows Features (Turn Windows features on or off):

  • Windows Subsystem for Linux
  • Virtual Machine Platform

Install Podman

  1. Download Podman Desktop from https://podman-desktop.io
  2. Run the installer with administrator privileges
  3. A restart may be required after Podman installation
  4. Launch Podman Desktop and complete the initial setup

Download Osprey Installation Files

Get Latest Version from Tycho Data Team

Contact Tycho Data team to get the latest version number and download the tar file:

Example download (replace with latest version):

https://tychodataosprey.blob.core.windows.net/images/osprey_1.0.122.tar

You'll also need:

  • PostgreSQL Docker image
  • docker-compose.yml configuration file
  • Any additional configuration files specific to your deployment

Installation Files

Contact Tycho Data Support to obtain the latest files:

Installation Steps

1. Transfer Files to Server

Copy all installation files to your target Windows server using your organization's approved file transfer method.

2. Load Docker Images

Open PowerShell as Administrator and load the Docker images:

# Load Osprey image
podman load -i osprey_1.0.122.tar

# Load PostgreSQL image
podman load -i postgres.tar

# Load Traefik image
podman load -i traefik.tar

Verify the images are loaded:

podman images

You should see osprey, postgres, and traefik images listed.

3. Configure docker-compose

Place the provided docker-compose.yml file in your working directory (e.g., C:\Program Files\Tycho Data\Osprey\). Open the docker-compose.yml file and make sure the osprey.version.tar file is referenced properly.

4. Create / update database

podman-compose run --rm migrations

5. Configure SSL Certificate (Optional)

For HTTPS access, you can configure a self-signed certificate that Osprey will use. Work with the Tycho Data team to obtain or create a self-signed certificate for your environment.

Create Self-Signed Certificate

If you need to create your own self-signed certificate:

# Create certificates directory
New-Item -ItemType Directory -Path ".\certs" -Force

# Generate self-signed certificate (requires OpenSSL)
openssl req -x509 -newkey rsa:4096 -keyout .\certs\key.pem -out .\certs\cert.pem -days 365 -nodes -subj "/C=US/ST=State/L=City/O=YourOrganization/CN=localhost"

Alternative using PowerShell (if OpenSSL not available):

# Create a self-signed certificate using PowerShell
$cert = New-SelfSignedCertificate -Subject "CN=localhost" -CertStoreLocation "Cert:\LocalMachine\My" -KeyUsage DigitalSignature,KeyEncipherment -KeyAlgorithm RSA -KeyLength 2048 -NotAfter (Get-Date).AddDays(365)

# Create certs directory
New-Item -ItemType Directory -Path ".\certs" -Force

# Export certificate to PEM format
$certBytes = $cert.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Cert)
$certPem = [System.Convert]::ToBase64String($certBytes, [System.Base64FormattingOptions]::InsertLineBreaks)
$certContent = "-----BEGIN CERTIFICATE-----`n" + $certPem + "`n-----END CERTIFICATE-----"
$certContent | Out-File -FilePath ".\certs\cert.pem" -Encoding ASCII

Write-Host "Self-signed certificate created in .\certs\ directory"
Write-Host "Note: Self-signed certificates will show browser security warnings"

Configure Osprey to Use SSL Certificate

Work with Tycho Data team to update your docker-compose.yml configuration to reference the SSL certificates. The team will provide specific configuration details for your certificate setup.

Security Note: Self-signed certificates will show browser warnings. For production environments, consider obtaining certificates from a trusted Certificate Authority from your IT department.

6. Start Services

podman-compose up -d

This command will start all Osprey services in detached mode. The containers will run in the background.

5. Next Steps

Once the services are running successfully, proceed to the next page to create your administrator account:

Next: Create Administrator Account

Troubleshooting Offline Installation

Image Loading Issues

  • Verify tar files are not corrupted
  • Ensure sufficient disk space for Podman images
  • Check Podman service is running

Database Connection Issues

  • Verify PostgreSQL container is running: podman ps
  • Check container logs: podman logs <postgres_container_id>
  • Ensure database was created successfully

Service Startup Issues

  • Check docker-compose.yml syntax
  • Review container logs: podman-compose logs
  • Verify all required images are loaded: podman images

Upgrades

To upgrade Osprey to a newer version in an offline environment:

1. Download Latest Osprey Image

Download the latest Osprey tar file from Tycho Data team:

Example (replace with latest version):

https://tychodataosprey.blob.core.windows.net/images/osprey_1.0.125.tar

2. Load New Docker Image

Open PowerShell as Administrator and load the new image:

# Load the new Osprey image
podman load -i osprey_1.0.125.tar

3. Update docker-compose Configuration

Open docker-compose.yml and update the Osprey image version to the new version:

services:
  app:
    image: tychodata/osprey:1.0.125  # Update to new version number

4. Stop Current Services

podman-compose down

5. Start Updated Services

podman-compose up -d

6. Test Web Access

Set up account

From a browser, navigate to: http://<server-ip>/start Navigate the set up screens. An initial login will be created for you.

Next Steps

Once the services are running successfully, proceed to the next page to create your administrator account:

Next: Create Administrator Account

7. Verify Upgrade

Check that all containers are running with the new version:

# Check container status
podman-compose ps

# Verify image versions
podman images | findstr osprey

Note: Always backup your configuration and data before performing upgrades.