►
Description
In this video, I showcase how to use the OpenShift Container Application Platform to achieve instant developer gratification. I walk through how to set up a project from scratch and then reveal the true magic and power of the platform by hooking it up to my IDE for automatic deployments on every file change.
A
Hello,
everybody.
This
is
grant
your
friendly,
open
chef,
developer,
evangelist
I'm,
coming
at
you
today
from
tornado
headquarters
in
North
Carolina.
So
what
I
mean
by
that?
There
is
actually
tornadoes
going
on
outside
right
now,
so
you
may
be
able
to
hear
the
the
wind
in
the
background,
but
today
I
just
wanted
to
take
a
few
minutes
late
in
the
afternoon.
It's
about
4
o'clock
to
show
you
guys
another
video
of
some
of
the
awesome
stuff
we've
been
working
on
with
our
new
version
of
our
container
application
platform
called
OpenShift.
A
A
We're
gonna
be
using
the
OpenShift
all-in-one
image,
which
is
always
the
latest
and
greatest
upstream
version
of
the
open-source
project.
If
you
don't
have
it
yet
don't
worry,
all
you
need
to
do
is
go
to
OpenShift
dot,
org,
slash
vm,
and
this
gives
you
the
instructions
to
download
and
run
the
all-in-one
image.
The
only
requirements
is
that
you
have
vagrant
and
VirtualBox
installed.
Now.
A
I
already
have
this
running,
so
let's
skip
this
and
go
ahead
and
login
I'm
gonna
login
to
the
platform,
as
my
user
here
and
I'm
going
to
go
ahead
and
remember
the
password.
Why
not
it's
my
local
OpenShift
environment
now
as
a
PHP
developer,
the
first
thing
I
want
to
do
is
create
a
new
project
and
today's
video
we're
gonna
be
showing
code
igniter
and
how
you
can
save
your
changes
and
have
them
automatically
show
up
inside
of
your
docker
container.
A
Now
this
is
gonna,
be
the
same
for
any
framework
that
you
use,
but
I
just
created
a
base,
github
repository
with
the
latest
and
greatest
code
igniter
framework,
so
I'm
gonna
call
this
code
igniter
and
the
display
name
is
code.
Igniter
I
can
spell
it
right
project
and
we're
not
even
gonna,
give
it
a
description.
We're
just
gonna
click
on
create
here.
Now
that
we
have
a
project,
we
need
to
decide
what
type
of
containers
that
we
want
to
run
that
make
up
our
application.
A
I'm
gonna
scroll
down
almost
like
PHP
five,
six
and
I'm
gonna
call
this
my
CI
PHP
and
now
it's
asking
for
a
git
repository
URL.
So
let
me
hop
on
over
to
github
real
quick
and
go
to
/ji
Shipley.
That's
my
github
account
I'm
gonna
click
on
my
repository,
so
I
just
created
this
brand
new
CI
OpenShift
repository
I'm
gonna
click
on
that
you're,
probably
wondering
what's
in
this
repository.
The
only
thing
that's
in
here
is
I
admitted
an
empty
repository.
I
downloaded
the
latest
version
of
CodeIgniter
and
copy
to
dance.
A
I
haven't
done
any
other
modifications
other
than
this
simple
readme
file
here.
So
what
I
want
to
do
is
grab
the
repo
URL
I'm
just
going
to
copy
that
to
my
clipboard
go
back
over
to
my
open
shift,
console
paste
that
in
and
click
on,
create
so
what's
actually
happening
under
the
covers
here
is
that
open
shift
is
using
our
open
source
project
called
source
to
image.
That's
going
to
take
a
base,
PHP
5:6,
docker
image.
A
It's
then
going
to
take
that
github
repository
with
the
PHP
source
code
in
it,
and
it's
going
to
run
a
build
of
that
source
code
and
then
create
a
new
docker
image
on
the
fly
that
contains
the
PHP
runtime,
as
well
as
your
source
code.
So
let's
go
ahead
and
go
to
our
PHP
project
overview.
Here
we
have
a
build,
that's
running,
so
that's
interesting.
Let's
take
a
look
at
that.
A
All
right
we
can
see
the
build
is
actually
running
and
what's
interesting
about
this
particular
build
is
CodeIgniter
uses
composer
for
dependency
management
and
just
to
illustrate
the
beauty
of
source
to
image
you
can
see
the
source
to
image
actually
recognizes
that
for
PHP
and
installs
those
dependencies.
Now
this
will
take
a
couple
minutes
like
I
said,
while
it's
building
this
docker
container
on
the
fly
it
looks
like
the
container
has
been
built
now
and
it's
pushing
the
image
up
to
the
internal
openshift
registry.
A
Ok,
it
looks
like
our
image
has
been
successfully
pushed
now
and
so
now
that
that
image
is
in
the
docker
registry
running
inside
of
openshift
OpenShift,
the
platform
we'll
they'll
spin
up
that
container.
For
so,
let's
go
back
to
the
overview.
We
can
see
that
we
have
one
pod
running
now,
so
let's
click
on
the
exposed,
URL
and
just
take
a
look
at
what
the
application
looks
like
now.
If
you're
familiar
with
coding
Nider,
you
know
this
is
just
the
standard.
A
Welcome
page
okay,
so
let's
go
back
to
the
console
and
then
let's
look
at
how
we're
going
to
start
developing
against
this
project,
but
we're
actually
going
to
be
using
the
Eclipse
PHP
development
environment
called
PDT.
Now,
if
you're
in
NetBeans
or
IntelliJ
user,
this
process
will
work
exactly
the
same
for
you.
So
let's
go
ahead
and
go
over
to
our
Eclipse
environment.
You
can
see
I
just
have
an
empty
workspace
here.
A
Just
gonna
call
it
my
code
igniters
as
we're
working
with
the
CodeIgniter
model--view--controller
framework,
then
I'm
gonna
select
to
create
a
project
at
an
existing
location,
and
this
is
where
I'm
just
gonna
browse
to
my
git
source,
repo,
that
I
have
cloned
locally
and
it
just
pops
up
automatically
for
me
there
so
I'm
gonna
click
open
and
we're
using
PHP,
5
6,
all
good
there.
We
yeah
let's
go
ahead
and
enable
JavaScript
we're
just
going
to
click
finish
there,
and
here
we
can
see
that
we
have
that
application
cloned
down
this
basic
one.
A
So
we
can
look
at
the
controller
here,
which
is,
if
you're
familiar
with
coding
Neider.
This
is
what
loads
that
first
page
here
it
loads
the
welcome
message,
which
is
actually
a
view.
No
coding
either
is
a
Model
View
controller
framework.
So
let's
go
into
view
and
here's
the
Welcome
message.
Okay,
so
if
we
scroll
down,
we
can
see
welcome
to
CodeIgniter
with
an
exclamation
point.
We
pop
back
over
to
our
console
click
on
the
link
here.
This
is
what's
driving
this
message
right
here
and
that's
what
we
want
to
change.
A
So,
let's
close
a
couple,
these
tabs
here
go
back
to
our
clips,
so
when
I
said
instant
gratification,
what
I
want
to
do
is
set
up
a
clip,
so
anytime
I
make
a
change.
Those
source
files
change
changes
are
also
sent
over
to
the
docker
containers.
I
can
actually
use
OpenShift
as
a
pure
development
platform
without
having
to
patchy
and
and
Piedmont
PHP
and
MySQL
and
MongoDB
Postgres.
Whatever
your
stack
include,
you
can
just
develop
directly
against
the
the
cloud
platform
here,
and
so
how
do
we
do
that?
A
What
we're
going
to
do
is
click
on
our
project
and
right
click
on
it
and
go
to
properties,
and
we
want
to
create
a
new
builder,
okay
and
so
I'm
gonna,
select
builders
and
I'm
going
to
click
on
new
and
we're
going
to
want
to
run
an
external
program.
Click
on
OK
there
I
may
move
the
box
down
for
you
and
we
want
to
give
the
builder
a
name.
So
we're
just
gonna
call
this
our
sync
to
openshift
and
then
the
location
is
the
location
of
the
OC
command-line
tool.
A
So
what
I'm
going
to
do
is
just
pop
open.
My
terminal
here
real,
quick
and
tight,
which
OC
to
get
the
location
of
my
OC
tool
and
I'm
going
to
copy
that
and
paste
that
in
here
and
then
for
working
directory.
We
want
this
to
be
our
project
directory,
so
I'm
just
gonna
say
browse
file
system
and
it's
smart
enough
to
drop
me
there
by
default
and
then
for
the
arguments.
These
are
the
arguments
we're
gonna
pass
to
OC
I,
just
want
to
say
our
sync
dot.
A
Space
which
is
dot
is
represents
the
current
working
directory
that
we
just
define
and
we
want
to
sync
it
to
a
specific
container.
So
we
have
to
get
that
containers
name.
So,
let's
pop
back
over
to
the
web,
console
real
quick
click
on
our
pods
here,
and
this
is
our
container
name
so
I'm
just
going
to
copy
this.
A
To
my
clipboard,
hop
back
over
to
my
Eclipse
environment,
paste
that
in
and
then
I'm
gonna
do
a
colon
and
then
we
need
to
specify
the
directory
that
we
want
to
push
our
code
to
and
that's
gonna
be
opt
cap
route,
slash
source,
so
that
is
/opt,
slash,
app
root,
slash
source
SRC
and
that's
all
there
is
to
it.
I'm
gonna
click
apply
on
that
click
OK
and
we
actually
I
don't
actually
want
all
of
these
other
builders
to
run.
A
You
can
leave
them
on
if
you
want,
but
I'm
just
gonna
select
them
here
and
click.
Ok,
so
let's
go
ahead
and
make
a
change
here.
This
is
the
line
we
want
to
change.
Oh
I
forgot
one
thing:
let's
go
back
into
our
builder,
so
I'm
going
to
go
back
into
properties.
Select
builders
like
this
arcing
to
open
shift
click,
Edit,
and
let
me
move
this
down
again.
If
you
click
on
build
options,
the
true
magic
happens
by
selecting
all
of
these
boxes
and
that
will
ensure
anytime.
A
We
click
on
save
on
a
file
that
that
command
will
run
so
I'll
click
OK
apply
that
click
OK.
So
now,
let's
make
the
change,
so
we
can
say
welcome
to
code
igniter
running
inside
of
a
doctor
based
container
on
open
shift
3
and
some
exclamation
points
there
so
watch
this
down
here
in
the
console
when
I
click
the
Save
button.
We're
gonna
see
that
it's
gonna,
our
sync
that
file
over
there
we
go
one
file
changed,
welcome
message:
dot
PHP!
A
If
we
pop
over
to
our
browser
again
and
we
refresh
this
app
boom
there,
it
is
Bob's
your
uncle,
that's
fantastic
stuff.
So
now
you
have
full
control
over
your
development
environment
and
you
can
use
open
chef
and
docker
base
containers
as
your
true
development
environment,
and
you
don't
have
to
install
all
this
stuff
on
your
local
machine.
Just
use
open
shift
for
it.
So
let's
go
back
to
the
IDE
again
real,
quick
and
a
few
things.
A
A
Now
the
other
gotcha
is
when
I'm
making
changes
in
this
container.
If
the
container
goes
away,
I'm
gonna
have
to
update
my
configuration
and
by
that
I
mean
any
time
this
container
goes
down
and
comes
back.
It's
going
to
get
a
different
ID.
So
here
it's
oh
9,
9
7
J.
So
let
me
illustrate
this
real
quick.
Let
me
go
back
to
the
overview.
A
Let
me
scale
this
down,
so
I'm
gonna
scale
this
down
to
zero
containers,
and
then
let
me
scale
it
back
up
to
one
and
you'll
see
that
a
new
container
was
created
now
it's
PU
in
40.
So
what
all
you'd
need
to
do?
Is
you
decide
to
do
this,
for
whatever
reason
is
get
this
new
container
name
copy
that
hop
over
to
your
Eclipse
environment
and
just
update
that
builder
right?
It
just
takes
a
second
and
then
you
know
I'm
doing
it
right
now.
That's
how
quick
it
is,
and
I'm
just
gonna
replace
this.
A
Oh
nine,
seven,
seven
J
with
the
current
one
and
done
now,
I'm
back
up
and
running.
Okay
is
synced
everything
over
again.
The
other
gotcha
is
that
you're
still
gonna
want
to
use
git.
Just
like
you
did
so,
for
example,
here's
my
changes
that
should
be
running
in
my
container
because
I
just
synced
it
back
over
again.
So
if
I
go
to
Oprah
view
and
click
on
that,
we
can
see
that
it
changed,
but
this
is
not
in
my
git
repository.
So
what
you
want
to
do
as
a
developer
is
just
your
normal
workflow.