neo4j 용기를 시작할 때 추가된 설정
개요
docker-compose로neo4j 컨테이너를 가동했습니다.
처음의yaml 파일에서 몇 가지 설정을 추가했기 때문에 기재하고 싶습니다.
초기 구축 시 설정
처음 구축할 때의 설정은 다음과 같다.
docker-compose.yaml
version: '3'
services:
neo4j:
container_name: neo4j
image: neo4j
ports:
- 7474:7474
- 7687:7687
volumes:
- neo4j-data:/data
- neo4j-logs:/logs
- neo4j-conf:/conf
volumes:
neo4j-data:
neo4j-logs:
neo4j-conf:
password의 초기 설정
과제.
neo4j의password는 용기가 시작된 후 UI를 통해 기본 비밀번호를 다시 설정합니다.
나는 웹 응용 프로그램에서neo4j를 사용하여github actions에서 응용 프로그램의 자동 테스트를 진행하고 싶다.
따라서 기본 암호를 수동으로 다시 설정하지 말고 자동으로 설정할 수 있습니다.
이루어지다
컨테이너를 시작할 때 환경 변수에서 암호를 설정하는 방법을 사용했습니다.
docker-compose.yaml
version: '3'
services:
neo4j:
container_name: neo4j
image: neo4j
ports:
- 7474:7474
- 7687:7687
volumes:
- neo4j-data:/data
- neo4j-logs:/logs
- neo4j-conf:/conf
+ environment:
+ # default username and password "neo4j"
+ # neo4j password setting (NEO4J_AUTH=neo4j/<password>)
+ - NEO4J_AUTH=neo4j/neo4jpasswprd
volumes:
neo4j-data:
neo4j-logs:
neo4j-conf:
인증서 설정
과제.
웹 응용 프로그램에서neo4j까지의 통신에bolt 프로토콜을 사용하고 싶습니다.
그러나 SSL 인증서가 설정되어 있지 않아 보안 연결을 설정할 수 없으며 출력 오류로 인해 제대로 작동하지 않습니다.
neobolt.exceptions.SecurityError: Failed to establish secure connection to 'EOF occurred in violation of protocol
이루어지다
컨테이너에 다음 인증서와 개인 키를 설정해야 합니다.
https://neo4j.com/developer/kb/setting-up-ssl-with-docker/#_2_copy_ssl_certificates_and_correct_permissions
tree
$HOME/neo4j/ssl/
└── bolt
├── private.key
└── public.crt
인증서/개인 키가 저장된 디렉터리를 용기에 마운트합니다환경 변수는 인증서와 개인 키의 파일 이름을 지정합니다.
환경 변수의 지정은 다음과 같은 내용을 참고했다.
로컬 디렉토리 구성
tree
.
├── certs
│ ├── private.key
│ └── public.crt
└── docker-compose.yaml
설정 파일docker-compose.yaml
version: '3'
services:
neo4j:
container_name: neo4j
image: neo4j
ports:
- 7474:7474
- 7687:7687
volumes:
- neo4j-data:/data
- neo4j-logs:/logs
- neo4j-conf:/conf
+ - ./certs:/var/lib/neo4j/certificates/bolt
+ environment:
+ - NEO4J_dbms_ssl_policy_bolt_enabled=true
+ - NEO4J_dbms_ssl_policy_bolt_private__key=private.key
+ - NEO4J_dbms_ssl_policy_bolt_public__certificate=public.crt
+ - NEO4J_dbms_connector_bolt_tls__level=REQUIRED
+ - NEO4J_dbms_ssl_policy_bolt_client__auth=NONE
volumes:
neo4j-data:
neo4j-logs:
neo4j-conf:
Reference
이 문제에 관하여(neo4j 용기를 시작할 때 추가된 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/nkoguchi_dev/articles/0743e2fd403210텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)