docker compose命令用来启动容器

时间:2018-10-12 14:17:41

标签: linux docker docker-compose devops

我遇到了这个问题,我希望在部署容器时尽快运行这些命令(RUN)。 但是我对docker compose yml感到困惑。如何实现。 我只想在此站点http://docs.grafana.org/installation/docker/#migration-from-a-previous-version-of-the-docker-container-to-5-1-or-later上的“修改权限”下面执行操作 尝试像这样编写时出现错误:

grafana:
  image: grafana/grafana
  container_name: grafana

  RUN: "chown -R root:root /etc/grafana && \ "
  RUN: "chmod -R a+r /etc/grafana && \ "
  RUN: "chown -R grafana:grafana /var/lib/grafana && \ "
  RUN: "chown -R grafana:grafana /usr/share/grafana"
  ports:
    - 3001:3000
  volumes:
    - /root/Stack/tigstack/graf:/var/lib/grafana
  restart:
   always

2 个答案:

答案 0 :(得分:0)

创建您自己的Dockerfile,然后在其中使用RUN命令授予权限。您不能像编写方式那样在docker-compose中使用RUN命令。

答案 1 :(得分:0)

非常感谢您的帮助。我做了一个Dockerfile,但是我需要一个命令在容器加载后运行,因此我使用了“ CMD”,如下所示:

FROM grafana/grafana:latest
MAINTAINER Denis
VOLUME /root/Stack/tigstack/graf:/var/lib/grafana
EXPOSE 3001:3000
SHELL ["/bin/bash"]
CMD "chmod -R a+r /etc/grafana && \ "
CMD "chown -R grafana:grafana /var/lib/grafana && \ "
CMD "chown -R grafana:grafana /usr/share/grafana"
CMD "chown -R root:root /etc/grafana && \
/home/core/conf/telegraf/telegraf.conf

它奏效了!感谢您的帮助