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.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
激動の時代を爆速リチーミングで乗り越えろ
sansantech
PRO
1
120
AI時代の発信活動 ~技術者として認知してもらうための発信法~ / 20251028 Masaki Okuda
shift_evolve
PRO
1
110
デザインとエンジニアリングの架け橋を目指す OPTiMのデザインシステム「nucleus」の軌跡と広げ方
optim
0
120
Behind Postgres 18: The People, the Code, & the Invisible Work | Claire Giordano | PGConfEU 2025
clairegiordano
0
140
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
130
OTEPsで知るOpenTelemetryの未来 / Observability Conference Tokyo 2025
arthur1
0
280
可観測性は開発環境から、開発環境にもオブザーバビリティ導入のススメ
layerx
PRO
4
1.2k
NLPコロキウム20251022_超効率化への挑戦: LLM 1bit量子化のロードマップ
yumaichikawa
3
530
20251027_findyさん_音声エージェントLT
almondo_event
2
460
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
350
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
150
OPENLOGI Company Profile for engineer
hr01
1
45k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
347
40k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Thoughts on Productivity
jonyablonski
70
4.9k
KATA
mclloyd
PRO
32
15k
We Have a Design System, Now What?
morganepeng
53
7.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
What's in a price? How to price your products and services
michaelherold
246
12k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Designing for Performance
lara
610
69k
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