首页  >  问答  >  正文

docker 中怎么修改应用的配置?

比如我下载了一个redis的镜像,我想在启动redis容器前修改redis的配置,去哪里修改呢?另外docker到底把redis安装到哪里去了?我在docker的命令行里面好像没法find到redis的安装目录啊

黄舟黄舟2710 天前784

全部回复(2)我来回复

  • PHPz

    PHPz2017-04-22 08:58:15

    修改配置的话,
    有下面几种方法:

    1、阅读redis镜像提供方的readme,按照他的方式来(一般是改改ENV之类的方法)
    2、使用数据卷的方式将redis配置文件mount进去
    3、docker run先启动一个实例,进去修改,修改完成后docker commit一下,将这个容器变成镜像。

    一般推荐第一个。

    回复
    0
  • PHP中文网

    PHP中文网2017-04-22 08:58:15

    赞成楼上的做法。

    • 我看到这个问题首先想到的就是去docker hub搜官方的redis镜像.然后看了redis的Dockerfile
      官方的方法是(对应楼上的1)

    Additionally, If you want to use your own redis.conf ...
    You can create your own Dockerfile that adds a redis.conf from the context into /data/, like so
    
    FROM redis
    COPY redis.conf /usr/local/etc/redis/redis.conf
    CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]

    或者

    $ docker run -v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf --name myredis redis redis-server /usr/local/etc/redis/redis.conf
    • 这个镜像启动的时候就默认运行redis-server了。无法通过docker run -it redis修改。试图docker run -it redis /bin/bash进去覆盖默认的启动命令然后添加自己的配置就好了。

    希望能帮到你

    回复
    0
  • 取消回复