dockerでGitBucketを実行してみた(まだ途中)

例によって自分用のメモだから間違ってるかもしれん…

Dockerfile

FROM base/archlinux
# upgrade packages
RUN echo "Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch" >> /etc/pacman.d/mirrorlist
RUN echo "Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch" >> /etc/pacman.d/mirrorlist
RUN echo "Server = https://www.archlinux.org/packages/$repo/$arch/" >> /etc/pacman.d/mirrorlist
RUN pacman -Syy --noconfirm
RUN pacman -S --noconfirm archlinux-keyring
RUN pacman -Syu --noconfirm
RUN pacman-db-upgrade
RUN pacman -S tomcat-native --noconfirm
RUN pacman -S jdk7-openjdk --noconfirm
RUN pacman -S tomcat8 --noconfirm
RUN pacman -S wget --noconfirm
RUN wget -P /var/lib/tomcat8/webapps https://github.com/takezoe/gitbucket/releases/download/3.4/gitbucket.war
EXPOSE 8080
CMD ["/usr/share/tomcat8/bin/catalina.sh", "run"]

ビルド
[bash]
docker build –rm -t mattyan/gitbucket .
[/bash]
実行
[bash]
docker run –rm -v `pwd`/repositories/:/root/.gitbucket/ -ti -p 8080:8080 -p 10020:10020 mattyan/bitbucket
[/bash]
(rootで実行してるから)/root/.gitbucket以下にレポジトリとか設定とか入ってるみたいだから、それをボリュームでホストに拾いだして保存。
ポート8080はtomcatの接続用、10020はgitbucketのリポジトリにsshで接続するためのポート。
ただし、sshはキーの設定をしてないから、まだcloneも確認してない。
…前々からなんとなく思ってたけど、このbase/archlinuxって普通のarchlinuxじゃない気がする…
/etc/pacman.d/mirrorlistにほとんど何もかかれてないし、そのままだとpacman -Syuすら失敗するし…

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です