Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
いまからDockerで始めるGitLab CE/gitlabjp-20170919
Search
Kunihiro Morita
September 19, 2017
Technology
1
1.4k
いまからDockerで始めるGitLab CE/gitlabjp-20170919
GitLab Meetup Fukuoka #1 の資料です。
https://gitlab-jp.connpass.com/event/64349/
Kunihiro Morita
September 19, 2017
Tweet
Share
More Decks by Kunihiro Morita
See All by Kunihiro Morita
絵で覚える AWS 全 (?) サービス入門 〜 できるAWSカルタ 〜/jawsug-20191019
morita92hiro
1
2.5k
決戦用MSセンチネル/alterbooth-20190606
morita92hiro
1
300
勝手にAlibaba Cloud White Beltシリーズ Elastic Compute Service(ECS)/alieaters-20190301
morita92hiro
0
450
夏休みで差がつく!Ansible/ansiblejp-20180803
morita92hiro
2
2.8k
希望のRancher〜コンテナをアウフヘーベン〜/ranchermeetup-20171006
morita92hiro
0
340
月額10円から作るServerless Website〜Azure編〜/serverlessfukuoka-20170825
morita92hiro
8
17k
コンテナ運用いきのこるには/ranchermeetup-20170807
morita92hiro
1
620
AWS Summit Tokyoをお探しですか?/jawsug-20170713
morita92hiro
0
220
ブラウザだけでインフラ操作?〜これさえあれば、何もいらない。〜/fukuazu-20170622
morita92hiro
1
970
Other Decks in Technology
See All in Technology
Bedrock のコスト監視設計
fohte
1
180
技術広報のOKRで生み出す 開発組織への価値 〜 カンファレンス協賛を通して育む学びの文化 〜 / Creating Value for Development Organisations Through Technical Communications OKRs — Nurturing a Culture of Learning Through Conference Sponsorship —
pauli
5
470
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
1.1k
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
780
米軍Platform One / Black Pearlに学ぶ極限環境DevSecOps
jyoshise
2
500
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
350
膨大なデータをどうさばく? Java × MQで作るPub/Subアーキテクチャ
zenta
0
110
Perlの生きのこり - YAPC::Fukuoka 2025
kfly8
0
130
クレジットカードの不正を防止する技術
yutadayo
17
7.8k
組織の“見えない壁”を越えよ!エンタープライズシフトに必須な3つのPMの「在り方」変革 #pmconf2025
masakazu178
1
110
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
320
リアーキテクティングのその先へ 〜品質と開発生産性の壁を越えるプラットフォーム戦略〜 / architecture-con2025
visional_engineering_and_design
0
660
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
192
56k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.3k
Scaling GitHub
holman
463
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Transcript
͍·͔ΒDockerͰ࢝ΊΔ GitLab CE #gitlabjp 2017/9/19 GitLab Meetup Fukuoka #1 1
ా༟ גࣜձࣾΦϧλʔϒʔε ιϦϡʔγϣϯΞʔΩςΫτ @morita92hiro http://hawaku.hateblo.jp 2017/9/19 GitLab Meetup Fukuoka #1
2
About GitLab GitLab unifies issues, code review, CI and CD
into a single UI — https://about.gitlab.com 2017/9/19 GitLab Meetup Fukuoka #1 3
Products 2017/9/19 GitLab Meetup Fukuoka #1 4
GitLab CE/EE1 ηϧϑϗεςΟϯά » Community Edition (CE) <- ࠓ͜ͷ »
Enterprise Edition (EE) » Starter (EES) » Premium (EEP) 1 https://about.gitlab.com/products/ 2017/9/19 GitLab Meetup Fukuoka #1 5
GitLab.com2 SaaS » Free (EES૬) » Bronze » Silver »
Gold 2 https://about.gitlab.com/gitlab-com/ 2017/9/19 GitLab Meetup Fukuoka #1 6
2017.1. 2017/9/19 GitLab Meetup Fukuoka #1 7
2017/9/19 GitLab Meetup Fukuoka #1 8
ʊਓਓਓਓਓਓʊ ʼɹಥવͷࢮɹʻ ʉY^Y^Y^Y^Yʉ 2017/9/19 GitLab Meetup Fukuoka #1 9
ϫΠແࣄࢮ! 2017/9/19 GitLab Meetup Fukuoka #1 10
ࢮʁ » ݸਓతʹAnsibleపఈೖͷݪߘΛཧ͍ͯͨ͠ ͍ʹ » ࠷৽σʔλϩʔΧϧʹ͍ͬͯͨ » ෮چΛԹ͔͍ͰݟΕͨ 2017/9/19 GitLab
Meetup Fukuoka #1 11
ͦͷஔ͍ͱ͍ͯ 2017/9/19 GitLab Meetup Fukuoka #1 12
GitLab CEͷ͓ 2017/9/19 GitLab Meetup Fukuoka #1 13
GitLab CE Features1 » Built-in CI/CD » Cycle Analytics »
Issue Boards » Time tracking » Preview your changes with Review Apps » Publish static websites for free with GitLab Pages 1 https://about.gitlab.com/products/ 2017/9/19 GitLab Meetup Fukuoka #1 14
GitLab Install3 3 https://about.gitlab.com/installation/ 2017/9/19 GitLab Meetup Fukuoka #1 15
Install Methods » apt / yum » Docker <- ࠓ͜ͷ
» Azure VM / AWS AMI / GCP VM » ͘͞ΒͷVPSʮελʔτΞοϓεΫϦϓτʯ<- NEW4 » Ansible Playbook » ͳͲͳͲ 4 https://vps-news.sakura.ad.jp/2017/08/29/startup-gitlab/ 2017/9/19 GitLab Meetup Fukuoka #1 16
Omnibus package installation » ਪ » GitLabશ෦ » ඞཁΞϓϦέʔγϣϯ(Ruby, Nginx,
PostgreSQLͳͲ)ಉࠝ 2017/9/19 GitLab Meetup Fukuoka #1 17
Docker Image5 » Offical » GitLab CE » GitLab EE
» GitLab Runner » based on the Omnibus package 5 https://docs.gitlab.com/ce/install/docker.html 2017/9/19 GitLab Meetup Fukuoka #1 18
Docker Run 2017/9/19 GitLab Meetup Fukuoka #1 19
docker run -d \ -h gitlab.example.com \ -p 80:80 -p
443:443 \ --name gitlab \ --restart always \ -v $PWD/gl_env/etc/gitlab/:/etc/gitlab \ -v $PWD/gl_env/var/log/gitlab:/var/log/gitlab \ -v $PWD/gl_env/var/opt/gitlab:/var/opt/gitlab \ gitlab/gitlab-ce:latest 2017/9/19 GitLab Meetup Fukuoka #1 20
ઃఆ มߋ docker exec -it gitlab vim /etc/gitlab/gitlab.rb ө docker
restart gitlab 2017/9/19 GitLab Meetup Fukuoka #1 21
Docker Compose 2017/9/19 GitLab Meetup Fukuoka #1 22
version: '2' services: gitlab: image: "gitlab/gitlab-ce:latest" restart: always hostname: "gitlab.example.com"
environment: GITLAB_OMNIBUS_CONFIG: | external_url 'http://gitlab.example.com' gitlab_rails['gitlab_shell_ssh_port'] = 22 ports: - "80:80" - "22:22" volumes: - "./gl_env/etc/gitlab:/etc/gitlab" - "./gl_env/var/log/gitlab:/var/log/gitlab" - "./gl_env/var/opt/gitlab:/var/opt/gitlab" 2017/9/19 GitLab Meetup Fukuoka #1 23
ϙʔτ൪߸ » HTTP(80) » HTTPS(443) » SSH(22) 2017/9/19 GitLab Meetup
Fukuoka #1 24
ϙʔτมߋ6 HTTP(S) external_url 'http://gitlab.example.com:8080' external_url 'https://gitlab.example.com:8443' SSH gitlab_rails['gitlab_shell_ssh_port'] = 2224
6 https://docs.gitlab.com/omnibus/docker/README.html#install-gitlab-using-docker-compose 2017/9/19 GitLab Meetup Fukuoka #1 25
version: '2' services: gitlab: image: "gitlab/gitlab-ce:latest" restart: always hostname: "gitlab.example.com"
environment: GITLAB_OMNIBUS_CONFIG: | external_url 'https://gitlab.example.com:8443' gitlab_rails['gitlab_shell_ssh_port'] = 2224 ports: - "8443:8443" - "2224:22" volumes: - "./gl_env/etc/gitlab:/etc/gitlab" - "./gl_env/var/log/gitlab:/var/log/gitlab" - "./gl_env/var/opt/gitlab:/var/opt/gitlab" 2017/9/19 GitLab Meetup Fukuoka #1 26
GitLab Runner 2017/9/19 GitLab Meetup Fukuoka #1 27
http://www.slidedeck.io/codethebuild/slides 2017/9/19 GitLab Meetup Fukuoka #1 28
version: '2' services: gitlab: ʙলུʙ runner: image: gitlab/gitlab-runner:latest restart: always
volumes: - "/var/run/docker.sock:/var/run/docker.sock" - "./gl_env/etc/gitlab-runner:/etc/gitlab-runner" 2017/9/19 GitLab Meetup Fukuoka #1 29
ઃఆ11 docker exec -it gitlab_runner_1 gitlab-runner register 11 https://docs.gitlab.com/runner/register/#docker 2017/9/19
GitLab Meetup Fukuoka #1 30
͋ͱɺ͜ΕΛ͜͏ͯ͠… » Container Registory7 » SMTP (SendGrid)8 » OAuth (AzureAD)9
9 https://docs.gitlab.com/ce/integration/azure.html 8 https://docs.gitlab.com/omnibus/settings/smtp.html 7 https://docs.gitlab.com/ce/administration/container_registry.html#configure-container-registry-under-an- existing-gitlab-domain 2017/9/19 GitLab Meetup Fukuoka #1 31
͜͏͡Όʂ 2017/9/19 GitLab Meetup Fukuoka #1 32
Multi Sites 2017/9/19 GitLab Meetup Fukuoka #1 33
Nginx Proxy10 + Let's Encrypt 10 https://docs.gitlab.com/omnibus/settings/nginx.html#change-the-default-proxy-headers 2017/9/19 GitLab Meetup
Fukuoka #1 34
·ͱΊ » ߏஙapt / yum, DockerͰ؆୯ » ΞοϓσʔτDockerӡ༻ͷํָ͕ » ηϧϑϗεςΟϯάGitLab-CE/EE
» ϗεςΟϯάෆཁͳΒSaaSͷGitLab.comָ͕ » 1ͭͷUIͰIssusɺίʔυϨϏϡʔɺContainer Registory, CI/CDΛ ཧͰ͖ΔͷͰָ 2017/9/19 GitLab Meetup Fukuoka #1 35
͓ΘΓ 2017/9/19 GitLab Meetup Fukuoka #1 36