-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CentOS 7/RHEL 7 installations broken where $releasever is '7Server' #1111
Comments
This broke a bunch of deployments for us and caused much yak shaving today. I'd very much appreciate the |
Is this both on CentOS and RHEL machines? Does CentOS also set the |
I opened a PR with a workaround for our install script docker/docker-install#194 (but for manual installations, something similar will have to be done); If you're on RHEL7/CentOS7 and have this issue: for channel in "stable" "test" "nightly"; do \
yum-config-manager --setopt="docker-ce-${channel}.baseurl=https://download.docker.com/linux/centos/7/debug-\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-debuginfo.baseurl=https://download.docker.com/linux/centos/7/debug-\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-source.baseurl=https://download.docker.com/linux/centos/7/source/${channel}" --save; \
done If you're on RHEL8/CentOS8 and have this issue: for channel in "stable" "test" "nightly"; do \
yum-config-manager --setopt="docker-ce-${channel}.baseurl=https://download.docker.com/linux/centos/8/debug-\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-debuginfo.baseurl=https://download.docker.com/linux/centos/8/debug-\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-source.baseurl=https://download.docker.com/linux/centos/8/source/${channel}" --save; \
done |
I'm experiencing this on RHEL 7.7. Running your workaround @thaJeztah gives me:
|
@andrewbanchich The work-around only works if you are using the CentOS version of Docker on RHEL. Red Hat no longer supports Docker so many people switched to using the CentOS version of Docker on RHEL. Run the CentOS installation instructions on RHEL https://docs.docker.com/engine/install/centos/ One more thing. When switching to the Docker for CentOS watch out for #477 |
I am getting the following error after running the workaround to fix the broken repo link. sudo yum install docker-ce docker-ce-cli containerd.io Loaded plugins: langpacks, ulninfo |
@msbecker "ol7" is Oracle Linux 7. Can you please share the output of |
@mettacrawler I tried this on a clean RHEL 7.7 server and getting the same results. When I run the workaround, it outputs
followed by a bunch of vars to the console. Then I run the install command:
|
@andrewbanchich Did you follow these instructions? https://docs.docker.com/engine/install/centos/ Run the CentOS installation instructions on RHEL https://docs.docker.com/engine/install/centos/ One more thing. When switching to the Docker for CentOS watch out for #477 |
Yes, I followed those instructions and did exactly that. Is the workaround supposed to output those var settings to the console? |
Please try:
Then |
@mettacrawler After running both commands:
Update: If I do the follow then it works (again). Thanks @mettacrawler
|
@andrewbanchich I'm guessing you are stuck with RHEL 7.7 and can't switch to 7.8 for some reason, right? |
@mettacrawler Correct. Actually I need to use this on 7.6, but I didn't think there would be a huge difference between dot releases. |
Still pointing to wrong URL after running the fix from above. @mettacrawler |
Yeah, I had this same problem on a fresh RHEL 7.8 this afternoon. The workaround of changing the base paths resulted in yum install -y docker-ce docker-ce-cli containerd.io Loaded plugins: enabled_repos_upload, package_upload, product-id, search-disabled-repos, subscription-manager for me as well. |
We are using releasever 7.8. Regards. |
|
@mettacrawler |
Podman give you rootless (not using the root account to run) containers on RHEL 7 right now. Think about the security improvements. https://www.redhat.com/en/blog/rhel-78-and-final-update-container-tools |
Any news on this? |
On our side, we are building some docker image with docker inside (inception I know) and we would like not to have to edit repo file in our dockerfile. |
@tonton1728 If you need to install a CentOS |
Thank you @mettacrawler for the response. I will investigate Podman when I have a little breathing room. My Ansible below breaks on this last step (Install Docker CE) indicating:
Just to be clear, this is the replacement for commands? sudo yum install -y yum-utils Thank you, |
@jamesoc
With
|
Thank you very much @mettacrawler; I will give that a try. cheers! |
This issue was first mentioned on the Docker Community Formus on September 24, 2020. |
The fact that this isn't fixed yet makes me feel like Docker did this on purpose in retaliation to RH creating podman. and now innocent end users are being punished for it. stay classy every body. |
@gflcampos adding the CentOS repository may cause other RPMs to come from CentOS. A usable version of the First
For AWS see https://access.redhat.com/articles/4599971
For Azure:
For Oracle Linux 7
Then on any of them (see https://docs.docker.com/engine/install/centos/ for most of this.)
|
FYI, on RHEL it's |
It looks like the symlinks have been restored, however the webserver is now trying to serve a index.html when using the symlinked version of the url, so it doesn't look like it allows directory browsing on the symlinked URL's eg: Using the first link you now get:
|
yum doesn't need to "browse" the dirs, it uses predefined files. |
Fair, but its still broken when I trying and just do a yum list, so the perms must still be broken. [root@docdev01 ~]# yum list You can recreate the error without yum, just try with wget: |
Honestly I feel it's unacceptable that this 4 months old bug is still open. How long does it takes to do a symlink or a 301 http redirect on a web server? I mean this is admin level 0, so what is the technical challenge that need to be accomplished to solve this issue? None. Well, I feel this is the time to migrate away from Docker because all what we did is now broken (thanks by the way) and require us to workaround in the worst way. What is the point of automating everything if we can't reuse what has been done, isn't the Docker promise ? I don't feel breaking things is the correct way to do for the docker user base, but well, I feel there is a lots of politics behind this choice of not fixing this issue, and I don't feel comfortable with this anymore. Also I don't pay for any service/support so I shouldn't complain, but this bug is a very bad joke. |
I fixed the repo URl via:
according to this forum thread suggestions. Might help other fix temporary and get work done. |
lol.. still not fixed. I just ran into this error. |
haha! what a joke. long live containerd?! |
Wow! Since this is apparently not going to get fixed, it desperately needs to get added to the docs. (I lost a lot of time on this.) If the docs had just said:
(Tongue and cheek added since this is kind of depressing to have a redirect cause so much sadness.) |
@Vaccano Fast forward to Mar '21, this problem still exists. I am trying to install sudo yum install docker-ce docker-ce-cli containerd.io -y
Failed to set locale, defaulting to C
Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
amzn2-core | 3.7 kB 00:00:00
amzn2extra-docker | 3.0 kB 00:00:00
No package docker-ce available.
No package docker-ce-cli available.
No package containerd.io available.
Error: Nothing to do |
I got this error and come here, after fixing the broken repo, I got some other dependencies error afterward. Anyway, I installed it finally. If you failed to install docker on Oracle Linux 7.9 or CentOS 7.x ( coz they are alike), check this link: I wrote a script here, you can use the bash script to install it. |
Still a problem. wtf @docker |
@chaseduffin I think fixes were made for this; are you still running into this issue? What I just tried to reproduce the problem (quick check in a container); docker run -it --rm centos:7 Add the repository; yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo Set for channel in "stable" "test" "nightly"; do \
relver=7Server; \
yum-config-manager --setopt="docker-ce-${channel}.baseurl=https://download.docker.com/linux/centos/$relver/\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-debuginfo.baseurl=https://download.docker.com/linux/centos/$relver/debug-\$basearch/${channel}" --save; \
yum-config-manager --setopt="docker-ce-${channel}-source.baseurl=https://download.docker.com/linux/centos/$relver/source/${channel}" --save; \
done Verify that that worked correct, and that the repository now has yum repolist -v docker-ce-stable
...
Repo-id : docker-ce-stable/x86_64
Repo-name : Docker CE Stable - x86_64
Repo-status : enabled
Repo-revision: 1618226779
Repo-updated : Mon Apr 12 11:26:19 2021
Repo-pkgs : 112
Repo-size : 2.7 G
Repo-baseurl : https://download.docker.com/linux/centos/7Server/x86_64/stable/
Repo-expire : 21600 second(s) (last: Thu Apr 15 12:14:22 2021)
Filter : read-only:present
Repo-filename: /etc/yum.repos.d/docker-ce.repo Install docker-ce: yum install -y --quiet docker-ce
warning: /var/cache/yum/x86_64/7/base/packages/audit-libs-python-2.8.5-4.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for audit-libs-python-2.8.5-4.el7.x86_64.rpm is not installed
Public key for container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm is not installed
warning: /var/cache/yum/x86_64/7/docker-ce-stable/packages/docker-ce-20.10.6-3.el7.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 621e9f35: NOKEY
Public key for docker-ce-20.10.6-3.el7.x86_64.rpm is not installed
Public key for selinux-policy-3.13.1-268.el7_9.2.noarch.rpm is not installed
Importing GPG key 0xF4A80EB5:
Userid : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
Package : centos-release-7-9.2009.0.el7.centos.x86_64 (@CentOS)
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0x621E9F35:
Userid : "Docker Release (CE rpm) <docker@docker.com>"
Fingerprint: 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35
From : https://download.docker.com/linux/centos/gpg
setsebool: SELinux is disabled. Check that things were installed: docker --version
Docker version 20.10.6, build 370c289
dockerd --version
Docker version 20.10.6, build 8728dd2
containerd --version
containerd containerd.io 1.4.4 05f951a3781f4f2c1911b05e61c160e9c30eaa8e |
@docker guys should feel ashamed that this bug has been open for 4 months. Who is in charge of this issue? I got little solution about 404.
then work for me. |
closing as this should be fixed #1111 (comment) |
Issue still exists on CentOS 8. (CentOS Linux release 8.4.2105) sudo yum install docker-ce docker-ce-cli containerd.io
Followed the instructions: https://docs.docker.com/engine/install/centos/ |
Given the switch to CentOS Stream, I suspect this may not ever be fixed, at least not soon. |
@rindeastwood what does |
Still broken for me. OS details:
The solution mentioned here: https://forums.docker.com/t/docker-ce-stable-x86-64-repo-not-available-https-error-404-not-found-https-download-docker-com-linux-centos-7server-x86-64-stable-repodata-repomd-xml/98965/6 worked for me |
@johntiger1 we currently don't have packages for Amazon Linux on download.docker.com, so that's somewhat expected (but good to hear the workaround worked) |
NEVERMIND THE REPO FILE IS WORKING NOW. @thaJeztah this repo file is empty, I assume it should not be. It's causing
|
Expected behavior
yum install
is able to install docker-ce from the repo provided athttp://download.docker.com/linux/centos/docker-ce.repo
when the$releasever
variable is set to7Server
.Actual behavior
At some point in the last week, this has stopped working, and https://download.docker.com/linux/centos/7Server is now a 404. I suspect this coincides with the release of the CentOS 8 packages.
https://download.docker.com/linux/centos/7 still exists, but that is not the same
$releasever
and so the repo reference inhttp://download.docker.com/linux/centos/docker-ce.repo
is broken.Steps to reproduce the behavior
Attempt to install Docker from the provided CentOS/RHEL repo with an installation of CentOS/RHEL that has
7Server
set as the yumreleasever
.The text was updated successfully, but these errors were encountered: