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
440
夏休みで差がつく!Ansible/ansiblejp-20180803
morita92hiro
2
2.7k
希望の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
210
ブラウザだけでインフラ操作?〜これさえあれば、何もいらない。〜/fukuazu-20170622
morita92hiro
1
960
Other Decks in Technology
See All in Technology
シークレット管理だけじゃない!HashiCorp Vault でデータ暗号化をしよう / Beyond Secret Management! Let's Encrypt Data with HashiCorp Vault
nnstt1
2
130
Automating Web Accessibility Testing with AI Agents
maminami373
0
110
AWS環境のリソース調査を Claude Code で効率化 / aws investigate with cc devio2025
masahirokawahara
2
1k
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
150
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
32
12k
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
110
RSCの時代にReactとフレームワークの境界を探る
uhyo
2
180
新規案件の立ち上げ専門チームから見たAI駆動開発の始め方
shuyakinjo
0
630
そのコンポーネント、サーバー?クライアント?App Router開発のモヤモヤを可視化する補助輪
makotot
4
780
Kiroと学ぶコンテキストエンジニアリング
oikon48
5
3.9k
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
900
モバイルアプリ研修
recruitengineers
PRO
5
1.6k
Featured
See All Featured
Fireside Chat
paigeccino
39
3.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Building an army of robots
kneath
306
46k
Speed Design
sergeychernyshev
32
1.1k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Bash Introduction
62gerente
614
210k
YesSQL, Process and Tooling at Scale
rocio
173
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
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