Docker installation in sles SP2

Please refer to official site for installation  details :  https://docs.docker.com/install/linux/docker-ee/suse/

Example installation for SUSE Linux SP2 12.2 + Docker  17.06.2 

1. Prerequisites 

1.1. Get Docker EE URL by Registration , go to: 
  https://store.docker.com/                          sunnydockerid/Netxxxxx1   nbtoronto/Luuu123!@#  

 

 1.2. OS requirements 

    1.  Linux version should be or higher than 12.x:

 # cat /etc/*release    

 b. Firewall Configuration Check :

 # systemctl list-unit-files | grep firewall 

 

 Firewall DisabledDocker creates a DOCKER iptables chain when it starts. 

 

 Firewall Enabledadjust the start-up script order so that the firewall is   started before Docker, and Docker stops before the  firewall stops. 

 

 1.3. Uninstall old versionOlder versions of Docker were called docker or docker-engine. If you use OS images from a cloud provider, you may need to remove the runc package, which conflicts with Docker EE  

 

sudo zypper rm docker docker-ee runc 

 

sudo rpm -e docker-ee 

 

 1.4. Check Filesystem 

 # cat /proc/filesystems | grep btrfs 

btrfs should be listed. 

  

1.5. Configure the Btrfs filesystem  

  1.5.1. Check file system:  

                df -T / /var /var/lib /var/lib/docker  

                        Note: duplicated result if you do not have separate mount point) 

                #mkdir /var/lib/docker   

Note: The only supported storage driver for Docker EE on SLES is Btrfs,

If the filesystem that hosts /var/lib/docker/ is not a BTRFS filesystemyou must configure a BTRFS filesystem and mount it on /var/lib/docker/. 

  1.5.2.   Format your dedicated block device or devices as a Btrfs filesystem. 

                df –h      

 mkfs.btrfs -f  /dev/sda2  

 

 1.5.3.  Mount the new Btrfs file system on the /var/lib/docker 

 

 #mount -t btrfs /dev/sda2  /var/lib/docker  

 2. Install Docker EE

2.1 Using the repository 

 

STEP 1:    SET UP THE REPOSITORY

 

  2.1.1.1:  Add a $DOCKER_EE_URL variable into your environment 

 

       $ DOCKER_EE_URL="<DOCKER-EE-URL>/sles/12.3/x86_64/stable-17.06" 

 

  2.1.1.2. set up the stable repository 

      $ sudo zypper addrepo $DOCKER_EE_URL docker-ee-stable 

 

 2.1.1.3. Import the GPG key from the repository 

 

      $ sudo rpm --import "<DOCKER-EE-URL>/sles/gpg"  

Notes:  please be aware of the value is DOCKER-EE-URL, NOT DOCKER_EE_URL. 

     

 STEP 2: INSTALL DOCKER EE

2.1.2.1Update the zypper package index   

   $ sudo zypper refresh  

  

2.1.2.2Install the latest version of docker-ee 

   sudo zypper install docker-ee   

    $ sudo docker info 

 

2.1.2.2. install a specific version: List binary packages and is truncated:  

   $ zypper search -s --match-exact -t package docker-ee 

 Note:omit the -t package flag from the command to also list source packages 

  $sudo zypper install docker-ee-<VERSION_STRING> 

  

2.1.2.3.Configure Docker EE to use the Btrfs filesystem 

                        This is only required if the / filesystem is not using BTRFS. 

 # /etc/docker/daemon.json (create it if it does not exist) and add the following contents: 

{  "storage-driver": "btrfs"} 

 

2.1.3. Start Docker 

 sudo service docker start 

sudo docker info 

 

 

2.1.4. Verify that Docker EE 

$ sudo docker run hello-world   

This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

systemctl status docker.service  

 

NOW YOU HAVE YOUR DOCKER INSTALLED SUCCESSFULLY !!

2.2. From a Package 

  

2.2.1. Download the .rpm file and install it manually  

   <url>/sles/12.3/ 

     

2.2.2.Import Docker’s official GPG key:  

   sudo rpm --import <DOCKER-EE-URL>/sles/gpg 

 

2.2.3.Install Docker EE   

   sudo zypper install /path/to/package.rpm 

Docker EE is installed but not started. The docker group is created, but no users are added to the group. 

 

2.2.4. Edit the file /etc/docker/daemon.json (create it if it does not exist)  

{ "storage-driver": "btrfs" }

 

2.2.5.Start Docker 

   $ sudo service docker start 

 

2.2.6.Verify that Docker EE  

   sudo docker run hello-world

This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

3. Post-installation steps for Linux 

3.1.  Configure Docker to start on boot   

      $ sudo systemctl enable docker (or upstart) 

"Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service." 

  

3.2.  Add user to docker group 

     $sudo usermod –a -G docker username 

4. Uninstall Docker EE 

4.1 Uninstall the Docker EE package  

   $ sudo zypper rm docker-ee  

  

Delete all images, containers, and volumes on your host:  

  $ sudo rm –rf /var/lib/docker/* 

  

4.2 Unmount and format the Btrfs filesystem 

If you used a separate BTRFS filesystem to host the contents of /var/lib/docker/, you can unmount and format the Btrfs filesystem. 

 

   $ sudo unmount /dev/sda2/  /var/lib/docker 

  

4.3 Manually  delete any edited configuration files  

    e.g  /etc/docker/daemon.json 

 

5. Reference

  •  Docker overview: 

  

  • About Docker CE 

  

  • About Docker EE 

  

  • Docker EE for Red Hat Enterprise Linux 7.4 

  

  • Docker Installation in SLES SP2 

  

  • Post-installation steps for Linux 

Notes:

For ,

"2.2.2.2 Install the latest version of docker-ee 

   sudo zypper install docker-ee   "

You may encounter below issues: 

  • A: 

Failed to mount cd:///?devices=/dev/disk/by-id/ata-VMware_Virtual_IDE_CDROM_Drive_10000000000000000001 on /var/adm/mount/AP_0xxXbHZP: Mounting media failed (mount: no medium found on /dev/sr0) 

" 


Solution1: 

Step 1:  Right click on your vm at home page,  make sure the  two highlighted check boxes and file path is right, then click OK

Step 2: run the command again:

   # zypper install docker-ee 

 

 

Solution 2: 

 if you are not able to access to  host home page , in the  terminal, run command below : 

$ sudo zypper lr –d 

 $sudo  zypper mr -d -R -p 101 1 

 

Then reinstall docker-ee again:

$sudo zypper install docker-ee 

 
  • :  
    If you encounter below error, please check you networking setting:

Solution: In Modify DNS Configuration, select the way the DNS configuration (name servers, search list, the content of the/etc/resolv.conf file) is modified. 

 

Adding the following lines at the end of the file: 

 

search suse 

 nameserver 192.168.28.212 (modify accord to your host machine)

 nameserver 8.8.8.8 

 

 

原文地址:https://www.cnblogs.com/ngtest/p/9369157.html