Welcome

Biodiversity Atlas Sweden has all materials available at GitHub so developers, system integrators and system administrators can find notes on how to get started here.

April 2018 mini workshop

In mid April 2018, a mini-workshop is organized on the topic “Swedish Biodiversity e-infrastructure - today and tomorrow”.

What code and documentation is available from GitHub?

You can find a set of repositories used in https://bioatlas.se at GitHub. These repositories - currently more than 20 repositories - include various core and non-core parts of the Biodiversity Atlas Sweden.

Most of the core components use software from Atlas of Living Australia, with hundreds of repos available from GitHub and therefore most of the existing documentation there remains relevant.

Therefore a good starting point is the wiki which holds links to more background materials such as this key technical document.

One difference visavi the Atlas of Living Australia components - apart from the various customizations made to address various national adaptations - is that https://bioatlas.se makes extensive use of docker and docker-compose for packaging modules and composing modules into a full running system of micro-services.

See this Stack Overflow post for some background on how using containers differs from using traditional VMs.

Overview of repositories

Here is an overview of some of the important repositories used in Biodiversity Atlas Sweden:

Individual repositories in general have a README.md file with usage instructions.

Getting started

A good starting point is the ala-docker repo described above. Consult the README.md file there, which provides some brief instructions - indicating that git, make, docker and docker-compose are required.

Please first make sure that you take the time to prepare your development environment properly so that you meet the host requirements.

You should then be able to issue these commands in order to get the contents of this repository, then build and start the services locally:

For the workshop, please clone the repository ala-docker and checkout the branch no-ssl-for-uppsala-workshop

Update: Instructions have been changed (earlier the branch “solr6-cassandra3” was used) due to an issue with self-signed SSL certs. There is no need to start from scratch if you have the earlier branch, just do “git fetch” and “git checkout no-ssl-for-uppsala-workshop” and proceed as below.

# get code
git clone https://github.com/bioatlas/ala-docker.git
cd ala-docker
git fetch
git checkout develop

# setting up
# The Makefile contains a number of rules. For setting up the system execute the following in the order as described.

# pull the docker images of ALA components
make pull

# pull docker images of softwares like solr, cassandra , mysql, wordpress etc.
make pull2

# download and unzip the wordpress theme
make theme-dl
./baptize.sh

# generate random passwords and save them in .env* files in the env
 folder, used for authentication between applications
make dotfiles

# create and save admin password for simple authentication
make htpasswd

# start up the service
make up

Now, please verify that you can use the web browser to open the following locations:

http://bioatlas.se/
http://bioatlas.se/ala-hub
http://bioatlas.se/collectory
http://bioatlas.se/images

The first location will lead to the Wordpress container, which on its first launch will show a setup wizard with some additional steps. Upon completing them, log in to the admin panel and activate the BAS 2018 theme (available under “appearance” in the admin panel).

Steps after successful installation

Once the installation steps above succeed, next step when using the ala-docker system involves ingesting data.

Also, further steps including testing, making code changes, recompiling and making contributions are possible. For making code changes, the Atlas community and software repositories are by nature polyglot and a variety of FOSS-friendly languages and tools are being used, such as Groovy (grails) with CLI tools such as http://sdkman.io/ and Kotlin, Java, Scala (JVM-based), JavaScript, R etc. Here is a brief intro to Grails.

When it comes to open source development tools there are different options for Integrated Development Environments, such as using popular text editors (SublimeText, vi, emacs etc) with configurations or using more traditional language-specific IDEs (NetBeans, Eclipse, IntelliJ IDEA, RStudio etc).

Docker images are portable in the sense that containers can run on a developer’s laptop or in a production server or in a cloud-based infrastructure.

Reporting issues

If you run into an issue related to any of these materials, please use GitHub to report it here: