RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1325388 - [extras-rhel-7.2.4] include "docker-latest" as new package in RHEL 7.2
Summary: [extras-rhel-7.2.4] include "docker-latest" as new package in RHEL 7.2
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: docker-latest
Version: 7.2
Hardware: Unspecified
OS: Unspecified
medium
unspecified
Target Milestone: rc
: ---
Assignee: Lokesh Mandvekar
QA Contact: atomic-bugs@redhat.com
URL:
Whiteboard:
Depends On: 1265195 1325441 1325481
Blocks: docker-1.10
TreeView+ depends on / blocked
 
Reported: 2016-04-08 16:25 UTC by Laurie Friedman
Modified: 2016-05-12 14:54 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of: 1261613
Environment:
Last Closed: 2016-05-12 14:54:37 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHEA-2016:1057 0 normal SHIPPED_LIVE new packages: docker-latest 2016-05-12 18:51:24 UTC

Description Laurie Friedman 2016-04-08 16:25:56 UTC
Description of problem:
Need to create a new package for RHEL Extras 7.2 called "docker-latest" that will be used for "multi-docker" support where 2 versions of docker can be supported in a RHEL release.  The version to use is selected during installation. Initial support for multi-docker is planned for 7.2.4.

Comment 2 Alex Jia 2016-04-11 03:08:32 UTC
At present, we still can't support multi-docker environment, the details as follows.

1. installation conflicts with docker

# rpm -ivh docker-latest-1.10.3-7.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
	file /usr/share/rhel/secrets from install of docker-latest-1.10.3-7.el7.x86_64 conflicts with file from package docker-1.9.1-28.el7.x86_64

2. error dependencies

# rpm -qRp docker-latest-logrotate-1.10.3-7.el7.x86_64.rpm|grep docker
docker = 1.10.3-7.el7

# rpm -qRp docker-latest-novolume-plugin-1.10.3-7.el7.x86_64.rpm|grep docker
docker = 1.10.3-7.el7

NOTE: the dependent package should be docker-latest I think.

Comment 3 Lokesh Mandvekar 2016-04-11 04:59:55 UTC
(In reply to Alex Jia from comment #2)
> At present, we still can't support multi-docker environment, the details as
> follows.
> 
> 1. installation conflicts with docker
> 
> # rpm -ivh docker-latest-1.10.3-7.el7.x86_64.rpm 
> Preparing...                          #################################
> [100%]
> 	file /usr/share/rhel/secrets from install of
> docker-latest-1.10.3-7.el7.x86_64 conflicts with file from package
> docker-1.9.1-28.el7.x86_64

...working on this one...

> 
> 2. error dependencies
> 
> # rpm -qRp docker-latest-logrotate-1.10.3-7.el7.x86_64.rpm|grep docker
> docker = 1.10.3-7.el7
> 
> # rpm -qRp docker-latest-novolume-plugin-1.10.3-7.el7.x86_64.rpm|grep docker
> docker = 1.10.3-7.el7
> 
> NOTE: the dependent package should be docker-latest I think.

fixed in next release (1.10.3-8)

Comment 4 Alex Jia 2016-04-11 15:53:29 UTC
Lokesh, the dependent package name is okay now, but the installation conflicts still exist on docker-latest-1.10.3-8 w/ docker-1.9.1-28.

# rpm -qRp docker-latest-logrotate-1.10.3-8.el7.x86_64.rpm | grep docker
docker-latest = 1.10.3-8.el7

# rpm -qRp docker-latest-logrotate-1.10.3-8.el7.x86_64.rpm | grep docker
docker-latest = 1.10.3-8.el7


# rpm -ivh docker-latest-1.10.3-8.el7.x86_64.rpm 
Preparing...                          ################################# [100%]
	file /usr/share/rhel/secrets from install of docker-latest-1.10.3-8.el7.x86_64 conflicts with file from package docker-1.9.1-28.el7.x86_64

Comment 5 Alex Jia 2016-04-12 03:41:09 UTC
Lokesh, for now, I can successfully install docker-latest related RPM packages from your provided yum repo, but it still exists some questions.

1. docker-latest service can't be started immediately for the first time

# systemctl is-active docker
active

# docker version
Client:
 Version:         1.9.1
 API version:     1.21
 Package version: docker-1.9.1-28.el7.x86_64
 Go version:      go1.4.2
 Git commit:      b795b73/1.9.1
 Built:           
 OS/Arch:         linux/amd64

Server:
 Version:         1.9.1
 API version:     1.21
 Package version: docker-1.9.1-28.el7.x86_64
 Go version:      go1.4.2
 Git commit:      b795b73/1.9.1
 Built:           
 OS/Arch:         linux/amd64

# docker-latest info
Error response from daemon: client is newer than server (client API version: 1.22, server API version: 1.21)

# systemctl start docker-latest
# systemctl is-active docker-latest
inactive

# systemctl status docker-latest
● docker-latest.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker-latest.service; disabled; vendor preset: disabled)
   Active: inactive (dead) since Tue 2016-04-12 11:03:34 CST; 45s ago
     Docs: http://docs.docker.com
  Process: 125562 ExecStart=/bin/sh -c /usr/bin/docker-latest daemon            --exec-opt native.cgroupdriver=systemd            -g /var/lib/docker-latest            $OPTIONS            $DOCKER_STORAGE_OPTIONS            $DOCKER_NETWORK_OPTIONS            $INSECURE_REGISTRY            2>&1 | /usr/bin/forward-journald -tag docker-latest (code=exited, status=0/SUCCESS)
 Main PID: 125562 (code=exited, status=0/SUCCESS)

Apr 12 11:03:34 dell-per630-02.qe.lab.eng.nay.redhat.com systemd[1]: Starting Docker Application Container Engine...
Apr 12 11:03:34 dell-per630-02.qe.lab.eng.nay.redhat.com forward-journal[125564]: Forwarding stdin to journald using Priority Informational and tag docker-latest
Apr 12 11:03:34 dell-per630-02.qe.lab.eng.nay.redhat.com forward-journal[125564]: time="2016-04-12T11:03:34.443058356+08:00" level=fatal msg="Error starting daemon: pid file found, ensure docker is not running or delete /...n/docker.pid"
Apr 12 11:03:34 dell-per630-02.qe.lab.eng.nay.redhat.com systemd[1]: Started Docker Application Container Engine.


NOTE: in fact, the docker-latest service will be running when you waited for a while, well, I saw the running docker service is stopped, maybe, it will take some time, it means users will not connect docker-latest service sometime.

# systemctl status docker-latest | grep docker
● docker-latest.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker-latest.service; disabled; vendor preset: disabled)
     Docs: http://docs.docker.com
   CGroup: /system.slice/docker-latest.service
           ├─125927 /bin/sh -c /usr/bin/docker-latest daemon            --exec-opt native.cgroupdriver=systemd            -g /var/lib/docker-latest            $OPTIONS            $DOCKER_STORAGE_OPTIONS            $DOCKER_NETWORK_OPTIONS            $INSECURE_REGISTRY            2>&1 | /usr/bin/forward-journald -tag docker-latest
           ├─125928 /usr/bin/docker-latest daemon --exec-opt native.cgroupdriver=systemd -g /var/lib/docker-latest
           └─125929 /usr/bin/forward-journald -tag docker-latest
Apr 12 11:16:03 dell-per630-02.qe.lab.eng.nay.redhat.com forward-journal[125929]: time="2016-04-12T11:16:03.982234853+08:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to set a preferred IP address"
Apr 12 11:16:04 dell-per630-02.qe.lab.eng.nay.redhat.com forward-journal[125929]: time="2016-04-12T11:16:04.252745138+08:00" level=info msg="API listen on /var/run/docker.sock"

# systemctl is-active docker
inactive


2. docker service can't coexist w/ docker-latest service 

when we start new docker-latest service, the previous running docker service will be stopped, and in fact, the docker-latest service also can't be successfully due to /var/run/docker.pid exists.

# systemctl status docker-latest -l

<ignore .../>

Apr 12 11:28:22 dell-per630-02.qe.lab.eng.nay.redhat.com forward-journal[127502]: time="2016-04-12T11:28:22.926635749+08:00" level=fatal msg="Error starting daemon: pid file found, ensure docker is not running or delete /var/run/docker.pid"

NOTE: if it's a production environment, many containers are running w/ docker service, it will be destructive.


3. rpmlint complains some errors

# rpmlint docker-latest | grep E
docker-latest.x86_64: E: non-standard-dir-perm /usr/share/rhel/secrets 0750L
docker-latest.x86_64: E: non-executable-script /usr/share/bash-completion/completions/docker-latest 0644L /bin/bash
docker-latest.x86_64: E: script-without-shebang /usr/lib/udev/rules.d/80-docker-latest.rules

# rpmlint docker-latest-logrotate | grep E
docker-latest-logrotate.x86_64: E: description-line-too-long C This package installs cron job to run logrotate on Docker containers. logrotate is assumed to be installed on

# rpmlint docker-latest-novolume-plugin | grep E
docker-latest-novolume-plugin.x86_64: E: description-line-too-long C filling the entire storage space on a server. One solution to this is to deny users
docker-latest-novolume-plugin.x86_64: E: description-line-too-long C from running images with volumes. This way the only storage a user gets can be limited

Comment 6 Alex Jia 2016-04-12 03:55:34 UTC
4. the previous exists docker images will be not recognized when install and start docker-latest service

# systemctl is-active docker
active

# systemctl is-active docker-latest
inactive

# docker images
REPOSITORY                                            TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
docker.io/openshift/origin-docker-registry            latest              cc7e0d0f9747        24 hours ago        341.7 MB
docker.io/openshift/origin                            latest              aebdd7ec4bac        24 hours ago        543.7 MB
docker.io/cockpit/kubernetes                          latest              b08afbeca0fb        4 days ago          236 MB
docker.io/projectatomic/atomic-registry-quickstart    latest              6ae6a41dc6a4        11 days ago         543.7 MB
centos_label                                          latest              8b6b2421fd83        9 weeks ago         196.6 MB
httpd-atomic                                          latest              747646c0f4e5        9 weeks ago         460 MB
docker.io/busybox                                     latest              b175bcb79023        12 weeks ago        1.114 MB
docker.io/fedora                                      latest              3fc68076e184        3 months ago        206.3 MB
docker.io/centos                                      latest              c8a648134623        3 months ago        196.6 MB

# systemctl start docker-latest
# systemctl is-active docker-latest
active

# systemctl is-active docker
inactive

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

# docker-latest images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE


5. incorrect Server Package version 

# systemctl is-active docker
inactive

# systemctl is-active docker-latest
active

# docker-latest version
Client:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-1.9.1-28.el7.x86_64
 Go version:      go1.4.2
 Git commit:      36da459/1.10.3
 Built:           
 OS/Arch:         linux/amd64

Server:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-1.9.1-28.el7.x86_64  <-- it should be docker-latest-1.10.3-9.el7.x86_64
 Go version:      go1.4.2
 Git commit:      36da459/1.10.3
 Built:           
 OS/Arch:         linux/amd64

Comment 8 Lokesh Mandvekar 2016-04-19 05:40:31 UTC
fixes are coming for some of it..

Comment 9 Alex Jia 2016-04-29 10:17:09 UTC
# rpm -q docker docker-latest
docker-1.9.1-38.el7.x86_64
docker-latest-1.10.3-19.el7.x86_64

# systemctl is-active docker-latest
active

# docker version
Client:
 Version:         1.9.1
 API version:     1.21
 Package version: docker-common-1.9.1-38.el7.x86_64
 Go version:      go1.4.2
 Git commit:      639e055/1.9.1
 Built:           
 OS/Arch:         linux/amd64

Server:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.9.1-38.el7.x86_64
 Go version:      go1.4.2
 Git commit:      7fd4fb0/1.10.3
 Built:           
 OS/Arch:         linux/amd64

# docker-latest version
Client:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.9.1-38.el7.x86_64
 Go version:      go1.4.2
 Git commit:      7fd4fb0/1.10.3
 Built:           
 OS/Arch:         linux/amd64

Server:
 Version:         1.10.3
 API version:     1.22
 Package version: docker-common-1.9.1-38.el7.x86_64
 Go version:      go1.4.2
 Git commit:      7fd4fb0/1.10.3
 Built:           
 OS/Arch:         linux/amd64

Comment 11 errata-xmlrpc 2016-05-12 14:54:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-1057.html


Note You need to log in before you can comment on or make changes to this bug.