Nexus 3.63.0 OSS UnsupportedHttpSchemeException: Unsupported HTTP Scheme: https - Sonatype Nexus Repository - Sonatype Community

Nexus 3.63.0 OSS UnsupportedHttpSchemeException: Unsupported HTTP Scheme: https

post by Alex_Malyshkin on May 22, 2025

Alex Malyshkin

I have configured Nexus 3 in docker-compose with HTTPS support, webUI opens in the browser as https://nexus.mycompany.com:8443

here is my jetty-https.xml file:

<?xml version="1.0"?>
<Configure class="org.eclipse.jetty.server.Server">
  <Call name="addConnector">
    <Arg>
      <New class="org.eclipse.jetty.server.connector.SelectChannelConnector">
        <Arg><New class="org.eclipse.jetty.http.HttpConfiguration">
          <Set name="securePort">8443</Set>
          <Set name="outputBufferSize">32768</Set>
          <Call name="addCustomizer">
            <Arg>
              <New class="org.eclipse.jetty.server.SecureRequestCustomizer"/>
            </Arg>
          </Call>
        </New></Arg>
        <Arg><New class="org.eclipse.jetty.util.ssl.SslContextFactory">
          <Set name="keyStore">/opt/sonatype/nexus/etc/ssl/keystore.jks</Set>
          <Set name="keyStorePassword">changeit</Set>
          <Set name="keyManagerPassword">changeit</Set>
          <Set name="needClientAuth">false</Set>
          <Set name="wantClientAuth">false</Set>
          <Set name="excludeCipherSuites">
            <Array type="java.lang.String">
              <Item>SSLv3</Item>
            </Array>
          </Set>
        </New></Arg>
        <Set name="port">8443</Set>
      </New>
    </Arg>
  </Call>
</Configure>

here is my nexus.properties file:

application-port-ssl=8443
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-https.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/

My docker-compose.yaml:

services:
  nexus:
    image: sonatype/nexus3:3.63.0
    container_name: nexus
    restart: unless-stopped
    ports:
      - "8443:8443"
      - "9443:9443"
    volumes:
      - /srv/nexus/nexus-data:/nexus-data
      - /srv/nexus/conf/nexus.properties:/nexus-data/etc/nexus.properties
      - /srv/nexus/conf/jetty-https.xml:/opt/sonatype/nexus/etc/jetty/jetty-https.xml
      - /srv/nexus/certs/keystore.jks:/opt/sonatype/nexus/etc/ssl/keystore.jks
    environment:
      - INSTALL4J_ADD_VM_PARAMS=-Xms2703m -Xmx2703m -XX:MaxDirectMemorySize=2703m -Dssl.etc=/opt/sonatype/nexus/etc/ssl
    ulimits:
      nofile:
        soft: 65536
        hard: 65536

but when I’m trying to create docker repository it has URL http://nexus.mycompany.com:8443

I’ve tried to user HTTPS Port Connector 9443 for this repo, but got an error in log

2025-05-21 09:57:07,347+0000 WARN [FelixStartLevel] *SYSTEM org.sonatype.nexus.repository.docker.internal.DockerConnectorFacetImpl - Could not configure https connector on port 5001 for docker repository quay-proxy
org.sonatype.nexus.bootstrap.jetty.UnsupportedHttpSchemeException: Unsupported HTTP Scheme: https

I’ve tried to add connector section in jetty-https.xml for 9443 in addition to 8443 but had same error.

How can I set HTTPS connector for my docker repo without reverse proxy?

I found in documentation https://support.sonatype.com/hc/en-us/articles/213558568-Could-not-configure-HTTPS-connector-for-Docker-repository

Docker registries are required to use HTTPS. This message means that you have not configured Jetty with a keystore from which it can load a TLS certificate for the Docker HTTPS connectors.

But I have properly configured Jetty with keystore. Can you help me with this problem?