전체 프로젝트의 백엔드 역할을하는 Java 애플리케이션이 있으며 우리의 모든 소프트웨어는 완전히 오픈 소스입니다. 문제는 다음과 같습니다 :Devops 파이프 라인에 오픈 소스 애플리케이션 코드를위한 개인 파일 통합
우리는 Google의 여러 API 키, SendGrid to MySQL 데이터베이스 인증 키를 사용합니다. 이 모든 것은 application.properties
파일에 저장됩니다. 우리가 GitHub에 가지고있는 코드는이 파일들이 누락되었다는 것을 제외하고는 마찬가지입니다. 현재 해결 방법은 Heroku에 배포하는 Heroku 리모컨에서만 사용할 수 있다는 것입니다. 변경 사항을 배포 할 때마다 heroku 지점으로 전환하고 마스터 지점에서 변경 사항을 가져 와서이 지점을 리베이스 (rebase) 한 다음 마지막으로 밀어 넣습니다.
곧 containerized 응용 프로그램을 실행하는 cycle.io으로 바뀌므로 기본적으로 Docker으로 변경됩니다. 우리는 appliation을 dockerize하고 MySQL Docker 인스턴스를 배포하고 서로 통신하도록 할 것입니다. 주기를 인용하십시오
환경을 사용하면 컨테이너를 구성하고 통신 할 수 있습니다. 환경에서 컨테이너의 '시작'을 클릭하면 네트워킹이 자동으로 구성되어 환경 내의 다른 컨테이너 에 알립니다.
Cycle.io은 우리가 자동으로 Dockerfile
와 자식 저장소를 Docker Hub에서 하나의 이미지를 연결하거나 가질 수 있습니다. 그것은 거기에서 그것을 집어 든 다음 자동으로 배치합니다.
질문 :이 개인 파일을 코드 빌드 테스트 배포 파이프 라인에 어떻게 통합합니까?. Naively, 나는 건물 전에 이러한 파일을 조사하는 어떤 방법을 생각하고있었습니다. 나는 그렇게 할 방법이 없다. 고정 표시기 배포에 대한 나의 현재의 생각은
- 빌드를 데리러 고정 표시기 허브와 통합 cycle.io 수 있도록 개인 저장소에 도커 허브에
- 푸시를 작동하고 내 로컬 시스템에 고정 표시기 이미지,했다 거기에서
- 는
이 있나요 (I 싶어 너무 타 비스/CI를 통합하는 방법을 나도 몰라) 어떤 분별, 또는 다른 단어의 부족,이 일을 PRO 방법을 검색 하시나요? 우리는 베스트 프랙티스를 따르는 학생들을 찾고 있으며,이 어플리케이션은 대규모로 확장 될 것입니다. 우리는 배포 및 도메인 이름 등을 이미 완전히 지불했지만 우리에게는 전문가의 지침이 없습니다.
cycle.io에서 사용자 환경에 맞는 * 종류의 비밀 데이터를 구성 할 수 없으면이 작업을 올바르게 수행 할 수 없습니다.그렇다면 더 큰 비밀에 쉽게 적응할 수 있습니다. 로컬 파일의 암호를 해독하는 데 필요한 암호화 키나 데이터베이스에 액세스하는 데 필요한 암호 등이 될 수 있습니다. cycle.io의 지원이 없으면 암호를 안전하게 처리 할 수있는 방법이 없기 때문에 * 무언가를 제공해야합니다 * . 개인 도커 허브 자격 증명 만 있다면 모두 개인 도커 저장소를 사용할 수 있지만 보안에 크게 의존하지는 않습니다. –