Hello,

$SUBJECT – Is it possible to access the SDK repositories inside a Docker container?

What I have tried so far:

  • Installed sle2docker, sles11sp3-docker-image, activated sles11sp3-docker.x86_64-1.0.0-Build6.1 with sle2docker
  • zypper lr inside the container lists the following repositories:
    Code:
    #  zypper lr
    Refreshing service 'container-suseconnect'.
    #  | Alias                                             | Name                                          | Enabled | Refresh
    ---+---------------------------------------------------+-----------------------------------------------+---------+--------
     1 | container-suseconnect:SLE11-Public-Cloud-Module   | SLE11-Public-Cloud-Module for sle-11-x86_64   | No      | Yes
     2 | container-suseconnect:SLE11-SP1-Debuginfo-Pool    | SLE11-SP1-Debuginfo-Pool for sle-11-x86_64    | No      | No
     3 | container-suseconnect:SLE11-SP1-Debuginfo-Updates | SLE11-SP1-Debuginfo-Updates for sle-11-x86_64 | No      | Yes
     4 | container-suseconnect:SLE11-SP2-Debuginfo-Core    | SLE11-SP2-Debuginfo-Core for sle-11-x86_64    | No      | No
     5 | container-suseconnect:SLE11-SP2-Debuginfo-Updates | SLE11-SP2-Debuginfo-Updates for sle-11-x86_64 | No      | Yes
     6 | container-suseconnect:SLE11-SP3-Debuginfo-Pool    | SLE11-SP3-Debuginfo-Pool for sle-11-x86_64    | No      | No
     7 | container-suseconnect:SLE11-SP3-Debuginfo-Updates | SLE11-SP3-Debuginfo-Updates for sle-11-x86_64 | No      | Yes
     8 | container-suseconnect:SLE11-Security-Module       | SLE11-Security-Module for sle-11-x86_64       | No      | Yes
     9 | container-suseconnect:SLES11-Extras               | SLES11-Extras for sle-11-x86_64               | No      | Yes
    10 | container-suseconnect:SLES11-SP1-Pool             | SLES11-SP1-Pool for sle-11-x86_64             | No      | No
    11 | container-suseconnect:SLES11-SP1-Updates          | SLES11-SP1-Updates for sle-11-x86_64          | No      | Yes
    12 | container-suseconnect:SLES11-SP2-Core             | SLES11-SP2-Core for sle-11-x86_64             | No      | No
    13 | container-suseconnect:SLES11-SP2-Extension-Store  | SLES11-SP2-Extension-Store for sle-11-x86_64  | No      | Yes
    14 | container-suseconnect:SLES11-SP2-Updates          | SLES11-SP2-Updates for sle-11-x86_64          | No      | Yes
    15 | container-suseconnect:SLES11-SP3-Extension-Store  | SLES11-SP3-Extension-Store for sle-11-x86_64  | No      | Yes
    16 | container-suseconnect:SLES11-SP3-Pool             | SLES11-SP3-Pool for sle-11-x86_64             | Yes     | No
    17 | container-suseconnect:SLES11-SP3-Updates          | SLES11-SP3-Updates for sle-11-x86_64          | Yes     | Yes
  • zypper pd shows the following:
    Code:
    #  zypper pd
    Refreshing service 'container-suseconnect'.
    Loading repository data...
    Reading installed packages...
    S | Repository                           | Internal Name           | Name                                       | Version    | Arch   | Is Base
    --+--------------------------------------+-------------------------+--------------------------------------------+------------+--------+--------
    i | @System                              | SUSE_SLES               | SUSE Linux Enterprise Server 11 SP3        | 11.3-1.140 | x86_64 | Yes
    v | SLES11-SP3-Pool for sle-11-x86_64    | SUSE_SLES               | SUSE Linux Enterprise Server 11 SP3        | 11.3-1.138 | x86_64 | No
    v | SLES11-SP3-Updates for sle-11-x86_64 | SUSE_SLES               | SUSE Linux Enterprise Server 11 SP3        | 11.3-1.201 | x86_64 | No
      | SLES11-SP3-Updates for sle-11-x86_64 | SUSE_SLES-SP4-migration | SUSE_SLES Service Pack 4 Migration Product | 11.3-1.4   | x86_64 | No
  • Using the curses GUI of YaST2 is not feasible in this situation, because it is not reproducible in a dockerfile. Also, the curses GUI is broken when running yast2 inside a shell spawned by
    Code:
    docker run -ti suse/sles11sp3 bash
  • I have tried following the guide at https://www.novell.com/support/kb/doc.php?id=7015337 without success – suse_register fails, because apparently, it is unable to pick up the subscription credentials provided to the container from the host system by the hackery that activates in zypper automatically.


Obviously, the subscription active on the host system includes the “SUSE Linux Enterprise Software Development Kit 11 SP3” extension (according to https://scc.suse.com/).

Is there a way to enable the SDK repository in a container? Is there also a way that doesn't rely on using any kind of GUIs, i.e. entirely scriptable?