Skip to content

Latest commit

 

History

History

docker

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Galaxy Docker example deployment

If you are running Docker on OSX (Mac), first see the related subheading below. Ensure docker can be run without root privileges. Change the current working directory to /deployment/docker (the path containing this read-me). Modify ./changeme.auto.tfvars with any custom values you like. You must at least set the docker_gid variable to a group id with write access to /var/run/docker.sock. Run stat /var/run/docker.sock (or stat -x /var/run/docker.sock on OSX) to show the owning group id.

Run the following to start an instance on your local computer using docker:

terraform init
./deploy.sh

Browse to http://localhost:8000/ to access the deployment.

To shut down this instance, run ./destroy.sh. This will delete the instance, all of its data, and the container images.

OSX Peculiarities

OSX does not natively support Docker, it runs Docker within a Linux virtual machine. This workaround means that support is limited to only the most basic use case. The following needs to be added to changeme.auto.tfvars:

docker_gid = 0
docker_socket_path = "/run/host-services/docker.proxy.sock"

The last modification you need to make is to allow group write access to the docker socket within containers. To do this run the following:

docker run --rm -v /run/host-services/docker.proxy.sock:/run/host-services/docker.proxy.sock alpine chmod g+w /run/host-services/docker.proxy.sock

This command must be run any time you restart your system, before you can run deploy.sh or submit analysis. See docker/for-mac#3431 for more information about the issue.

Appropriate resources must be allocated to the Docker VM or OSX will randomly kill the application and tools during an analysis. A minimum of 8GB of RAM and 16GB of swap space is required. It is recommended to provide as much swap space as possible to avoid out of memory issues.

Providers

No providers.

Modules

Name Source Version
admin_user ../../modules/bootstrap_admin n/a
galaxy ../../destinations/docker n/a

Inputs

Name Description Type Default Required
debug Enabling will put the deployment into a mode suitable for debugging bool n/a yes
docker_gid GID with write permission to /var/run/docker.sock number n/a yes
docker_socket_path Host path to docker socket string "/var/run/docker.sock" no
email Email address to send automated emails from string n/a yes
host_port Host port to expose galaxy service number n/a yes
instance Unique deployment instance identifier string n/a yes
microbedb_mount_path Path on host to mount microbedb to share with jobs string "./microbedb/mount" no
worker_replicas Number of worker replicas number 1 no

Outputs

Name Description
galaxy_admin_api_key Galaxy admin api key
galaxy_admin_password Galaxy admin password
galaxy_admin_username Galaxy admin username
galaxy_endpoint Galaxy front-end endpoint
galaxy_master_api_key Galaxy master api key

Resources

No resources.