我在笔记本上安装了64位Arch Linux:
$ uname -a
Linux notebook 4.8.13-1-ARCH #1 SMP PREEMPT Fri Dec 9 07:24:34 CET 2016 x86_64 GNU/Linux
我从社区存储库安装了docker:
$ yaourt -S docker
直到这里我没有遇到任何问题。但是,如果我尝试启动docker守护程序,我会收到带有寄存器地址的奇怪错误消息:
[root@notebook home]# systemctl start docker
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
[root@notebook home]# systemctl status docker.service
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Sun 2016-12-18 10:27:32 CET; 11s ago
Docs: https://docs.docker.com
Process: 9648 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=2)
Main PID: 9648 (code=exited, status=2)
CPU: 94ms
Dez 18 10:27:32 notebook dockerd[9648]: r12 0x80
Dez 18 10:27:32 notebook dockerd[9648]: r13 0x1100
Dez 18 10:27:32 notebook dockerd[9648]: r14 0x23
Dez 18 10:27:32 notebook dockerd[9648]: r15 0x0
Dez 18 10:27:32 notebook dockerd[9648]: rip 0x6c988f
Dez 18 10:27:32 notebook dockerd[9648]: rflags 0x10246
Dez 18 10:27:32 notebook dockerd[9648]: cs 0x33
Dez 18 10:27:32 notebook dockerd[9648]: fs 0x0
Dez 18 10:27:32 notebook dockerd[9648]: gs 0x0
Dez 18 10:27:32 notebook systemd[1]: docker.service: Failed with result 'exit-code'.
[root@notebook home]# journalctl -xe
Dez 18 10:27:32 notebook dockerd[9648]: /usr/lib/go/src/runtime/asm_amd64.s:2086 +0x1
Dez 18 10:27:32 notebook dockerd[9648]: goroutine 31 [chan receive]:
Dez 18 10:27:32 notebook dockerd[9648]: github.com/docker/docker/pkg/signal.Trap.func1(0xc4203691a0, 0xc420404600)
Dez 18 10:27:32 notebook dockerd[9648]: /build/docker/src/docker/.gopath/src/github.com/docker/docker/pkg/signal/trap.go:32 +0x77
Dez 18 10:27:32 notebook dockerd[9648]: created by github.com/docker/docker/pkg/signal.Trap
Dez 18 10:27:32 notebook dockerd[9648]: /build/docker/src/docker/.gopath/src/github.com/docker/docker/pkg/signal/trap.go:62 +0x1c8
Dez 18 10:27:32 notebook dockerd[9648]: goroutine 32 [chan receive]:
Dez 18 10:27:32 notebook dockerd[9648]: github.com/docker/docker/daemon.setupDumpStackTrap.func1(0xc4204267e0)
Dez 18 10:27:32 notebook dockerd[9648]: /build/docker/src/docker/.gopath/src/github.com/docker/docker/daemon/debugtrap_unix.go:17 +0x53
Dez 18 10:27:32 notebook dockerd[9648]: created by github.com/docker/docker/daemon.setupDumpStackTrap
Dez 18 10:27:32 notebook dockerd[9648]: /build/docker/src/docker/.gopath/src/github.com/docker/docker/daemon/debugtrap_unix.go:20 +0xec
Dez 18 10:27:32 notebook dockerd[9648]: rax 0x6a09e667
Dez 18 10:27:32 notebook dockerd[9648]: rbx 0xbb67ae85
Dez 18 10:27:32 notebook dockerd[9648]: rcx 0x3c6ef372
Dez 18 10:27:32 notebook dockerd[9648]: rdx 0x510e527f
Dez 18 10:27:32 notebook dockerd[9648]: rdi 0x6a09e667
Dez 18 10:27:32 notebook dockerd[9648]: rsi 0x0
Dez 18 10:27:32 notebook dockerd[9648]: rbp 0x1807ce0
Dez 18 10:27:32 notebook dockerd[9648]: rsp 0xc4206d0cd8
Dez 18 10:27:32 notebook dockerd[9648]: r8 0xa54ff53a
Dez 18 10:27:32 notebook dockerd[9648]: r9 0x9b05688c
Dez 18 10:27:32 notebook dockerd[9648]: r10 0x1f83d9ab
Dez 18 10:27:32 notebook dockerd[9648]: r11 0x5be0cd19
Dez 18 10:27:32 notebook dockerd[9648]: r12 0x80
Dez 18 10:27:32 notebook dockerd[9648]: r13 0x1100
Dez 18 10:27:32 notebook dockerd[9648]: r14 0x23
Dez 18 10:27:32 notebook dockerd[9648]: r15 0x0
Dez 18 10:27:32 notebook dockerd[9648]: rip 0x6c988f
Dez 18 10:27:32 notebook dockerd[9648]: rflags 0x10246
Dez 18 10:27:32 notebook dockerd[9648]: cs 0x33
Dez 18 10:27:32 notebook dockerd[9648]: fs 0x0
Dez 18 10:27:32 notebook dockerd[9648]: gs 0x0
Dez 18 10:27:32 notebook systemd[1]: docker.service: Failed with result 'exit-code'.
是否有人面临同样的问题? (这次Google没有帮助)。有没有人如何解决这个或怎么能给我一个提示?
提前致谢, dymat
编辑(对@funilrys的回应):
/usr/lib/systemd/system/docker.service
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
Type=notify
# 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
ExecStart=/usr/bin/dockerd -H fd://
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
[Install]
WantedBy=multi-user.target
安装完成后,我尝试启动docker守护程序(sudo systemctl start docker
)