Docker配置容器位置与小技巧总结

2020-06-17 06:38:42易采站长站整理


docker run -d -p 80:80 -v /c/Users/SunArmy/Desktop/html:/usr/share/nginx/html nginx

我们随便写一个index.html里面写上welcome nginx

把这个文件覆盖/opt/docker/html/下的index.html

再访问

重启都不需要直接OK

为什么不选择直接cp到容器中

​ 有这样一种情况,如果你需要修改的是配置文件,这肯定是需要重启的,但是在修改的时候不小心把配置文件写错了,这个时候你的容器就起不来了,想要修改容器中的配置,那也做不到了(除非重新创建容器),换种做法,如果我们把配置文件挂载在外面当你启动不起来的时候你可以直接在宿主机上修改为正确配置重启启动即可,综上,挂载的方式比cp到容器中的方式方便且安全

1、jq工具

最后介绍一个操作json的工具,这个是在查看容器配置的时候用的,我们使用docker inspect ID查看容器配置,往往会过滤出来一些我们关注的信息,一般情况下我们会选择docker inspect –format= 或者使用grep

但是无论使用哪一种都没有我们最熟悉的操作json的方式来过滤用着爽

jq工具需要单独安装yum install jq

使用jq过滤docker inspect 获取地址


docker inspect ac |jq -r .[0].NetworkSettings.IPAddress

. 代表管道前面的输出,之后的[0]就是数组的第1个元素,后面的 . 就是类似于点出对象中的属性一样,跟我们平时使用json是一样的,jq还能方便的格式化查看json文件,对于在命令行下查看json文件简直是利器

2、修改Docker本地镜像和容器的存储位置

很多人都是只知道创建了容器,从来没有关注过创建的容器在哪?本地镜像在哪?

但是,当你不得不关注的时候往往就是你的docker镜像和容器把你的盘装满了

查看Docker镜像和容器存储的位置


docker info |greo Docker

默认位置就是:/var/lib/docker

修改存储位置的方法有两种:

一):通过建立软连接,把/var/lib/docker 移动到其他地方,建立到这里的软连接


# 停止docker
service docker stop
# 移动/var/lib/docker 到/usr/local/
mv /var/lib/docker /usr/local/
# 建立软连接
ln -s /usr/local/docker /var/lib/docker
# 启动Docker
service docker start

这个时候我们已经修改了,但是查看位置的时候看到的位置还是/var/lib/docker