User Tools

Site Tools


development:artifactory

Errigal Artifactory / Nexus Sonatype

Anna Dowling 2018/01/08 08:53Anthony 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:

  • The Artifactory server is hosted on our Waterford openstack.

Access:

  • The key for accessing this account can be found on dropbox in the following location:
  • ssh to the server via ssh ubuntu@10.91.133.220

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

  • sudo docker exec -u 0 -it nexus vi /opt/sonatype/nexus/bin/nexus.vmoptions
  • restart nexus sudo docker restart nexus

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)

  • on success run the df -h command and verify that the disk space is > 3G
    • /dev/nvme0n1p1 60G 53G 7.5G 88% /

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

  • Restart NXRM to pick up the property change.

Configure Cleanup Policy

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

development/artifactory.txt · Last modified: 2023/07/24 10:28 by bosowski