run时候已经进行绑定操作
修改未绑定的配置文件
拷贝容器内外的文件操作
修改对外端口等
总结
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修改容器配置文件内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!