내 CFML/Vue.js 애플리케이션을 위한 CI/CD 워크플로 구축
내 워크플로우
내 프로젝트의 목표는 Docker에서 실행되는 CFML( Lucee ) 및 Vue.js로 작성된 전체 스택 애플리케이션용 CI/CD 워크플로를 만드는 것이었습니다.
CI
다음은 내 CI 워크플로의 간략한 개요입니다.
CD
semver 태그를 사용하여 Github 릴리스를 생성하면 내 배포 프로세스가 트리거됩니다. 다음은 일반적인 개요입니다.
내가 사용하는 Github 작업
내 응용 프로그램이 Docker와 함께 실행 중이므로 Docker의 여러 작업을 활용하고 있습니다.
docker/setup-buildx-action (Buildx는 다중 플랫폼 이미지 빌드를 허용합니다.)
docker/build-push-action (이 작업은 이미지를 빌드하고 선택적으로 리포지토리에 푸시합니다.)
docker/setup-qemu-action (다른 플랫폼용 이미지 빌드에 필요)
docker/login-action (이미지를 푸시할 수 있도록 Dockerhub에 로그인)
제출 카테고리:
DIY 배포
Yaml 파일 또는 코드 링크
jsteinshouer / 영화 목록 앱
내 영화 앱
시작하기
도커 비밀
개발을 위해 docker-compose가 개발 환경에 대한 데이터베이스 자격 증명을 전달하는 데 사용할 비밀을 생성합니다.mkdir secrets
openssl rand 20 | base64 -w 0 > ./secrets/MYSQL_ROOT_PASSWORD
openssl rand 20 | base64 -w 0 > ./secrets/MYSQL_PASSWORD
openssl rand 32 | base64 -w 0 | docker secret create JWT_SECRET -
echo "mydbuser" > ./secrets/MYSQL_USER
환경 변수
환경에 대한 .env
파일을 생성합니다.cp .env.example .env
OMDB API
이 응용 프로그램은 Open Movie Database API를 사용합니다. https://www.omdbapi.com/에서 무료 API 키를 등록할 수 있습니다.
.env 파일에서 OMDB_API_KEY=<yourkeyhere>
를 설정합니다.
Docker Compose를 사용하여 애플리케이션을 실행합니다.
docker compose up
VS 코드 - 원격 컨테이너
VS code 원격 컨테이너 확장을 사용하여 애플리케이션을 실행할 수도 있습니다.
테스트 실행
Coldbox API 테스트
이 명령을 사용하여 터미널에서 API 테스트를 실행할 수 있습니다.
docker exec -it movie-app-api
…
View on GitHub
CI - main.yml
CD - release.yml
추가 리소스/정보
다음은 워크플로우를 설정하는 데 사용한 몇 가지 리소스입니다.
mkdir secrets
openssl rand 20 | base64 -w 0 > ./secrets/MYSQL_ROOT_PASSWORD
openssl rand 20 | base64 -w 0 > ./secrets/MYSQL_PASSWORD
openssl rand 32 | base64 -w 0 | docker secret create JWT_SECRET -
echo "mydbuser" > ./secrets/MYSQL_USER
cp .env.example .env
docker compose up
docker exec -it movie-app-api
Reference
이 문제에 관하여(내 CFML/Vue.js 애플리케이션을 위한 CI/CD 워크플로 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jsteinshouer/building-a-cicd-workflow-for-my-cfmlvuejs-application-2c29텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)