The document discusses a 100-day challenge by NTT Corporation and the Japan Cloud Foundry Group to deploy 100 open source apps to Cloud Foundry. They successfully deployed 97 apps using various buildpacks and services, with 3 apps failing to deploy due to app-specific issues. The document provides details on the challenge and lessons learned around deploying different programming languages and frameworks to Cloud Foundry.
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Cloud Foundry 百日行 振り返り
1. Cloud
Foundry
100-‐day
Challenge
-‐
Deploy
100
OSS
apps
onto
CF
Noburou
TANIGUCHI
Nippon
Telegraph
and
Telephone
CorporaAon
/
Japan
Cloud
Foundry
Group
2. Who
I
am
• Work
for
NTT
– NTT:
Nippon
Telegraph
and
Telephone
Corp.
• A
member
of
cfgrjp
– cfgrjp:
Japan
Cloud
Foudry
Group
• A
CF-‐related
work
– Cheap
Update
Buildpack
hNps://bitbucket.org/nota-‐ja/cheap-‐update-‐buildpack
3. Cloud
Foundry
100-‐day
Challenge
• hNp://blog.cloudfoundry.gr.jp/search/
label/百日行
• 「百日行」in
Japanese
– 百
(hyaku):
100
– 日
(nichi):
day
– 行
(gyou):
discipline,
esp.
in
religional
context
4. Cloud
Foundry
100-‐day
Challenge
• What
– Deploy
100
OSS
apps
onto
CF
– One
app
(and
blog
post)
per
(business)
day
– Since
2015/06/04
– 100
posts
finished
at
2015/11/16
• 6
core
writers
+
3
guest
writers
• All
in
Japanese
5. Cloud
Foundry
100-‐day
Challenge
• Why
– More
CF
recogniAon
in
Japan
– Learn
how
to
make
apps
run
on
CF
– Explore
new
features
desirable
for
CF
users
9. NG:
Milkode
• hNps://github.com/ongaeshi/milkode
– Source
code
search
engine
with
Web
UI
• Runs
on
Heroku
• Failed
to
stage
on
CF
– failed
compiling
"rroonga"
gem's
naAve
extension
• Need
to
compile
some
binaries
against
cflinuxfs2
environment
• May
run
if
we
have
enough
Ame
15. Jenkins
• hNp://jenkins-‐ci.org/
– Most
popular
CI
tool
• Very
easy
with
jenkins-‐buildpack
• Configs
in
local
file
– Jenkins
Job
Builder
– (Database
plugin)
• Master
/
Slave
composiAon
• =>
Testbed
16. SugarCRM
• hNp://www.sugarcrm.com/
– Well-‐known
open
source
CRM
• PHP
extensions
• Custom
Apache
seongs
• Configs
in
local
files
– Redeploy
19. MaNermost
• hNp://www.maNermost.org/
– Open
source
Slack
alternaAve
• Most
hardest
ever
• Go
+
Node.js
(+
Ruby)
– go-‐buildpack
– heroku-‐buildpack-‐apt
• with
many
workarounds
• PORT
• DATABASE_URL
/
VCAP_SERVICES
20. MulA
vs
App-‐Specific
Buildpack
• heroku-‐buildpack-‐mulA
– Easy
to
understand
– Less
flexible
– Bothersome
• Requires
addiAonal
file(s)
• App-‐specific
buildpack
– More
flexibile
– Less
(mostly
no)
addiAonal
files
– Requires
to
be
maintained
outside
of
CF
21. CommaFeed
• hNps://www.commafeed.com/
– Java
/
Dropwizard-‐based
feed
reader
• My
first
actual
java-‐buildpack
study
– Know
so
many
features
in
java-‐buildpack
• Finally
use
Java
Main
Container
and
Java
OpAons
• Configs
in
local
file
• PORT
• DATABASE_URL
22. Three
Important
Points
for
Apps
• Must
have
dynamic
port
binding
• Should
avoid
configs
/
data
in
local
file
• BeNer
to
get
service
credenAals
from
env
23. Service
CredenAals
• VCAP_SERVICES
• DATABASE_URL
Seems
having
no
standard
format
– Ruby
on
Rails
– Node.js
– Golang
– PHP
(Pear)
• JDBC_URL
24. Difficult
Things
• Problem
isolaAon
/
debugging
– staging
– starAng
– running
• Should
understand
various
languages
/
frameworks
• Should
understand
usage
of
various
buildpacks
25. Some
Debugging
Tricks
• Basic
– `cf
logs
<appname>`
in
another
terminal
• Staging
– JBP_LOG_LEVEL=DEBUG
– fork
buildpack
and
`set
–x`
• StarAng
– netcat
dummy
daemon
– (ssh
to
dea_ng
&
login
to
container)
• Running
/
Overall
– How
to
debug
the
Cloud
Foundry
Java
Buildpack
hNp://blog.anynines.com/debug-‐cloud-‐foundry-‐java-‐buildpack/
27. Good
things
• Experience
how
to
use
Cloud
Foundry
– (not
how
to
build
/
operate)
– What
applicaAon
is
good
for
CF
– How
to
migrate
exisAng
applicaAons
to
CF
– Many
skills
for
trouble
shooAng
28. A
Retrospect
• More
CF
recogniAon
– A
certain
result
– But
the
aNenAon
to
CF
in
Japan
is
sAll
not
so
high
• Making
apps
run
on
CF
– Our
team
have
learned
a
lot
• New
features
desirable
for
CF
users
– Ease
of
debugging
for
dev
– Ops
requirements
is
yet
to
explore
29. Finally
..
• Most
applicaAons
can
be
made
to
run
on
Cloud
Foundry
– With
a
certain
effort
and
Ame
• I
want
MORE
apps
to
be
CF-‐ready