【问题标题】:How can I run PostgreSQL in CircleCI with SSL/TLS?如何使用 SSL/TLS 在 CircleCI 中运行 PostgreSQL?
【发布时间】:2021-01-12 10:05:23
【问题描述】:

在 CircleCI 中,我想运行访问 PostgreSQL 数据库的测试,但我想使用 SSL/TLS(使用自签名证书)连接到它。

理想情况下,它将使用默认的 CircleCI PostgreSQL 映像,使用 Docker 执行程序运行,并且不需要任何卷设置或将任何内容复制到容器中。

我该怎么做?

【问题讨论】:

    标签: postgresql ssl tls1.2 circleci


    【解决方案1】:

    您可以在.circleci/config.yml 文件中包含以下内容。它覆盖入口点以启动 bash,然后在 bash 中生成自签名证书和私钥,然后再运行原始入口点。

    version: 2
    jobs:
      build:
        docker:
          - image: python:3.8.7
          - image: circleci/postgres:13.0
            environment:
              POSTGRES_PASSWORD: password
            entrypoint: bash
            command: >
              -c '
                openssl req -nodes -new -x509 -subj "/CN=localhost" -keyout server.key -out server.crt &&
                chown postgres server.key &&
                chmod 600 /server.key &&
                exec /docker-entrypoint.sh -c ssl=on -c ssl_cert_file=/server.crt -c ssl_key_file=/server.key
              '
    

    第一个 image: 是运行测试的地方,在这种情况下,它是一个 Python 图像,但应该可以替换为您选择的图像

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-05
      • 2021-10-06
      • 1970-01-01
      • 2016-02-28
      • 2023-02-02
      相关资源
      最近更新 更多