Tag: Linux容器

我如何configurationDocker与我的ens34networking接口(而不是eth0)?

有谁知道如何docker决定哪个网卡将与docker0networking工作? 我有一个有两个接口(eth0和ens34)的节点,但是只有通过eth0的请求被转发到容器。 当我的虚拟机configuration好了,并且安装了Docker后,我开始了一个非常愚蠢的testing:我创build了一个centos虚拟机,安装了netcat并提交了镜像。 然后我启动了一个监听端口8080的守护进程容器。我使用了: docker -it -p 8080:8080 –name nc-server nc-server nc -vv -l 8080 所以我尝试连接到从同一networking中的另一个节点(与接口ens34相同的IP地址)监听8080端口的容器。 它不起作用。 而当我从另一台机器向eth0的IP地址发送请求时,我发现容器中有一些反应(通信正常)。 我用下面的方法“输出”输出: docker logs -ft nc-server 我的结论是:eth0(主NIC)和docker0之间有一些神秘的关系,发送到ens34(10. )接口的请求永远不会被转发到veth / docker0接口,只有通过eth0 9. *)。 为什么? 此外,我知道如果我使用–net = host,我可以使所有的工作,但我不想用它…它不觉得正确的,是在Docker中使用HOST模式的标准做法容器? 任何警告呢? – 更新:我设法禁用iptables后使其工作: service iptables stop 但是,我仍然不知道发生了什么事情。 下面的信息应该是相关的,以了解是怎么回事: 使用ifconfig [root@mydockervm2 myuser]# ifconfig | grep -A 1 flags docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet […]

Docker Busybox容器添加组和用户

我需要我的docker容器中的用户。 我的构build是从busybox图像是缺lessgroupadd,我试图使用apt-get添加它,但也是缺less。 我需要添加到我的Dockerfile来获得groupadd? 到目前为止,我有 FROM busybox RUN apt-get install bash RUN groupadd -r postgres && useradd -r -g postgres postgres CMD /bin/sh

docker可以运行我的操作系统不支持的附加库吗?

我有一个不支持库(libcgj)的操作系统(亚马逊Linux)。 如果我通过docker容器托pipe应用程序,我可以使用这个库吗?

如何将我的本地泊坞窗图像导出到另一台计算机上的tar和负载

我在我的电脑上有一个本地图像 $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS 52f36432c9a7 visionai/clouddream:latest "/bin/bash" Less than a second ago Up 3 minutes 现在我想把它导出到tar,所以保存在我的闪存盘,然后加载到我的mac。 我尝试这些,但不工作: $ docker save -o visionai/clouddream clouddream.tar Error response from daemon: No such image: clouddream.tar 和 $ docker export visionai/clouddream > clouddream.tar Error response from daemon: No such container: visionai/clouddream

Docker和Kubernetes存储库的Linux

我一直在尝试在aws上对Linux进行Docker和Kubernetes设置,但是我无法做到这一点。 yum install -y docker docker-registry etcd kubernetes flannel Loaded plugins: amazon-id, rhui-lb, search-disabled-repos No package docker available. No package docker-registry available. No package kubernetes available. No package flannel available. 任何人都可以build议一个常见的回购和套房回购,我需要添加来完成此设置? 注意:订阅pipe理器不是一个选项,因为这个服务器是通过AWS提供的

我怎么知道“init”或“systemd”是否控制docker?

我按照官方文档在Ubuntu 16.04 LTS上安装Docker 。 由于我的服务器工作在代理之后,所以我需要为Dockerconfiguration代理。 在我的主机上运行的进程是这样​​的: # ps -aef | grep init root 1 0 0 03:05 ? 00:00:01 /sbin/init # ps -aef | grep docker root 3223 1 0 04:04 ? 00:00:00 /usr/bin/docker daemon -H fd:// root 3230 3223 0 04:04 ? 00:00:00 docker-containerd -l /var/run/docker/libcontainerd/docker-containerd.sock –runtime docker-runc –start-timeout 2m 由于docker的父进程是init ,我修改了/etc/default/docker文件: # cat […]

aws cli无法从dynamodb docker容器中读取

我正在Docker容器上运行dynamodb,并能够使用python boto3写入表格,这一切都很好。 现在当我使用aws CLI从容器外部查询dynamodb表时,它给出这个错误并且找不到表 ╰─➤ aws dynamodb –region=eu-west-1 –endpoint-url http://localhost:8000 scan –table-name devApiConfig A client error (ResourceNotFoundException) occurred when calling the Scan operation: Cannot do operations on a non-existent table 由dynamodb docker容器创build的sqlite数据库的名称是 localaccesskey_eu-west-1.db aws –region=eu-west-1 dynamodb list-tables –endpoint-url http://localhost:8000 { "TableNames": [] } 任何想法或提示,如从Boto3使用dynamodb上存在的表格….?

Docker 1.12中的Ubuntu 16.10声称没有用于MySQL的套接字

我现在使用Docker for Mac和Docker是Docker version 1.12.0-rc4, build e4a0dbc, experimental ,我试图在Ubuntu 16.10中安装MySQL。 (不要问我,为什么我不使用官方的!) 安装过程是 运行Docker docker run –rm -it ubuntu:16.10 (并安装vim) 更新和升级apt-get apt-get update && apt-get upgrade -y apt-get mysql-server apt-get install -y mysql-server dump /etc/mysql/my.cnf !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ dump /etc/mysql/mysql.conf.d/mysqld.cnf [mysqld_safe] socket = /var/run/mysqld/mysqld.sock … [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock […]

我不能运行我从现场操作系统创build的容器

我创build了一个活的centOS tar文件: tar –numeric-owner \ –exclude=/proc \ –exclude=/sys \ –exclude=/mnt \ –exclude=/var/cache \ –exclude=/usr/share/doc \ –exclude=/tmp \ –exclude=/var/log \ -zcvf /mnt/rhel7-base.tar.gz / 然后运行cat rhel7-base.tar.gz | docker import – rhel7/01 cat rhel7-base.tar.gz | docker import – rhel7/01加载到docker。 它完成没有错误,我可以用docker images命令find它。 最后,我试图运行它docker run -i -t rhel7/01 (也没有-i,-t开关),但没有结果 [root@vhp~]# docker run rhel7/01 [root@vhp~]# 我想知道是否有人纠正我。

有没有办法从Linuxdocker集装箱制作一个可启动的Linux Live USB磁盘?

我有一个Linuxdocker集装箱。 我可以ssh,运行它像一个小的Linux系统。 我可以把它放在一个USB磁盘上,连同一个引导程序,直接启动到docker集装箱? (虽然保持它作为docker集装箱,那是)。