Sign inSign up

lusky3/landscape-server

By lusky3

•Updated 6 months ago

All-in-one Ubuntu Landscape Server with auto SSL. For testing/dev - use Juju for production.

Image
Developer tools
0

2.5K

lusky3/landscape-server repository overview

⁠Ubuntu Landscape Server (Docker)

All-in-one Docker container for Ubuntu Landscape Server with automatic SSL certificate generation, PostgreSQL, RabbitMQ, and Apache.

⚠️ Not Recommended for Production - This Docker deployment is intended for development and testing. For production deployments, use the official Juju-based deployment method⁠.

⁠Purpose

Simplified Landscape Server deployment for:

  • Development environments
  • Testing and CI/CD pipelines
  • Proof of concept deployments
  • Learning and experimentation

⁠Quick Start

  1. Get a free Ubuntu Pro token at https://ubuntu.com/pro⁠

  2. Run the container:

bash docker run -d
--name landscape-server
-p 8443:443
-p 8080:80
-e UBUNTU_PRO_TOKEN=your_token_here
/landscape-server:main

  1. Access at https://localhost:8443⁠

First boot takes 2-3 minutes for initialization.

⁠Default Credentials

Change immediately after first login!

⁠Environment Variables

⁠Required
  • UBUNTU_PRO_TOKEN - Your Ubuntu Pro subscription token
⁠Optional SSL (Let's Encrypt)
  • LANDSCAPE_FQDN - Domain name for Let's Encrypt
  • ACME_DNS_PROVIDER - DNS provider (cf, aws, gd, etc.)
  • ACME_CF_Token - Cloudflare API token
  • ACME_AWS_ACCESS_KEY_ID - AWS access key
  • ACME_AWS_SECRET_ACCESS_KEY - AWS secret key
  • ACME_GD_Key - GoDaddy API key
  • ACME_GD_Secret - GoDaddy API secret

See acme.sh DNS API docs⁠ for all providers.

⁠Features

  • Automatic SSL: Self-signed or Let's Encrypt with DNS validation
  • All-in-one: PostgreSQL, RabbitMQ, Apache included
  • Auto-configuration: Ubuntu Pro attachment and Landscape setup
  • Persistent data: Use volumes for /var/lib/postgresql and /var/lib/landscape

⁠Ports

  • 80 - HTTP (redirects to HTTPS)
  • 443 - HTTPS (main access)

⁠Docker Compose

yaml services: landscape: image: /landscape-server:main ports: - "8443:443" - "8080:80" environment: UBUNTU_PRO_TOKEN: ${UBUNTU_PRO_TOKEN} volumes: - landscape-data:/var/lib/landscape - postgres-data:/var/lib/postgresql

volumes: landscape-data: postgres-data:

⁠Production Deployment

For production environments, use the official Juju-based deployment:

  • High availability
  • Scalability
  • Enterprise support
  • Proper security hardening

See: https://ubuntu.com/landscape/install⁠

⁠Source Code

https://github.com/lusky3/Ubuntu-Landscape-Server-Docker⁠

⁠License

MIT

Tag summary

Content type

Image

Digest

sha256:b930b85ac…

Size

292.9 MB

Last updated

6 months ago

docker pull lusky3/landscape-server