【CircleCI】【Rails】【Docker】ArgumentError: key must be 16 bytes
4284 단어 dockerfile도커CircleCI2.0Rails6
assets:precompile에서 ArgumentError: key must be 16 bytes 발생
Dockerfile.railsARG RAILS_MASTER_KEY
ENV RAILS_MASTER_KEY ${RAILS_MASTER_KEY}
**略
RUN bundle exec rails assets:precompile # 問題の箇所
아래 오류 사진
대처 내용
로컬 환경에서 docker build 해봐도 같은 에러는 발생하지 않았으므로, 값의 전달에 문제가 있다고 가설.
.circleci/config.ymlversion: 2.1
orbs:
aws-ecr: circleci/[email protected]
workflows:
lint_and_test_and_ecr_push:
jobs:
- aws-ecr/build-and-push-image:
account-url: AWS_ECR_ACCOUNT_URL_ENV_VAR_NAME_RAILS
aws-access-key-id: ACCESS_KEY_ID_ENV_VAR_NAME
aws-secret-access-key: SECRET_ACCESS_KEY_ENV_VAR_NAME
dockerfile: Dockerfile
no-output-timeout: 20m
extra-build-args: "--build-arg RAILS_MASTER_KEY=${RAILS_MASTER_KEY}" # これが抜けていた…
path: .
region: AWS_REGION_ENV_VAR_NAME
repo: repo-name
filters:
branches:
ignore:
- master
원래 --build-arg
에 대해 지견이 없었던 것이 패인. 잘 공부합시다.
Dockerfile
로 ARG
를 지정해 docker build 시에 지정할 수 있는 인수를 선언해도, 내용을 가져오지 않으면 의미가 없다.
이미지
ARG RAILS_MASTER_KEY
ENV RAILS_MASTER_KEY ${RAILS_MASTER_KEY}
**略
RUN bundle exec rails assets:precompile # 問題の箇所
로컬 환경에서 docker build 해봐도 같은 에러는 발생하지 않았으므로, 값의 전달에 문제가 있다고 가설.
.circleci/config.yml
version: 2.1
orbs:
aws-ecr: circleci/[email protected]
workflows:
lint_and_test_and_ecr_push:
jobs:
- aws-ecr/build-and-push-image:
account-url: AWS_ECR_ACCOUNT_URL_ENV_VAR_NAME_RAILS
aws-access-key-id: ACCESS_KEY_ID_ENV_VAR_NAME
aws-secret-access-key: SECRET_ACCESS_KEY_ENV_VAR_NAME
dockerfile: Dockerfile
no-output-timeout: 20m
extra-build-args: "--build-arg RAILS_MASTER_KEY=${RAILS_MASTER_KEY}" # これが抜けていた…
path: .
region: AWS_REGION_ENV_VAR_NAME
repo: repo-name
filters:
branches:
ignore:
- master
원래
--build-arg
에 대해 지견이 없었던 것이 패인. 잘 공부합시다.Dockerfile
로 ARG
를 지정해 docker build 시에 지정할 수 있는 인수를 선언해도, 내용을 가져오지 않으면 의미가 없다.이미지
참고
Dockerfile ARG 입문
시 rc ぇ시 / 아 ws-에 cr @ 6.10.0
Dockerfile의 "ENV"와 "ARG"와 "환경 변수"에 대해
Rails 5.2 + Docker, RAILS_MASTER_KEY를 이미지 작성시에 동적으로 넣는 방법
Reference
이 문제에 관하여(【CircleCI】【Rails】【Docker】ArgumentError: key must be 16 bytes), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nossy/items/cd6c9b5d0c3d626d8575텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)