沃梦达 / 编程技术 / 服务器 / 正文

docker修改容器配置文件的3种方法总结

有时候可能需要修改运行在docker容器中的nginx的配置文件,或者其他一些已经运行和启动很久的容器中的配置文件,下面这篇文章主要给大家介绍了关于docker修改容器配置文件的3种方法,需要的朋友可以参考下

run时候已经进行绑定操作

在启动容器的时候可以通过 -v双向绑定本地的某文件,这样任意修改哪一个都会同步变化docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

  • -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
  • –volume , -v: 绑定一个数据卷
  • -d: 后台运行容器,并返回容器ID;
  • –name=“redis”: 为容器指定一个名称;
  • -e username=“ritchie”: 设置环境变量;
  • -m :设置容器使用内存最大值;
  • redis-server --appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
docker run -p 6378:6379 --name redis -v /Users/conf/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /Users/conf/docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

使用镜像 nginx:latest,以后台模式启动一个容器,将容器的80 端口映射到主机的 80 端口,主机的目录 /root/docker/nginx/data 映射到容器的 /data。

docker run -p 80:80 -v /root/docker/nginx/data:/data -d nginx:latest

修改未绑定的配置文件

docker inspect [容器名称]

docker inspect redis

可以配合grep一起使用,例如仅查看容器ip时可以这样做

docker exec -it reids ls /usr/local/bin

拷贝容器内外的文件操作

进入容器,加入我们要修改的文件时cptest.txt

docker cp [容器名字]:[具体文件地址] [想要拷贝到本地的目标地址]
#例子
docker cp redis:/test/cptest.txt ./

docker cp [本机文件地址] [容器名字]:[容器里的目标地址]
#例子
docker cp cptest.txt redis:test 

除了cp操作我们还可以在外部对容器内的其他文件也进行操作

修改对外端口等

docker inspect redis|grep Id
cd /var/lib/docker/containers
cd 容器id
vim hostconfig.json

为什么去/var/lib/docker/containers/…

是因为在inspect的内容中可以看到主机信息保存在这里了

总结

到此这篇关于docker修改容器配置文件的3种方法的文章就介绍到这了,更多相关docker修改容器配置文件内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!

本文标题为:docker修改容器配置文件的3种方法总结

基础教程推荐