这是我的 docker-compose 文件。有没有简单的方法来安装 postgres 扩展?我正在尝试安装pg_trgm
.
编辑:我现在有两个 dockerfiles 和一个安装脚本。当我跑步时它似乎不起作用docker-compose up build
Internal server error: pq: operator does not exist: character varying % unknown
services:
db:
build:
context: .
dockerfile: db/Dockerfile
image: postgres
ports:
- "5432:5432"
environment:
- POSTGRES_USER=x
- POSTGRES_PASSWORD=x
- POSTGRES_DB=x
api:
build:
context: .
args:
app_env: ${APP_ENV}
volumes:
- .:/go/src/x/y/z
ports:
- "8080:8080"
数据库/Dockerfile:
FROM postgres
COPY db/install-extensions.sql /docker-entrypoint-initdb.d
db/安装扩展.sql
CREATE EXTENSION IF NOT EXISTS pg_trgm;
尝试这个
FROM postgres
COPY ./install-extensions.sql /docker-entrypoint-initdb.d
并从文件中删除 db。
或者你可以写
version: "3.1"
services:
db:
image: postgres:9.6
restart: always
environment:
POSTGRES_PASSWORD: unit
POSTGRES_USER: unit
POSTGRES_DB: unit
ports:
- 5432:5432
volumes:
- ./scripts:/docker-entrypoint-initdb.d
then
- 创建目录脚本
- 放置您的 .sql 或 .sh 文件
- 删除创建的容器 docker-compose rm -v
- 启动 docker docker-compose up --build
- 在日志中你一定会看到类似这样的内容:
创建的扩展名 https://i.stack.imgur.com/DIqPX.png
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)