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
Containing Atlassian
Search
David McKay
October 26, 2016
Technology
1
87
Containing Atlassian
David McKay
October 26, 2016
Tweet
Share
More Decks by David McKay
See All by David McKay
The Telegraf Toolbelt (InfluxDays SF, 2019)
rawkode
0
170
The DShell Pattern (DevOpsDays London 2019)
rawkode
0
220
Cloud Native Telegraf - Cloud Native London (September 2019)
rawkode
0
88
Developing Your Own Flux Packages (InfluxDays London 2019)
rawkode
0
140
Introduction to Time Series (Software Circus, April 2019)
rawkode
0
150
Introduction to Time Series (Cloud Native Kraków, April 2019)
rawkode
0
100
Introduction to Time Series (Cloud Native Wales, April 2019)
rawkode
0
100
Introduction to InfluxDB 2.0 (Kubernetes London - February 2019)
rawkode
0
94
Kickass Development Environments with Docker (PHPBenelux 2019)
rawkode
0
140
Other Decks in Technology
See All in Technology
AWS SES VDMで 将来の配信事故を防げた話
moyashi
0
200
メタデータ同期に潜んでいた問題 〜 Cache Stampede 時の Cycle Wait を⾒つけた話
lycorptech_jp
PRO
0
150
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
150
事例に見るスマートファクトリーへの道筋〜工場データをAI Readyにする実践ステップ〜
hamadakoji
0
230
DX Improvement at Scale
ntk1000
3
390
組織全体で実現する標準監視設計
yuobayashi
1
180
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.7k
【SLO】"多様な期待値" と向き合ってみた
z63d
2
320
AIエージェント・エコノミーの幕開け 〜 オープンプロトコルが変えるビジネスの未来 〜
shukob
0
110
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
11k
クラウド時代における一時権限取得
krrrr38
1
180
トップマネジメントとコンピテンシーから考えるエンジニアリングマネジメント
zigorou
4
760
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
380
It's Worth the Effort
3n
188
29k
Mind Mapping
helmedeiros
PRO
1
110
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
210
Everyday Curiosity
cassininazir
0
150
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
68
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
140
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Tell your own story through comics
letsgokoyo
1
830
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Transcript
Containing Atlassian Running the Atlassian Suite with Docker
David McKay @rawkode Software Consultant Serial Meetup Organiser
Containing Atlassian
Why Containers?
Containment for neatness
Containment for security
Containment for speed
Why Docker?
Because it’s a trendy
Because it’s good on the CV
Because all your friends are doing it
None
Docker OK; I’m Serial Now • Industry Leader • Always
Evolving • Proven at Scale • Tooling for all environments • OCI / runC • Official Images
Vocabulary • Dockerfile • Image • Container
Dockerfile FROM ubuntu:16.10 RUN apt-get update RUN apt-get install x
y z CMD java
Docker Image $ docker build -t acme/jira:7.0 .
Docker Images $ docker images REPOSITORY TAG IMAGE ID CREATED
SIZE elixir 1.3 b80c8e9d71f9 3 weeks ago 758.7 MB acme/jira 7.0 e552540688e1 4 weeks ago 224.4 MB alpine 3.4 ee4603260daa 4 weeks ago 4.803 MB
Docker Container $ docker run acme/jira:7.0
Orchestration With Docker Swarm Mode
Swarm Mode ≇ Swarm
Vocabulary • Node • Manager • Worker • Service
Creating a Swarm $ docker swarm init
Joining a Swarm $ docker swarm join --token xxxx 192.168.66.100:2377
Creating a Service $ docker service create --name jira acme/jira:7.0
Creating Services $ docker service create --name crowd acme/crowd:2.10 $
docker service create --name jira acme/jira:7.0 $ docker service create --name confl.. acme/confluence:5.10
Scaling
Scaling a Service $ docker service scale jira=4
Service Discovery
Scaling a Service $ wget http://jira:8080 $ wget http://confluence:8081
Oh yeah, and you get load balancing for free ...
Upgrading
Scaling a Service $ docker service update --image acme/jira:10.1 jira
Potential Problems
Configuration
Configuration $ docker service create --env DB_HOST=postgres $ docker service
update --env-add DB_HOST=postgres
Persistence
Persistence $ docker service create --mount \ type=mount, source=/mnt/volume, destination=/path/in/container
⚖ How can I scale this?
Scaling the Persistence NFS / Fuse mount on all nodes
Feeling fancy? Check out CernVM-FS!
This brings other problems
With the Atlassian Suite You can deal with it, as
most writes to the disk are simply cache! Except BitBucket
Official Support?
⏳ It’s being worked on…
Atlassian on Docker Hub https://hub.docker.com/r/atlassian/
☹ BitBucket & Confluence only
Want more? Pester @durdn
That’s it! Any questions?