EL7 Extras contain docker and the things to make it work, including several golang-* RPMs.
It seems that the golang addon packages (golang-github-coreos-go-systemd-0-0.4.git9d69345.el7.src.rpm, golang-github-godbus-dbus-0-0.1.gitcb98efb.el7.src.rpm, golang-github-gorilla-context-0-0.22.git708054d.el7.src.rpm, golang-github-gorilla-mux-0-0.11.gite718e93.el7.src.rpm, golang-github-kr-pty-0-0.19.git98c7b80.el7.src.rpm, golang-github-syndtr-gocapability-0-0.5.git3454319.el7.src.rpm, golang-googlecode-net-0-0.12.hg84a4013f96e0.el7.src.rpm, golang-googlecode-sqlite-0-0.9.hg74691fb6f837.el7.src.rpm) were built before the final golang-1.2.1-3.el7.src.rpm that is in git.centos.org.
We have seen in the past where Red Hat uses interim staged packages that are older (and not published) in their build systems for development, and that the released SRPMs build on those older staged packages but not the released ones. As I said, we have seen this in the past and it was one of the main reasons that we could not get all of CentOS-6.0 to build properly before.
So, how this is relevant now is that several of those addon golang packages (and docker) do not build with the RPMs provided by building golang-1.2.1-3.el7.src.rpm. After talking with the golang maintainer and some people who worked on the golang and docker packages via email, while I could not look inside the build trees (we don't have access to any of that for RHEL products), I did get conformation that the packages in EL7 extras were built on older versions of golang that 1.2.1-3 and that golang-1.2.1-3 is in the middle of a process to transition things to a new set of packages instead of most things directly in the one main RPM.
I was also pointed to golang.el7 rpms here as potential versions that would work:
http://koji.fedoraproject.org/koji/packageinfo?packageID=16224
The greatest specific version of golang required to build the packages of EL7 Extras (docker-0.11.1-19.el7.src.rpm) is golang >= 1.2-7 (see the spec file for the golang BuildRequires):
https://git.centos.org/blob/rpms!docker.git/b28b51e15aa6779281060b1e61368d94...
So, looking for golang-1.2-7.el7 put me here:
http://koji.fedoraproject.org/koji/buildinfo?buildID=499629
I downloaded that SRPM (golang-1.2-7.el7.src.rpm) and built it into c7-extras instead of the 1.2.1-3 version and then rebuilt all the other golang-* SRPMs from git.centos.org into c7-extras as well. They all built OK against golang 1.2-7. I then built all the other things that are in EL7 Extras into c7-extras and the final result is here:
http://buildlogs.centos.org/c7-extras/
Here is a bug filed on this issue for reference:
http://bugs.centos.org/view.php?id=7252
So, the short summary is, please test the c7-extras in the buildlogs repo ... it has the same version of packages built from git.centos.org except for golang, where I had to get version 1.2-7 from EPEL. All the SRPMs, buildlogs, mock configs, etc used are available for review from the buildlogs.centos.org link above.
Lets get this tested and it is certainly considered a test build. Hopefully newer versions of everything will be out soon so we can build / use the RHEL version of golang and we are likely not to officially release these packages until then, although if these packages work for you feel free to use them.
Thanks, Johnny Hughes