Skip to content
Snippets Groups Projects

Development Guide

Overview

Workspaces' services run on Docker containers. These containers can be all started at once using Docker Compose.

Setup

Build the base image:

make docker-base

In the Makefile, this Docker command is run:

docker build -t marconi.aoc.nrao.edu/ops/base:workspaces -f Condaless.dockerfile.v2 .

This builds a local Docker image tagged as marconi.aoc.nrao.edu/ops/base:workspaces on your machine using the Condaless.dockerfile.v2 Dockerfile.

Once the image has been built, Docker will save this image on your machine. You do not need to run the make docker-base command again unless you delete this image or modify the Condaless.dockerfile.v2 Dockerfile.

Starting Workspaces

To start Workspaces as foreground process, run:

docker-compose -f docker-compose.local.yml up

To start Workspaces as background process, run:

docker-compose -f docker-compose.local.yml up -d

Stopping Workspaces

To stop Workspaces, run:

docker-compose -f docker-compose.local.yml down

Starting Individual Services

To start Workspaces as foreground process, run:

docker-compose -f docker-compose.local.yml up <service_name>

List Containers

To get a list of running containers:

docker container ls

Or:

docker ps

Show Container Logs

To output logs of a specific container:

docker logs <container_name>

To continuously tail logs of a specific container:

docker logs -f <container_name>

Open a Shell on a Running Container

Using Docker:

docker exec -it <container_name> bash

Using Docker Compose:

docker-compose exec <service_name> bash

Run a command on a Running Container

Using Docker:

docker exec <container_name> pwd

Using Docker Compose:

docker-compose exec <service_name> pwd