Connect AM and AtoM Docker Compose environments using a shared external volume and other tweaks needed to test and develop DIP uploads between both applications.
-
Setup both Docker Compose environments independently:
- Follow the documentation for AtoM.
- Follow the 'am/compose' readme for AM.
-
Create local folder and Docker volume:
mkdir -p /home/radda/.am/dip-uploads docker volume create \ --opt type=none \ --opt o=bind \ --opt device=/home/radda/.am/dip-uploads \ dip-uploads
-
Add volume to both docker-compose files:
- To the main volumes sections:
dip_uploads: external: name: dip-uploads
- To the volumes list of the
archivematica-mcp-client
andatom_worker
services:- dip_uploads:/tmp/dip-uploads
- To the main volumes sections:
-
Recreate containers (in both):
docker-compose up -d
-
Configure AtoM:
- Enable plugins:
- qtSwordPlugin
- arRestApiPlugin
- Change global setting:
- SWORD deposit directory: /tmp/dip-uploads
- Generate API key for 'demo' user:
- Admin/users/demo/edit/generate
- Enable plugins:
-
Restart AtoM worker (in AtoM):
docker-compose restart atom_worker
-
Configure DIP upload in AM (use your host IP):
- Upload URL: http://192.168.1.128:63001
- Login email: [email protected]
- Login password: demo
- AtoM/Binder version: 2.x
- Rsync target: /tmp/dip-uploads
- Rsync command: (empty)
- REST API key: (the one generated above)
-
Fetch levels of description from AtoM in AM for hierarchical DIP upload.
-
Avoid permissions issue (in AM):
docker-compose exec -u root archivematica-mcp-client \ chown -R archivematica:archivematica /tmp/dip-uploads
-
Upload.