In production, AskOmics is deployed with docker and docker-compose. We provide
docker-compose.yml templates to deploy your instance.
# Debian/Ubuntu apt install -y git # Fedora dnf install -y git
# Debian/Ubuntu apt install -y docker-compose # Fedora dnf install -y docker-compose
First, clone the flaskomics-docker-compose repository. It contain template files to deploy your AskOmics instance.
git clone https://github.com/askomics/flaskomics-docker-compose.git
This repo contains several directories, depending on your needs
cd flaskomics-docker-compose ls -1
Two directories are used for production deployment
standalone: deploy AskOmics with all its dependencies for a standalone usage
federated: deploy AskOmics with all its dependencies and a federated query engine for a federated usage (Cross external endpoint such as NeXtProt with local data)
Choose one of this directory depending of your needs
First, edit the
docker-compose.yml file. You can change the main port:
ports: You can change the default port if
80is already used on your machine. Example:
Then, configure virtuoso by editing
VIRT_Parameters_MaxDirtyBuffers following rules described here.
DBA_PASSWORD if you plan to expose the virtuoso endpoint. The password endpoint have to be the same in
Nginx (web proxy)¶
Nginx is used to manage web redirection. Nginx configuration is in two files:
nginx.env. If you want to access the virtuoso endpoint, uncomment the
virtuoso section in
All properties defined in
askomics.ini can be configured via the environment variables in
askomics.env. The environment variable should be prefixed with
ASKO_ and have a format like
ASKO_$SECTION_$KEY. $SECTION and $KEY are case sensitive. E.g. property
footer_message in the
askomics section should be configured as
ASKO_askomics_footer_message=Welcome to my AskOmics!.
ASKO_askomics_password_salt to random string
For more information about AskOmics configuration, see configuration section.
environment variables can also be used to create a user into AskOmics at first start. For this, use
CREATE_USER=true User information can be configured with the following environment variables:
USER_FIRST_NAME: User first name (default: Ad)
USER_LAST_NAME: User last name (default: Min)
USER_USERNAME: Username (default: admin)
USER_PASSWORD: Password (default: admin)
USER_EMAIL: User email (default: email@example.com)
USER_APIKEY: User API key (default: admin)
GALAXY_API_KEY: Galaxy URL linked to the user (optional)
GALAXY_URL: User Galaxy API Key (optional)
The user will be created only if the users table of the database is empty.