[Unit]
Description=Docker Socket for the API
PartOf=docker.service
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target
但创建后仍然无法启动,提示:Failed to start docker.service: Unit not found.,换另一种方式:
卸载现有版本Docker:
yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine
之后重装Docker,启动完成,注意到原来的/usr/lib/systemd/system目录下没有docker.socket与docker.service文件,重装后docker.service文件出现
你这个应该是版本问题,重新安装的时候,由于要保留自定义的一些Docker配置,所以在升级后,使用原来的/usr/lib/systemd/system/docker.service覆盖了新的docker.service。但是在旧版本中,docker.service的[UNIT]里规定了Requires=docker.socket,也就是说,docker.service默认依赖于docker.socket,因为需要使用docker.socket来获取容器的信息。而在新版本已经不再依赖于docker.socket了,所以系统里没有docker.socket,如果继续使用原来的docker.service,在启动的时候,就会出错。