我遇到了这个问题,我希望在部署容器时尽快运行这些命令(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
答案 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
它奏效了!感谢您的帮助