docker添加挂载目录或者添加端口

docker添加挂载目录或者添加端口,第1张

docker添加挂载目录:先在docker容器里创建目录/import

1.关闭docker

2.sudo su切换到root身份,cd /var/lib/docker/containers/容器id/,进入对应容器目录

3.vi hostconfig.json,修改如下,将容器目录/import绑定到主机/data目录:

4.vi config.v2.json,修改如下,添加MountPoints:

5.启动docker

最后docker ecec -it 容器id /bin/bash进入ls -l /就可以看见import目录

添加端口在这个文件hostconfig.json

首先输入

可以看到我当前的名叫mynginx容器只打开了80端口

在给mynginx容器添加上这条命令:

来设置重启docker之后自动启动该容器。设置完成后再修改hostconfig.json文件中的"PortBindings"就行。

然后停止容器systemctl stop docker

然后进入到该容器的hostconfig.json文件中,增加一个8000的端口

保存后退出

再次启动docker容器systemctl start docker

输入docker ps -a查看

发现已经增加了8000端口

若想要增加容器端口,则需要把config.v2.json中的ExposedPorts也加上你想添加的端口号

Docker的镜像以及一些数据都是在/var/lib/docker目录下,它占用的是Linux的系统分区,也就是下面的/dev/vda1,当有多个镜像时,/dev/vda1的空间可能不足,我们可以把docker的数据挂载到数据盘,例如:/dev/vdb目录下。

[root@10-10-63-106 docker]# df -lhT

Filesystem Type Size Used Avail Use% Mounted on

/dev/vda1 xfs20G 3.8G 16G 20% /

devtmpfs devtmpfs 916M 0 916M 0% /dev

tmpfs tmpfs 921M 0 921M 0% /dev/shm

tmpfs tmpfs 921M 43M 878M 5% /run

tmpfs tmpfs 921M 0 921M 0% /sys/fs/cgroup

/dev/vdb xfs 100G 11G 90G 11% /data

其中主要的步骤如下:

(1) 首先,备份fstab文件

sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)

(2) 停止docker, 用rsync同步/var/lib/docker到新位置.

如果rsync没有安装,则使用yum -y intall rsync 进行安装,停止docker ,service docker stop,在数据分区中建立要挂载的目录,mkdir /data/docker 使用rsync工具同步,rsync -aXS /var/lib/docker/. /data/docker/,这可能需要花费的较长的时间,取决于/var/lib/docker的大小,

(3) 修改fstab

在该文件中把下面一行添加到fstab里,将新位置挂载到 /var/lib/docker

/data/docker /var/lib/docker none bind 0 0

文件的内如如下:

[root@10-10-63-106 docker]# cat /etc/fstab

#

# /etc/fstab

# Created by anaconda on Thu Jul 31 07:50:13 2014

#

# Accessible filesystems, by reference, are maintained under '/dev/disk'

# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

#

/dev/vda1 / xfs errors=remount-ro 0 1

/swapfilenoneswapdefaults0 0

/dev/vdb /data xfs defaults,noatime 0 0

/data/docker /var/lib/docker none bind 0 0

(4) 重新挂载

mount –a

(5) 使用下面的命令检查一下

df /var/lib/docker/

Filesystem 1K-blocks Used Available Use% Mounted on

/dev/vdb 104806400 47204 104759196 1% /var/lib/docker

(6)进入Container查看我们的空间

bash-4.1# df -lhT

FilesystemTypeSize Used Avail Use% Mounted on

rootfs rootfs9.8G 1.4G 7.9G 15% /

tmpfstmpfs921M 0 921M 0% /dev

shm tmpfs 64M 0 64M 0% /dev/shm

/dev/vdb xfs100G 2.1G 98G 3% /etc/resolv.conf

/dev/vdb xfs100G 2.1G 98G 3% /etc/hostname

/dev/vdb xfs100G 2.1G 98G 3% /etc/hosts

tmpfstmpfs921M 0 921M 0% /run/secrets

tmpfstmpfs921M 0 921M 0% /proc/kcore

没有更改/var/lib/docker路径之前的情况:

bash-4.1# df -lhT

FilesystemTypeSize Used Avail Use% Mounted on

rootfs rootfs9.8G 1.4G 7.9G 15% /

tmpfstmpfs921M 0 921M 0% /dev

shm tmpfs 64M 0 64M 0% /dev/shm

/dev/vda1 xfs 20G 13G 6.9G 66% /etc/resolv.conf

/dev/vda1 xfs 20G 13G 6.9G 66% /etc/hostname

/dev/vda1 xfs 20G 13G 6.9G 66% /etc/hosts

tmpfstmpfs921M 0 921M 0% /run/secrets

tmpfstmpfs921M 0 921M 0% /proc/kcore

宿主机中的分区大小信息:

[root@10-10-63-106 ~]# df -lhT

Filesystem Type Size Used Avail Use% Mounted on

/dev/vda1 xfs20G 13G 6.9G 65% /

devtmpfs devtmpfs 916M 0 916M 0% /dev

tmpfs tmpfs 921M 0 921M 0% /dev/shm

tmpfs tmpfs 921M 89M 832M 10% /run

tmpfs tmpfs 921M 0 921M 0% /sys/fs/cgroup

/dev/vdb xfs 100G 33M 100G 1% /data


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11813927.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存