GithubHelp home page GithubHelp logo

docker-landscaper-server's Introduction

Ubuntu LandScape Docker Container

Build Status

This container runs the Ubuntu landscape server components

#Requirements

  • Landscape requires a postgres 9.3/9.4 server with plpython and the debversion modules installed
  • A rabbitmq server is also required as the message bus between the various components

#TLS

There is a placeholer certificate in the files/certs directory which gets added to the container and used by apache for the SSL endpoint.

This has a common name of 'landscape-server'. This should be replaced with a valid certificate and key

#Running locally

There is a docker compose file which will bring up a landscape server, this will bring up the landscape server on port 80/443 on your docker host

docker-compose build
docker-compose up

It does the following:

Postgres database server

Create a postgres container based off of the official 9.4 version with plpython and debversion installed

docker build -t postgres .
docker run -d --name postgres -e POSTGRES_PASSWORD=password postgres

Rabbitmq server

Create a rabbitmq container that will be linked in, which has the management module enables so you can access it via a web console

docker run -d --name rabbitmq -p 15672:15672 rabbitmq:3-management

Landscape container creation

Then it build the landscape container, this container is based on ubuntu:14.04, this will link the postgres container into the landscape container and use that, if you have an external postgres instance you would just set the variables that are required

docker build -t landscape-server
docker run -d --link postgres:postgres --link rabbitmq:rabbitmq -e INITIALIZE_SCHEMA=yes -e DB_USER=postgres -e DB_PASS=password -e DB_LANDSCAPE_PASS=password -p 80:80 -p 443:443 landscape-server

Valid commands for the landscape container

  • app:schema - This will create the landscape user and schema but not start the application
  • app:start - This starts the application, this is also the default action

#Variables that can be set

Variable Default Usage
STARTUP_WAIT_TIME empty Wait number of seconds before starting process, useful for waiting for other services to come up
INITIALIZE_SCHEMA empty If set this will create the database schema or confirm it is valid
DB_HOST empty The postgres server hostname
DB_PORT 5432 The postgres server port
DB_LANDSCAPE_PASS password The landscape user password
DB_USER landscape The postgres super user, this user is used for schema creation
DB_PASS landscape The postgres super user password
DB_NAME postgres The default database name for testing connectivity
RMQ_HOST empty The rabbitmq server hostname
RMQ_PORT 5672 The rabbitmq server amqp port
RMQ_USER guest The rabbitmq user
RMQ_PASS guest The rabbitmq password
RMQ_VHOST default The vhost to be used by the message broker

docker-landscaper-server's People

Contributors

jon-shanks avatar osterzel avatar purplebooth avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-landscaper-server's Issues

Updates alerts don't fire

Because cron isn't launched in /sbin/entrypoint.sh updates (among many other things) aren't tracked. Additionally I put in a chmod to ensure /etc/cron.d/landscape-server is executable (not sure if it's needed or not but it doesn't hurt).

dist-upgrade makes Dockerfile non-idempotent

Thanks for this. I wanted to test Landscape in a sandbox, and found your docker setup. It works fabulously, but I wanted to point out that the
RUN apt-get -fy dist-upgrade
in Dockerfile makes it currently fail. It's not generally recommended that Dockerfiles do an upgrade as you have no control of the results.

Unable to validate credentials

The welcome page prompts for "Identity" and "Passphrase" but regardless of the data provided, the results are always "Unable to validate credentials."

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.