标签: linux-containers

Docker如何更改存储库名称或重命名图像?

我正在尝试更改图像的存储库名称:

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
server              latest              d583c3ac45fd        26 minutes ago      685.5 MB
Run Code Online (Sandbox Code Playgroud)

因此,我想将名称更改server为类似myname/server:

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
myname/server       latest              d583c3ac45fd        26 minutes ago      685.5 MB
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

docker linux-containers

515
推荐指数
6
解决办法
30万
查看次数

如何将端口映射分配给现有的Docker容器?

我不确定我是否在这里误解了一些东西,但似乎只能通过从图像创建一个新容器来设置端口映射.有没有办法将端口映射分配给现有的Docker容器?

port lxc docker linux-containers

373
推荐指数
12
解决办法
34万
查看次数

如何在docker容器中使用sudo?

通常,使用用户root运行docker容器.我想使用不同的用户,使用docker的USER指令没问题.但是这个用户应该能够在容器内使用sudo.缺少此命令.

这是一个简单的Dockerfile用于此目的:

FROM ubuntu:12.04

RUN useradd docker && echo "docker:docker" | chpasswd
RUN mkdir -p /home/docker && chown -R docker:docker /home/docker

USER docker
CMD /bin/bash
Run Code Online (Sandbox Code Playgroud)

运行此容器,我使用用户'docker'登录.当我尝试使用sudo时,找不到该命令.所以我尝试使用在我的Dockerfile中安装sudo

RUN apt-get install sudo
Run Code Online (Sandbox Code Playgroud)

这导致无法找到包sudo

sudo docker linux-containers

223
推荐指数
10
解决办法
22万
查看次数

如何使用其数据卷备份Docker容器?

我一直在使用这个Docker-image tutum/wordpress来演示一个Wordpress网站.最近我发现图像使用了MySQL数据的卷.

所以问题是:如果我想备份和恢复容器,我可以尝试提交图像,然后删除容器,并从提交的图像创建一个新容器.但是,如果我这样做,卷将被删除,我的所有数据都将消失.

必须有一些简单的方法来备份我的容器及其卷数据,但我无法在任何地方找到它.

backup docker linux-containers

125
推荐指数
8
解决办法
15万
查看次数

备份正在运行的Docker容器?

是否可以备份正在运行的Docker容器?export命令是否适合这样做?

linux docker linux-containers

58
推荐指数
2
解决办法
2万
查看次数

在Docker容器中永久更新PATH环境变量

我尝试添加到PATH文件中~/.profile,/etc/profile如下所示.

PATH = $PATH:/required/path
Run Code Online (Sandbox Code Playgroud)

但是,它不起作用.然后我尝试添加行显示,这也不起作用.

export PATH
Run Code Online (Sandbox Code Playgroud)

即使在重新启动容器和主机之后它也无法工作.

environment-variables docker linux-containers

58
推荐指数
5
解决办法
5万
查看次数

Docker容器和内存消耗

假设我正在启动大量基于相同docker镜像的docker容器.这意味着每个docker容器都运行相同的应用程序.可能是应用程序足够大并且需要大量硬盘驱动器内存的情况.

码头工人如何处理它?

是否所有docker容器都共享docker镜像中定义的静态部分?

如果不是,将应用程序复制到用于运行docker容器的机器上的某个目录并为每个docker容器安装此app目录是否有意义?

memory docker linux-containers

56
推荐指数
1
解决办法
5万
查看次数

Dockerfile:Docker构建无法下载软件包:centos-> yum,debian/ubuntu-> apt-get in intranet

问题:任何构建,具有依赖于centos,ubuntu或debian的Dockerfile都无法构建.

环境:我有一台Mac OS X,运行VMWare,客户端为Ubuntu 14.04,运行Docker:

mdesales@ubuntu ~ $ sudo docker version
Client version: 1.1.2
Client API version: 1.13
Go version (client): go1.2.1
Git commit (client): d84a070
Server version: 1.1.2
Server API version: 1.13
Go version (server): go1.2.1
Git commit (server): d84a070
Run Code Online (Sandbox Code Playgroud)

行为:使用"docker build"无法下载包.这里有这样Dockerfile的例子:https://github.com/Krijger/docker-cookbooks/blob/master/jdk8-oracle/Dockerfile,https://github.com/ottenhoff/centos-java/blob/master/Dockerfile

我知道我们可以使用--dns运行容器,但这是在构建期间.

  • CENTOS

    从centos RUN yum安装abc

  • UBUNTU

    从ubuntu RUN apt-get install abc

用户已经报告可能是DNS配置问题,其他人和配置已将Google的DNS服务器注释掉.

Step 2 : RUN yum install -y curl; yum upgrade -y; yum update -y;  yum clean all
 ---> Running in 5f11b65c87b8
Loaded …
Run Code Online (Sandbox Code Playgroud)

dns centos docker linux-containers

33
推荐指数
3
解决办法
4万
查看次数

执行mysql命令从主机到运行mysql服务器的容器

我按照指令https://registry.hub.docker.com/_/mysql/来提取图像并运行一个运行mysql服务器的容器.容器在后台运行,我会运行一些命令.哪个是连接容器并从命令行执行此命令的最佳方法?

mysql docker linux-containers

31
推荐指数
5
解决办法
6万
查看次数

docker容器是否有自己的TCP/IP堆栈?

我正在尝试了解连接到主机并连接到Docker容器内的应用程序的网络数据包所发生的情况.

如果它是一个经典的虚拟机,我知道到达主机的数据包将由虚拟机管理程序(比如VMware,VBox等)传输到虚拟机的虚拟网卡,并从那里通过客户机操作系统的TCP/IP堆栈传输,终于达到了申请.

在Docker的情况下,我知道主机上的数据包从主机的网络接口转发到docker0网桥,该网桥连接到容器内veth虚拟接口上的一对eth0.但那之后呢?由于所有Docker容器都使用主机内核,假设数据包是由主机内核的TCP/IP堆栈处理的,这是正确的吗?如果是这样,怎么样?

我真的想阅读一个详细的解释(或者如果你知道一个资源可以随意链接它)关于真正发生的事情.我已经仔细阅读了这个页面,但它没有说明一切.

在此先感谢您的回复.

networking tcp-ip docker linux-containers

29
推荐指数
1
解决办法
7170
查看次数