2017-12-01 14 views
0

에 포스트 그레스 역할을 설정하는 방법은 여기 방향을 따라 : https://circleci.com/docs/2.0/postgres-config/는 CircleCI 2.0

그리고 내 관련 원 설정은 다음과 같습니다

test: 
    docker: 
     - image: circleci/node:6.11.0 
     - image: circleci/mongo:3.2.13 
     - image: circleci/postgres:9.5 
     environment: 
     - POSTGRES_USER=custom 
     - POSTGRES_PASSWORD=password 
     - POSTGRES_DB=custom 
     - image: rabbitmq:3.5.4 
    steps: 
    etc etc... 

하지만하려 할 때 다음과 같은 오류를 얻고있다 localhost:5432 내 nodejs 응용 프로그램에 연결 :

error: error during connection: SequelizeConnectionError: FATAL: role "ubuntu" does not exist

가 왜 POSTGRES_USER=custom을 정의한 경우 "우분투"를 사용하려고합니다.

내 환경 변수를 제거해도 작동하지 않습니다. 그리고 왜 그것이 작동하지 않는지 이해하지 못합니다. 왜냐하면 그것은 문서에 따라 우분투가 기본이되어야하기 때문입니다.

답변

0

설정 파일이 올바르게 보이지 않습니다. 이것이 일반적인 형식입니다.

version: 2.0 
jobs: 
    build: 
    docker: 
    - image: circleci/node:6.11.0 
    - image: circleci/postgres:9.5 
     environment: 
     - POSTGRES_USER=custom_user 
     - POSTGRES_PASSWORD=custom_password 
     - POSTGRES_DB=custom_db 

    working_directory: ~/your_project_dir 

    steps: 
    - 
    - 
    .. 

그런 다음 db- 사용자, 암호 및 데이터베이스 이름이 위의 환경 블록에서 언급 한 것과 동일한 지 확인하십시오. 코드와 .env 개의 파일에서 값을 다시 확인해야 할 수도 있습니다. 당신은 루비 또는 노드를 사용하는 경우

jdbc:postgresql://localhost/custom_db?user=custom_user&password=custom_pass

, 당신은 당신의 루비-ENV의/노드의 변수를 설정해야 할 수도 있습니다.