docker-m,docker目录挂载

http://www.itjxue.com  2023-01-14 08:56  来源:未知  点击次数: 

docker-machine 安装的docker 镜像 存储在哪

方案1, 使用参数-g 来修改 Docker 的镜像存储文件夹.

修改方法如下:

在 Ubuntu/Debian 系统下:

编辑 /etc/default/docker 文件, 添加-g 参数的设置, 如下:

DOCKER_OPTS="-dns 8.8.8.8 -dns 8.8.4.4 -g /mnt"

在 Fedora/Centos 系统下:

编辑 /etc/sysconfig/docker 文件, 添加-g 参数的设置, 如下:

other_args="-g /mnt"

重启 Docker 服务, 问题就解决了.

方案2 使用链接

1) 停止 Docker: service docker stop.

2) 做个备份 tar -zcC /var/lib/docker /mnt/var_lib_docker-backup-$(date + %s).tar.gz

3) 迁移/var/lib/docker目录到met 目录下: mv /var/lib/docker /mnt/docker

4) 建个 symlink: ln -s /mnt/docker /var/lib/docker

5) 确认文件夹类型为symlink 类型 ls /var/lib/docker

6) 启动 docker service.

docker-machine 之简单安装使用

安装

[官方Release库:]

[官方安装文档:]

安装完成后,查看docker-machine版本

为了支持命令自动补全,还可以安装补全脚本:

采用generic驱动给另一个主机安装docker

官方文档:

[generic驱动]

连到远程主机上,上面的报错不够详细,看看systemctl里docker服务的内容

cat /etc/systemd/system/docker.service.d/10-machine.conf

把ExecStart的内容拿出来执行一下

看这一句:error initializing graphdriver: overlay2: the backing xfs filesystem is formatted without d_type support,搜索了一下

[参考一]

[参考二]

这里要说明一下,本文中的远程主机系统是centos7.2,和分区有关系,这里选另一种方法,把ExecStart里的--storage-driver overlay2去掉

然后在远程主机上执行:

可以看到docker启动了,docker info看到Storage Driver类型是:devicemapper

现在可从docker-machine管理194210的docker了

运行一个容器试试

可以ssh到远程主机上看效果

退出194210的docker环境,实际上就是去掉DOCKER的几个环境变量

如何使用Docker Machine部署Swarm集群

1. 安装Docker Machine

Docker Machine 在各种Linux系统上都支持的很好。首先,我们需要从Github上下载最新版本的Docker Machine。我们使用curl命令来下载最先版本Docker Machine ie 0.2.0。

64位操作系统:

# curl -L /usr/local/bin/docker-machine

32位操作系统:

# curl -L /usr/local/bin/docker-machine

下载了最先版本的Docker Machine之后,我们需要对 /usr/local/bin/ 目录下的docker-machine文件的权限进行修改。命令如下:

# chmod +x /usr/local/bin/docker-machine

在做完上面的事情以后,我们要确保docker-machine已经安装正确。怎么检查呢?运行docker-machine -v指令,该指令将会给出我们系统上所安装的docker-machine版本。

# docker-machine -v

Installing Docker Machine

为了让Docker命令能够在我们的机器上运行,必须还要在机器上安装Docker客户端。命令如下。

# curl -L /usr/local/bin/docker# chmod +x /usr/local/bin/docker

2. 创建Machine

在将Docker Machine安装到我们的设备上之后,我们需要使用Docker

Machine创建一个machine。在这篇文章中,我们会将其部署在Digital Ocean

Platform上。所以我们将使用“digitalocean”作为它的Driver API,然后将docker

swarm运行在其中。这个Droplet会被设置为Swarm主控节点,我们还要创建另外一个Droplet,并将其设定为Swarm节点代理。

创建machine的命令如下:

# docker-machine create --driver digitalocean --digitalocean-access-token API-Token linux-dev

备注: 假设我们要创建一个名为“linux-dev”的machine。是用户在Digital Ocean

Cloud Platform的Digital Ocean控制面板中生成的密钥。为了获取这个密钥,我们需要登录我们的Digital

Ocean控制面板,然后点击API选项,之后点击Generate New

Token,起个名字,然后在Read和Write两个选项上打钩。之后我们将得到一个很长的十六进制密钥,这个就是了。用其替换上面那条命令中的

API-Token字段。

现在,运行下面的指令,将Machine 的配置变量加载进shell里。

# eval "$(docker-machine env linux-dev)"

Docker Machine Digitalocean Cloud

然后,我们使用如下命令将我们的machine标记为ACTIVE状态。

# docker-machine active linux-dev

现在,我们检查它(指machine)是否被标记为了 ACTIVE "*"。

# docker-machine ls

Docker Machine Active List

3. 运行Swarm Docker镜像

现在,在我们创建完成了machine之后。我们需要将swarm docker镜像部署上去。这个machine将会运行这个docker镜像,并且控制Swarm主控节点和从节点。使用下面的指令运行镜像:

# docker run swarm create

Docker Machine Swarm Create

如果你想要在32位操作系统上运行swarm docker镜像。你需要SSH登录到Droplet当中。

# docker-machine ssh# docker run swarm create# exit

4. 创建Swarm主控节点

在我们的swarm image已经运行在machine当中之后,我们将要创建一个Swarm主控节点。使用下面的语句,添加一个主控节点。

# docker-machine create \-d digitalocean \--digitalocean-access-token DIGITALOCEAN-TOKEN--swarm \--swarm-master \--swarm-discovery token://CLUSTER-ID \swarm-master

Docker Machine Swarm Master Create

5. 创建Swarm从节点

现在,我们将要创建一个swarm从节点,此节点将与Swarm主控节点相连接。下面的指令将创建一个新的名为swarm-node的droplet,其与Swarm主控节点相连。到此,我们就拥有了一个两节点的swarm集群了。

# docker-machine create \-d digitalocean \--digitalocean-access-token DIGITALOCEAN-TOKEN--swarm \--swarm-discovery token://TOKEN-FROM-ABOVE \swarm-node

Docker Machine Swarm Nodes

6. 与Swarm主控节点连接

现在,我们连接Swarm主控节点以便我们可以依照需求和配置文件在节点间部署Docker容器。运行下列命令将Swarm主控节点的Machine配置文件加载到环境当中。

# eval "$(docker-machine env --swarm swarm-master)"

然后,我们就可以跨节点地运行我们所需的容器了。在这里,我们还要检查一下是否一切正常。所以,运行docker info命令来检查Swarm集群的信息。

# docker info

在windows server 2012 中安装docker

因为windows server 2012(以下简称ws2012) 相当于win8.1 , 所以我们在安装docker的时候不能直接通过官方的 docker for windows 的安装包进行安装,这时候我们就只能安装docker toolbox

这里我们默认利用docker-machine创建出来的环境是1核1G的

我们在创建的时候需要自定义核数和内存

docker-machine create xxx --virtualbox-cpu-count 4 --virtualbox-memory 1024

也可以在virtualbox中更改,把启动的容器关掉,设置完毕后再开机

以上 ws2012 安装docker的全过程

(责任编辑:IT教学网)

更多

推荐程序员考试文章