In the latest release of Red Hat Enterprise Linux (RHEL) 8, the legacy yum (Yellowdog Updater Modifier) has been replaced by Fedora package manager i.e. dnf (Dandified yum). Although, yum command is still available for backward compatibility, but it is actually an alias that is redirecting to dnf command.

In RHEL 8, there are two package repositories:

BaseOS: BaseOS repository have all underlying OS packages like OS installation packages (Core Packages), administrative tools packages and their dependencies.

Application Stream: AppStream repository has all application related packages, developer tools and databases etc. It provides all the applications you might want to run.

Copy BaseOS and AppStream folders from DVD to a local folder (use can use this with DVD iso file as well)

eg. root/dump/BaseOS and root/dump/AppStream

Copy the media.repo file from DVD to etc/yum.repos.d/

Edit the media.repo file as follows:

[InstallMedia-BaseOS]
name=CentOS8-BaseOS
metadata_expire=-1
baseurl=file:///root/dump/BaseOS/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial


[InstallMedia-AppStream]
name=CentOS8-AppStream
metadata_expire=-1
baseurl=file:///root/dump/AppStream/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

The name of the repo file can be changed to anything like xyz.repo, centos.repo, etc. Also, remember that baseurl is the location of the folder containing respective packages. Each repo folder (BaseOS and AppStream) has two sub-folders, Packages and repodata.

Run following command to clear dnf:

#dnf clean all

Build cache for local repository:

#dnf makecache

List the repositories:

#dnf repolist

Install packages:

#dnf install gcc*

This configuration was tested in CentOS 8.