See the README in the Rails app for more information about the application.
We are working to support development in a new environment orchestrated by Taskfile. If there is a need, we will revive our original local Ruby and docker environment, but for now we are going to focus our efforts on this environment.
The development environment is based on Taskfile and Docker. task up creates Docker-in-Docker container that runs within it the application container and any related services.
-
Install Taskfile, via one of the supported package managers.
For Linux: Use installation instructions for your perferred package manager.
For Mac: Install via homebrew,
brew install go-task. -
Install Docker.
For Mac: Install Docker Desktop. While this is enough to get the application running, you should request membership to the Penn Libraries Docker Team license from the IT Helpdesk for full functionality.
For Linux: Install docker engine.
-
After installing Docker and Taskfile, move into the
.devdirectory:cd .dev -
Then, run a task to start up the environment:
task upWhen you first run a task command it will pull down a series of remote taskfiles, you'll need to answer
Yto accept the alert/s.While the task runs, it will ask you for your computer password to update the
/etc/hostsfile and for your LDAP credentials to pull down secrets from Hashicorp Vault. -
Once the environment has completed building, you'll be able to confirm the application is running by going to https://digitalcollections-dev.library.upenn.edu/.
-
Move to the next sections for more details on how to interact with the environment.
When the environment is running, you can run the following command to swap the docker context.
task docker:context:use:app
After swapping the docker context, you'll be able to interact with the containers locally as if you were with in the Docker-in-Docker container. Running commands like docker ps will display all the containers currently running in the environment.
When you are done you can change the context back to the default by running:
task docker:context:use:default
Once your environment is set up:
- Swap the docker context (see Interacting with Environment):
task docker:context:use:app - Start a shell in the
digital_collectionsapp container:docker exec -it digital_collections_digital_collections.1.{whatever} bash
See application README for more information on indexing sample records and testing.
- Rails Application
- Chrome (Browserless 2)
- Solr
- URL: http://digitalcollections-dev.library.upenn.int/solr
- Username:
admin - Password:
password
To destroy the environment and any data associated with it, run:
task destroy