首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用映射卷到kong容器的持久数据

使用映射卷到kong容器的持久数据
EN

Stack Overflow用户
提问于 2021-07-12 11:20:48
回答 1查看 48关注 0票数 0

我正在努力学习kong,使用docker-compose,我能够运行kong+konga并创建服务。但是每当我做docker-compose时,我会丢失所有的数据:

代码语言:javascript
复制
kong:
container_name: kong
image: kong:2.1.4-alpine
restart: unless-stopped
networks:
  kong-net:
    ipv4_address: 172.1.1.40
volumes:
  - kong_data:/usr/local/kong/declarative
environment:
  KONG_DATABASE: postgres
  KONG_PG_HOST: kong-database
  KONG_PG_USER: kong
  KONG_PG_PASSWORD: password
  KONG_ADMIN_LISTEN: "0.0.0.0:8001, 0.0.0.0:8444 ssl"
  KONG_DB_UPDATE_FREQUENCY: 1m
  KONG_PROXY_ACCESS_LOG: /dev/stdout
  KONG_ADMIN_ACCESS_LOG: /dev/stdout
  KONG_PROXY_ERROR_LOG: /dev/stderr
  KONG_ADMIN_ERROR_LOG: /dev/stderr
depends_on:
  - kong-migration
ports:
  - "8001:8001"
  - "8444:8444"
  - "8000:8000"
  - "8443:8443"

看起来卷映射不起作用。pleasE帮助

EN

回答 1

Stack Overflow用户

发布于 2021-07-18 17:57:45

如果你想在你的kong docker-compose关闭时保留数据,最好在数据库模式下使用kong。

因此,您将为数据库创建一个持久卷,它将保存您所做的更改。

通过kong manual,您会发现支持两种类型的数据库: postgresql和cassandra

Postgresql是我的小项目的选择,因为我不打算使用cassandra数据库进行巨大的水平规模。

正如你将在手册中发现的,使用docker和数据库启动你的项目是非常简单的。但请记住,向您的数据库服务添加一个卷,因为在手册中提到的示例中没有卷。

对于postgresql,您可以在docker run命令中添加:-v /custom/mount:/var/lib/postgresql/data

代码语言:javascript
复制
volumes:
    postgress-data:
        driver: local

services:
    postgress:
        restart: unless-stopped
        image: postgres:latest
        environment:
            - POSTGRES_USER=your_db_user
            - POSTGRES_DB=kong
            - POSTGRES_PASSWORD=your_db_password
        volumes:
            - postgres-data:/var/lib/postgresql/data
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68341550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档