Skip to content

Quickstart guide

Bartosz Kielczewski edited this page May 31, 2019 · 25 revisions

There are many different ways to deploy Concerto, and the method you choose will depend your technical expertise and the requirements of the projects. This quickstart guide provides a simple route to installation but we would not recommend this method for use in any 'production' environment (i.e. testing real people).

Hosting a web application on the public server in an efficient and secure manner requires specialist knowledge as there are many moving parts involved and considerations to make. We refer administrators and more advanced users to the Concerto Deployment Guide which describes the many different deployment options for real-world scenarios.

Generic installation instructions

This could be done on your local computer or any networked machine running Linux, Windows or MacOS.

  1. Install docker (v1.13 or newer)

  2. Install docker-compose (v1.21 or newer)

  3. Download docker-compose.yml file and save to a path of your choice

  4. Start it:

    docker-compose up -d
    

Installation on Amazon EC2

This will create a single instance running Concerto inside a Virtual Private Cloud. As long as the default instance type is used (t2.micro) it should fall within Amazon Free Tier if you are eligible. Please note that you are ultimately responsible for checking if this is the case and for any charges your usage may incur.

  1. Have an Amazon AWS account and sign-in to the Console
  2. Create a key pair
  3. Launch ec2-basic CloudFormation Stack - in the Parameters section select the Key Pair you've just created.
  4. Once the stack is created you can find the URL to your instance in the Outputs tab.

With a domain name and TLS certificate

This variant is better if you own a domain name and are familiar with setting DNS records for it. It will create the same cloud resources as above but in addition it will provision a free certificate from Let's Encrypt to provide encryption between the clients and the server.

  1. Do the steps above, but launch ec2-basic-tls CloudFormation Stack instead.
  2. Once the stack is created there will be an IP address shown in the Outputs tab. Take note of it.
  3. Go to your domain registrar's panel and create or change A DNS record for your domain to point to this IP address.
  4. It is normal that it takes a while until your domain resolves to Concerto with a valid certificate. Before that happens you can access Concerto through its IP address. If you do so please note that this will not be an encrypted connection.

Running Administration Panel

When the installation process has completed, you should be able to access the Concerto Platform administration panel by going to: http://localhost/admin

Default login and password is:

Login: admin Password: admin

Please ensure that you immediately change your login and password when logging in for the first time!

Troubleshooting

0.0.0.0:80: bind: address already in use

Port needed for Concerto's web server (80) is already taken by something else that is running on your system. You could change the ports that Concerto uses by editing the docker-compose.yml file. Alternatively, find out what is using the port and move it elsewhere.

Example - changing Concerto web server port mapping to port 8080:

ports:
  - 8080:80

The above command will make Concerto available on http://localhost:8080/

Does not work on Raspberry PI

ARM architecture is not supported, mostly because of MySQL database. It might work with a different database that works on ARM, such as Postgres. You would need to rebuild the container yourself using our Dockerfile as a starting point.

Version in ./docker-compose.yml is unsupported

If you see this message then you are not using the most up-to-date version of Docker in your system. Please follow the link above to the Docker installation guide in order to update it.

The paths X are not shared from OS X and are not known to Docker. You can configure shared paths from Docker -> Preferences... -> File Sharing

By default, on Mac OS, Docker does not permit any volumes outside of the user's home directory to be mounted. You need to follow the instructions given regarding changing preferences in order to explicitly allow the directory, or consider pulling the Concerto files from somewhere within your user's home directory (e.g. ~/concerto).

You can’t perform that action at this time.