本記事はwindows環境にてgitなどのインストールにより環境を汚さないためにdockerのみでgitを扱えないかという考えで作成したものです。
目次
- Dockerfile作成
- docker-compose.yml作成
- コンテナ起動
- git clone
- git config 設定
Dockerfile作成
まずはalpine linux にgitを追加したイメージを作成する
FROM alpine
RUN apk update && \
apk add git bash
RUN mkdir /app
- apk コマンドで
git
とbash
をインストール - マウントするディレクトリを作成(任意)
docker-compose.yml
次にデータのマウントを行うためにdocker-compose.ymlを作成する
docker-compose.yml
version: '3'
services:
app:
build: .
working_dir: /app
volumes:
- ./app:/app
-
build: .
先ほどのDockerfileにより作成されたイメージを使用 -
working_dir: /app
コンテナ起動時のデフォルト作業フォルダを指定 -
volumes: - ./app:/app
ホストとコンテナのフォルダの共有設定
コンテナ起動
コンテナのコンソールをbash
により起動
docker-compose run app bash
実行結果
docker-compose run app bash
Creating git_app_run ... done
bash-5.1#
git clone
次にworkディレクトリに任意のリポジトリをクローン
bash-5.1# git clone https://github.com/<リポジトリ> .
.
(カレントディレクトリ)を選択することにより作業ディレクトリへ直接クローンすることができる
git config 設定
※ 2021/08/20現在こちらの設定については意味がないことが判明したため後日修正を致します。
最後に、現状ではcloneとcheckoutなどの変更を加えない作業しかできないためconfigを設定し、commitやpushをできるようにする
git config --global user.name <github ユーザ名>
git config --global user.email <github email>
git config --global user.password <github parsonal token>
以上
結果
gitを普通にインストールした方が楽ですね