Skip to content

Conversation

@fruch
Copy link
Contributor

@fruch fruch commented Jan 27, 2026

Replaced distro-specific Docker installation code with a unified bash script that properly installs docker-ce, docker-ce-cli, and containerd.io from Docker's official repository.

The new script:

  • Uses Docker's official GPG key with modern keyring management
  • Properly detects Debian/Ubuntu vs CentOS/RHEL systems
  • Dynamically handles PEP 668 --break-system-packages for pip
  • Installs docker-compose-plugin as part of the installation
  • Removes deprecated apt-key usage in favor of /etc/apt/keyrings

Testing

PR pre-checks (self review)

  • I added the relevant backport labels
  • I didn't leave commented-out/debugging code

Reminders

  • Add New configuration option and document them (in sdcm/sct_config.py)
  • Add unit tests to cover my changes (under unit-test/ folder)
  • Update the Readme/doc folder relevant to this change (if needed)

Replaced distro-specific Docker installation code with a unified bash script
that properly installs docker-ce, docker-ce-cli, and containerd.io from
Docker's official repository.

The new script:
- Uses Docker's official GPG key with modern keyring management
- Properly detects Debian/Ubuntu vs CentOS/RHEL systems
- Dynamically handles PEP 668 --break-system-packages for pip
- Installs docker-compose-plugin as part of the installation
- Removes deprecated apt-key usage in favor of /etc/apt/keyrings
@fruch fruch added the backport/none Backport is not required label Jan 27, 2026
…tart

Added Libssh2_UnexpectedExit exception handling to the monitoring
start process to prevent crashes when SSH library encounters
unexpected exits during scylla-monitoring startup
@fruch fruch added P3 Medium Priority test-provision-aws Run provision test on AWS test-provision-gce Run provision test on GCE cloud/azure test-provision-azure and removed cloud/azure labels Jan 27, 2026
@fruch fruch requested a review from a team February 1, 2026 08:29
@soyacz
Copy link
Contributor

soyacz commented Feb 2, 2026

Isn't this inified way of installation?:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

I don't see much diff in this PR vs current approach

@fruch
Copy link
Contributor Author

fruch commented Feb 2, 2026

Isn't this inified way of installation?:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

I don't see much diff in this PR vs current approach

it doesn't have wait_for_apt_lock,

regardless before this PR there were 4 different code flows on how to install, base on specific versions of distros.

could adapt it to use get-docker.sh, but in the past we moved away for all bunch of reasons (which I don't remember)

Refactored Docker installation script to use official get.docker.com
script instead of manual repository configuration. This approach is
more reliable and reduces maintenance overhead across platforms.

Changes include renaming functions for clarity and removing redundant
package installations. The installation now correctly separates system
packages from Docker installation, improving script modularity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport/none Backport is not required P3 Medium Priority test-provision-aws Run provision test on AWS test-provision-azure test-provision-gce Run provision test on GCE

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants