Docker on RHEL - anujajakhade/anuja GitHub Wiki
-
Backup the previous docker binaries (Incase something goes wrong)
cp -Rf /usr/local/bin/docker* /tmp/ && rm -rf /usr/bin/docker
-
Copy the latest docker-ce binaries to /usr/local/bin
cd /scratch/ecos0041/docker-ce/docker-17.05.0-ce-rhel7.3-20170523 cp docker* /usr/local/bin
-
Remove systemctl docker service files
rm -rf /usr/lib/systemd/system/docker* && /etc/systemd/system/docker.service.d/
-
Update
/etc/sysconfig/docker
DOCKER_OPTS=" -H tcp://0.0.0.0:2375 -G docker --storage-opt dm.basesize=100G -g /scratch/ecos0010/docker23Oct"
-
Create docker.service and docker.socket in /etc/systemd/system
cd /etc/systemd/system
docker.service
[root@ecos0050 system]# rm -rf /scratch/ecos0050/docker
[root@ecos0050 system]# vi /etc/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
EnvironmentFile=/etc/sysconfig/docker
PIDFile=/var/run/docker.pid
ExecStart=/usr/local/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375 -G docker --storage-driver=devicemapper --storage-opt dm.basesize=150G --data-root /scratch/ecos0050/docker_April
#ExecStart=/usr/local/bin/dockerd -H --storage-driver=devicemapper fd:// $DOCKER_OPTS
MountFlags=slave
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
[Install]
WantedBy=multi-user.target
docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
EnvironmentFile=/etc/sysconfig/docker
PIDFile=/var/run/docker.pid
ExecStart=/usr/local/bin/docker daemon -H fd:// -H tcp://0.0.0.0:2375 -G docker --storage-driver=devicemapper --storage-opt dm.basesize=150G -g /scratch/ecos0010/docker
#ExecStart=/usr/local/bin/dockerd -H --storage-driver=devicemapper fd:// $DOCKER_OPTS
MountFlags=slave
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
[Install]
WantedBy=multi-user.target
docker.socket
[Unit]
Description=Docker Socket for the API
PartOf=docker.service
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
# A Socket(User|Group) replacement workaround for systemd <= 214
ExecStartPost=/usr/bin/chown root:docker /var/run/docker.sock
[Install]
WantedBy=sockets.target
-
Reload configuration , enable docker.service and start the Service
systemctl daemon-reload && systemctl disable docker.service && systemctl enable docker.service
systemctl start docker.service
Create docker group
groupadd docker
Check status
systemctl status docker.service