【发布时间】:2021-10-10 19:54:53
【问题描述】:
我正在学习 docker,我将它下载到我的 Mac 上,并且能够从桌面应用程序运行我的第一个 docker 容器。从命令行启动同一图像的容器失败。
错误日志如下所示,显示 RteNetLink 失败。
任何想法为什么以及如何解决它?
% docker run ghcr.io/nokia/srlinux
Thu Aug 5 19:36:13 UTC 2021: entrypoint.sh called
Thu Aug 5 19:36:13 UTC 2021: renaming docker interface eth0 to mgmt0
RTNETLINK answers: Operation not permitted
RTNETLINK answers: Operation not permitted
Cannot find device "mgmt0"
Device "mgmt0" does not exist.
Cannot find device "mgmt0"
Thu Aug 5 19:36:14 UTC 2021: turning off checksum offloading on mgmt0
netlink error: Operation not permitted
Thu Aug 5 19:36:14 UTC 2021: starting sshd
ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519
mount: /var/log/srlinux/buffer: permission denied.
Thu Aug 5 19:36:14 UTC 2021: Calling boot_run script
chmod: cannot access '/dev/console': No such file or directory
chmod: missing operand after '0666'
Try 'chmod --help' for more information.
/usr/bin/find: '/var/log/srlinux/file': No such file or directory
logmgr_set_env.sh: plain_bootup_start
Thu Aug 5 19:36:15 UTC 2021 logmgr_set_env.sh: restart of rsyslogd
Failed to set capabilities on file `/usr/sbin/tcpdump' (No such file or directory)
usage: setcap [-q] [-v] [-n <rootid>] (-r|-|<caps>) <filename> [ ... (-r|-|<capsN>) <filenameN> ]
Note <filename> must be a regular (non-symlink) file.
Thu Aug 5 19:36:15 UTC 2021: entrypoint.sh done, executing /bin/bash
当我以交互模式运行容器时,我检查了操作系统版本,它是 CentOS Stream。
[user@33681341ddf6 /]$ cat /etc/os-release
NAME="CentOS Stream"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Stream 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_SUPPORT_PRODUCT_VERSION="CentOS Stream"
【问题讨论】:
-
看起来你在尝试运行一个虚拟机镜像(重新配置网络接口,运行辅助守护进程,创建多个日志目录,...)而不是一个轻量级的单处理 Docker 映像。你有图像的 Dockerfile 吗?如果您只是在学习,作为第一个练习,一个更简单的应用程序会更好吗?
-
我不只是在学习 docker,我也在尝试运行具有一些独特功能的 Nokia SR Linux 映像。我需要测试这个图像并在上面构建自定义网络应用程序。你是对的,我应该更简单:docker run -d -p 80:80 docker/getting-started
标签: linux macos docker containers centos8