GitLab의 자체 제작 웹 앱을 Docker 이미지를 빌드 할 때 clone
메모로 남겨주세요.
운영 환경
Windows10 Pro
GitLab
참고문헌
절차
GitLab의 내 계정에 대한 Token 받기
GitLab의 오른쪽 상단 메뉴에서 'Settings'를 누릅니다.
왼쪽 메뉴에서 "Access Token"을 누릅니다.
이름에 임의의 Token 이름을 입력하고 Scope api를 선택하고 Create personal access token을 누릅니다.
작성에 성공하면 Token이 표시되므로 삼가해 둡니다.
Docker 이미지 빌드
다음과 같이 Dockerfile을 만듭니다.
Dockerfile
# Nodeのexpressのアプリを入れたかったので、nodeのイメージを利用
FROM node:10.12
# 作業ディレクトリを指定
WORKDIR /src
# 作成者情報を記述
LABEL maintainer="y.matsumoto <[email protected]>"
# -Cオプションでcloneするディレクトリを明記。https://oauth2:[GitLabで取得したToken]@gitlab.com/[プロジェクト名]/[リポジトリ名].gitがURLの構文
RUN git -C / clone chat https://oauth2:[GitLabで取得したToken]@gitlab.com/[プロジェクト名]/[リポジトリ名].git
# expressの実行ファイル系がappディレクトリに入っているので作業ディレクトリにコピー
RUN cp -r /[リポジトリ名]/app/* /src
# clone後、不要なファイルを削除
RUN rm -rf /[リポジトリ名]
# 作業ディレクトリにアプリのpackage.jsonがコピーされているので、npm installがそのまま実行できる
RUN npm install
# コンテナを実行時、サーバが開始するように設定
CMD npm start
Dockerfile이 있는 디렉토리에서 다음 명령을 실행하여 빌드 및 컨테이너를 실행합니다.
docker image build . --tag [任意のタグ名]
docker container run -d -p 3000:3000 [指定したタグ名]
브라우저로 접속하면 문제없이 일어났습니다!
이상입니다.
빌드시에 자작의 앱의 최신판을 pull한 docker 이미지를 이번 작성했습니다만,
나중에 registry에 push하고, Kubernetes에서 pull해서 이용할 수 있는 형태를 목표로 해 가고 싶습니다.
만약 지적 등 있으면 꼭 부탁드립니다!
Reference
이 문제에 관하여(GitLab의 자체 제작 웹 앱을 Docker 이미지를 빌드 할 때 clone), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yuta-matsumoto/items/3df4483beed8925ff8a1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)