Errigal Artifactory / Nexus Sonatype
— Anna Dowling 2018/01/08 08:53
— Anthony Ryan 2023/02/03
This article outlines basic server access details for artifactory.
new artifactory at http://artifactory.errigal.com is run as a Nexus docker container via docker-compose.yml file, located at ubuntu@10.91.133.220:/home/ubuntu/docker/nexus/docker-compose.yml
docker compose up -d
Stopped using
docker compose down
restarts are done via
docker compose down; docker compose up
Location:
Access:
URL:
Out of Space Issues
If the nexus server drops below 4G you will see in the logs the DB has moved to read only
The only known approach so far is
login to the docker container as root sudo docker exec -u 0 -it nexus /bin/bash
edit the nexus.vmoptions file located in cd /opt/sonatype/nexus/bin/
or vi /opt/sonatype/nexus/bin/nexus.vmoptions
add or uncomment the following line -Dstorage.diskCache.diskFreeSpaceLimit=1024
exit docker bash
restart nexus sudo docker restart nexus
the Nexus is now in an editable state and artifacts can be removed in an effort to claim back space
Cheats approach
* edit file and remove # from last line
Once you have deleted number of artifacts, (start with largest first, to get going) you must run the Compact Blob store task to reduce space
Go to the tasks list under the Admin tab (you must be logged in)
run the Compact process, as its only set to weekly due to length of execution
This may affect the artifactory being written to (it has performance implications)
Enable Admin Execute Script
Nexus allows the execution of groovy scripts on the repo, which is useful to find largest files etc
but this must be enabled
Reference Sonatype Support page
Edit $data-dir/etc/nexus.properties.
Add the following on a new line, making sure the file is saved with an ending new line and with the original file permissions:
nexus.scripts.allowCreation=true
The artifactory needs to ensure that older redundant builds are periodically cleaned out, otherwise it will quickly fill up. SnmpManager is a large war file on its own.
To do this we use the Clean Up Policy Manager, example configuration deletes after 15 days