繁体   English   中英

如何在 docker-compose 卷中使用 bash 命令命令?

[英]How can use bash command command in docker-compose volume?

这是我用于运行Postgresql docker-compose.yml文件:

似乎docker-compose无法理解pwd bash 命令

version: '3.4'

networks:
  network-set: null

volumes:
  postgres-data: null

services:
  postgres:
    restart: always
    networks:
      - network-set
    image: postgres
    volumes:
      - postgres-data:/var/lib/postgresql/data
      - $(pwd)/command/init.sh:docker-entrypoint-initdb.d/
    dns:
      - 8.8.8.8
      - 4.2.2.4
    env_file:
      - env/postgres.env
    ports:
      - 5432:5432

错误:

WARNING: The pwd variable is not set. Defaulting to a blank string.

题:

如何解决这个错误?

使用. 反而

volumes:
  - ./command/init.sh:docker-entrypoint-initdb.d/

如果您从其他目录运行docker-compose.yml docker-compose命令,这始终被解释为相对于docker-compose.yml文件的位置。

Docker Compose 根本不允许命令替换或大多数其他 shell 功能,除了变量替换的基本形式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM