Yuw*_*Yan 3 docker dockerfile docker-compose docker-machine
这是我的docker-compose.yml,
elasticsearch:\n ports:\n - 9200:9200/tcp\n image: elasticsearch:2.4\n volumes:\n - /data/elasticsearch/usr/share/elasticsearch/data:/usr/share/elasticsearch/data\n command: /bin/bash -c \xe2\x80\x9cecho 'http.cors.enabled: true' > /usr/share/elasticsearch/config/elasticsearch.yml"\nRun Code Online (Sandbox Code Playgroud)\n它抛出错误:
\n\n\n激活 (yaml: [] 映射值在此上下文中不允许,位于第 7 行第 49 列
\n
看起来好像我无法使用冒号:登录command这是真的吗?
冒号是 YAML 引入字典的方式。如果您将其包含在值中,则只需引用该值即可,例如如下所示:
\nimage: "elasticsearch:2.4"\nRun Code Online (Sandbox Code Playgroud)\n或者使用块标量运算符之一,如下所示:
\ncommand: >\n /bin/bash -c \xe2\x80\x9cecho \'http.cors.enabled: true\' > /usr/share/elasticsearch/config/elasticsearch.yml"\nRun Code Online (Sandbox Code Playgroud)\n有关更多信息,请查看Wikipedia 上的YAML页面。您始终可以使用类似在线 YAML 解析器的工具来测试您的 YAML 语法。
\n如果格式正确,您的第一个文档应如下所示:
\nelasticsearch:\n ports:\n - 9200:9200/tcp\n image: "elasticsearch:2.4"\n volumes:\n - /data/elasticsearch/usr/share/elasticsearch/data:/usr/share/elasticsearch/data\n command: >\n /bin/bash -c \xe2\x80\x9cecho \'http.cors.enabled: true\' > /usr/share/elasticsearch/config/elasticsearch.yml"\nRun Code Online (Sandbox Code Playgroud)\n(键中列表标记 ( ) 的缩进-并不是严格必要的,但我发现它有助于使内容更易于阅读)
一个 docker 容器只能运行一个command. 如果要运行多个命令,请将它们放入 shell 脚本中并将其复制到映像中。
| 归档时间: |
|
| 查看次数: |
19422 次 |
| 最近记录: |