{"id":16288862,"url":"https://github.com/juliogonzalez/sonatype-nexus-openshift","last_synced_at":"2025-03-20T03:30:43.577Z","repository":{"id":80465903,"uuid":"51669283","full_name":"juliogonzalez/sonatype-nexus-openshift","owner":"juliogonzalez","description":"Sonatype Nexus (2.x and 3.x) on OpenShift","archived":false,"fork":false,"pushed_at":"2017-08-03T21:33:48.000Z","size":11,"stargazers_count":14,"open_issues_count":0,"forks_count":10,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-28T22:49:11.794Z","etag":null,"topics":["jetty","nexus","openshift"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juliogonzalez.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-02-13T22:42:48.000Z","updated_at":"2021-05-13T13:22:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"25a978f4-6201-49a3-9102-e3d6060ca90c","html_url":"https://github.com/juliogonzalez/sonatype-nexus-openshift","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliogonzalez%2Fsonatype-nexus-openshift","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliogonzalez%2Fsonatype-nexus-openshift/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliogonzalez%2Fsonatype-nexus-openshift/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliogonzalez%2Fsonatype-nexus-openshift/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juliogonzalez","download_url":"https://codeload.github.com/juliogonzalez/sonatype-nexus-openshift/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244047628,"owners_count":20389206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jetty","nexus","openshift"],"created_at":"2024-10-10T19:49:35.190Z","updated_at":"2025-03-20T03:30:43.572Z","avatar_url":"https://github.com/juliogonzalez.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://jenkins.juliogonzalez.es/buildStatus/icon?job=sonatype-nexus3-openshift-build)](https://jenkins.juliogonzalez.es/job/sonatype-nexus3-openshift-build)\n\n**IMPORTANT:** These are instructions for Nexus 3.x. See [Nexus 2.x branch](https://github.com/juliogonzalez/sonatype-nexus-openshift/tree/nexus-2.x) to deploy Nexus 2.x \n\n**WARNING:** It is [not possible to migrate Nexus 2.x to Nexus 3.x](http://www.sonatype.org/nexus/2016/04/06/spring-into-the-future-nexus-repository-manager-3-0-release/) at this moment. If you deploy this branch to a current 2.x cartridge, Nexus 3.x will be deployed, but config and contents won't be migrated.\n\nNexus 3.x on OpenShift\n======================\n\nThis repository will deploy [Sonatype Nexus](http://www.sonatype.org/nexus/) to [Openshift](https://www.openshift.com/).\n\nIt is a variation of other solutions that use Tomcat (not recommended anymore as Nexus War is [deprecated](https://support.sonatype.com/hc/en-us/articles/213465668-Where-is-the-Nexus-OSS-war-file-)), archiving binaries at the repository itself, or starting/stopping services without control.\n\nIn this case the official jetty bundle distribution is used, no binaries are archived at the repository, and start/stop are controlled and report errors when needed.\n\nNo configuracion files are changed, as all configuration is made using environment variables. The only sensible difference is that Nexus is started calling directly to jetty to avoid using jsw, as jsw tries to bind to some TCP ports in a way not allowed by OpenShift.\n\nI decided not to upgrade jsw (and setup wrapper.backend.type=PIPE) to use only the official Sonatype solution.\n\nHow to deploy\n=============\n\nCreate an OpenShift account\n---------------------------\n\nIf you do not have an OpenShift account, you can create one at http://openshift.redhat.com/\n\nCreate a DIY application\n------------------------\n\nSecond step is creating a new DIY (Do It Yourself) application.\n\nYou can do it by using the CLI and running:\n```\nrhc app-create nexus diy-0.1 --from-code https://github.com/juliogonzalez/sonatype-nexus-openshift.git#REF\n```\nReplace **REF** with **master** if you want latest 3.x version available, or use a Nexus 3.x tag\n\nOr at the web interface:\n\n[https://openshift.redhat.com/app/console/applications](https://openshift.redhat.com/app/console/applications)\n\nAnd specifying https://github.com/juliogonzalez/sonatype-nexus-openshift.git at *Source Code*.\n\nAt *Branch/Tag* field specify **master** branch or a Nexus 3.x tag.\n\nWait until the app is deployed\n------------------------------\n\nAfter some time, your Nexus will be availabe at:\n\n[https://$yourcartridgename-$yournamespace.rhcloud.com/](https://$yourcartridgename-$yournamespace.rhcloud.com/)\n\nThe default nexus user is admin/admin123. Remember to change it!\n\nHow to upgrade\n==============\n\nFirst, make a backup of the *${HOME}/app-root/data/data/* directory, just in case, and read Nexus relase notes, available at their website.\n\nGrab the GIT URL for your application, from the web console or using CLI, and clone the repository.\n\nSwitch to your local cloned repository, and add a new remote pointing to my repository:\n```\ngit remote add upstream https://github.com/juliogonzalez/sonatype-nexus-openshift.git\n``` \nPull the changes, my changes will prevail over yours. Be sure you replace **REF** with **master** for latest 3.x version, or with a Nexus 3.x tag:\n```\ngit pull -s recursive -X theirs upstream REF\n```\nAnd, finally, push to your instance:\n```\ngit push\n```\nThe upgrade will be ready in a few minutes.\n\nWhen it is completed and you can verify everything is correct, you can remove the old nexus folder from the server, located at *${HOME}/app-root/data/*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliogonzalez%2Fsonatype-nexus-openshift","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuliogonzalez%2Fsonatype-nexus-openshift","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliogonzalez%2Fsonatype-nexus-openshift/lists"}