►
From YouTube: GItLab Pages development environment setup
Description
I'm showing how to setup gitlab pages dev environment inside the gitlab development kit.
#gitlab_pages
A
Hi,
I'm
vlad
I'm
a
back-end
engineer
on
the
release
team
here
at
gitlab
and
most
of
the
time
I'm
working
on
club
pages
recently,
and
I
just
wanted
to
make
a
quick
video,
maybe
series
of
videos
explaining
how
to
set
up
a
dev
environment
for
github
pages,
how
to
and
yeah
how
everything
works
internally.
A
A
Yeah,
you
should
see
the
zoom
window,
so
I
have
a
gdk
set
up
already
and
this
is
a
pages
project,
but
I
will
redo
a
lot
of
stuff
there.
So
if
you
like,
I
will
assume
that
you're
completely
new
to
gitlab
development
and
know
nothing
about
gitlab
or
gitlab
pages.
A
So
first
thing
you
need
to
do
is
just
google
for
github
development
kit
you'll
end
up
on
this
page
and
then
you
just
need
to
go
to
the
installation,
and
I
use
this
one
line
installation.
A
I
should
mention
that
I
yeah.
Let's
do
it
this
way.
I
should
mention
that
I
use
you
mac
hardware,
so
as
many
people
here
and
it's
probably
easier
on
mac
hardware
to
set
up
gitlab
development
kit.
But
if
you
don't
use
this
or
if
you
have
any
problems
with
installing
github
development
kit,
you
can
use
this
page.
A
So
I
just
use
this
one
liner.
A
So
if
you
just
type
jdk
help,
you'll
see
the
default
name
and
password
I've
already
changed
that
you
will
be
prompted
to
change
it
once
you've
used
it
yeah,
so
it
will
be
root.
Your
password.
A
A
I'm
not
sure
where
I
will
be
logged
in,
I
probably
yeah
by
default.
You
will
be
logged
into
this
page
and
you
see
that
I
have
a
if
you
are
familiar
with
gdk
you'll
see
that
this
url
is
a
bit
different
by
default.
It
will
be
just
localhost
and
port
3000
and
I
have
a
special
ip
and
a
different
port.
Different
part
is
just
because
I
have
my
3000
port
already
in
use,
and
I
have
it
forwarded
to
my
dev
server.
A
So
it
was
easier
to
just
modify
this
port
and
I
needed
a
different
ip
just
because
just
to
use
my
gitlab
runner
in
the
docker
mode,
because
you
can't
use
it
with
a
localhost
because
it
will
try
to
connect
from
the
docker
to
localhost
and
local
hosting
docker
will
be
not
what
you
want
it
to
be,
which
is
gitlab
installation
in
docker.
It
will
be
obviously
a
container
itself,
so
yeah,
let's
start
with
the
gdkml
file.
A
So
if
you
are
completely
new
to
the
jdk
yeah,
this
is
where
everything
is
controlled
from,
and
I
highly
suggest
you
to
modify
only
this
one
file:
don't
modify
any
other
config
file
on
your
gitlab
development
kit,
just
because
every
time
you
run
jdk
update
or
gdk
reconfigure,
it
will
overwrite
all
other
config
files.
So
just
if
you
need
to
modify
anything
modify
it
here,
so
this
part
on
top
is
just
because
I
have
a
separate,
gdk
installation.
A
I
wanted
to
make
this
one
from
scratch,
so
I
needed
to
override
this
port.
If
you
don't
have
any
jdk
installation
just
ignore
this,
you
don't
need
this.
So
then
first
thing
you'll
need
to
to
actually
build
pages
websites.
You'll
need
a
gitlab
runner
and
to
make
it
work
with
more
complex
stuff
like
jkl
or
anything
you'll
need
how
to
code.
You
know
the
you'll
need
a
docker
object.
A
Sorry,
basically,
you
just
need
to
use
docker
and
docker
runner
will
not
work
with
localhost
isaac,
as
I
explained
before,
so
we
need
this
hostname.
I
just
yeah.
A
Let's,
let
me
show
the
second
page
if
you're
not
familiar
with
how
with
how
our
docs
structured
inside
the
gitlab
development
kit,
there
is
a
folder
called
dock,
and
inside
this
there
is
a
folder
called
called
how
to,
and
there
is
a
bunch
of
articles
for
special
subjects.
We
are
only
interested
in
runner
right
now.
There
is
or
one
for
pages
here-
it's
maybe
not
updated
very
often,
but
it
can
be
useful
for
you
but
yeah
right
now.
We
are
only
interested
in
runner.
I
actually
have
it
opened
already,
but
yeah.
A
This
page
is
super
useful.
It
will
guide
you
through
how
to
install
runner
and
how
to
make
it
work
if
you
yeah-
and
there
is
a
docker
installation
here.
This
is
what
you
need
for
pages.
A
It
is
possible
to
make
it,
and
my
simple
example
will
actually
work
with
a
shell
executor
as
it
suggested
above,
but
yeah
you
probably
will
just
need
docker
installation
anyway.
So,
let's
start
with
it
yeah
and
the
reason
it
will
guide
you
through
how
to
create
a
loopback
interface.
In
my
case,
it's
already
there.
A
Yeah
kind
of
hard
to
find:
let's
make
it
a
bit
different,
take
less
0.2
yeah.
I
already
have
it
set
up
on
loopback,
so
yeah
I
just
added
an
another
ip
address
to
the
my
loopback
interface.
It's
basically
just
another
ls
for
localhost,
but
it's
a
different
ip
yeah
and
it
will
be
understood
from
the
docker
installation
so
and
yeah
as
a
prerequisite.
Obviously
you
need
to
install
docker
on
your
machine,
so
I
just
copy
it
from
here.
A
Passed
it
here
and
then,
as
I
typed
above,
I
just
need
to
run
reconfigure,
restart
and
tail.
Let's
go
through
some
other
config
options
here
so
for
gitlab
pages.
A
You
just
basically
need
to
enable
it
because
by
default
it's
disabled
and
then
I
also
turned
off
after
update
just
because
if
you
will
be
developing
gitlab
pages,
you
probably
don't
want
gdp
every
gdk
update
to
override
everything,
but
this
is
optional.
You
may
disable
this.
A
Yeah
and
for
runner
yeah
again,
we
just
need
to
enable
it,
and
then
I
just
use
a
docker
installation
mode.
So
yeah,
that's
basically
all
I
need
to
do.
A
Yeah
you
can,
if
you're
just
watching
the
video
you
can
probably
scroll
a
few
times.
I
won't
be
catching
this
into
parts.
So,
while
I'm
waiting,
you
can
scroll
the
video.
A
Okay,
so
now,
as
you
see,
a
reconfiguration
is
finished
and
we
are
restarting
gitlab,
it
will
take
about
two
minutes
to
actually
get
the
web
service
running
so
yeah,
but
yeah.
Okay,
we
have
everything
restarted.
A
A
Yeah
now
we
see
in
this
page
because
gitlab
workhorse
is
already
running,
is
just
a
simple
proxy
server
written
and
go
so
it's
it's
booting
up
much
much
quicker
than
the
gitlab
server
which
is
rails.
You
don't
need
to
do
anything
as
as
it
mentions
it
will
reload
this
page.
Every
five
seconds
until
rails
is
ready.
A
Yeah,
I
can
probably
go
to
the
docks
while
we
are
waiting.
What
is
here
this
is
the
runner
page
and.
A
We
actually
only
need
yeah.
I
copied
this
already
as
we
as
you
saw
to
the
gdk
yml
file.
Oh
by
the
way
I
forgot
to
mention.
Gdk
yml
file
is
located
inside.
A
Yeah,
I
just
realized
that
I
should
have
mentioned
this
before
so
once
you
run
gdk
you'll
have
a
directory
called
git
lab
development
kit.
A
Yeah,
in
my
case
I
just
started
in
tmp
directory
and
inside
this
file.
You
have
gdk
yml
and
jdk
example.
Ml
example.
Yml
will
contain
all
the
options
you
can
use
with.
Gdk
uml
yeah
definitely
should
have
started
with
this,
but
anyway,
now
we
have
this
runner.
A
A
I'll
delete
the
existing
runner,
I
will
just.
I
was
just
trying
to
do
this
before
recording
the
video
but
I'll
show
it
how
it's
done
from
scratch.
Okay,.
A
So
on
this
page
there
is
a
command
line
somewhere,
which
registers
runners.
A
Okay,
it's
not
this
so
register,
oh
yeah,
it's
just
below!
No,
it
isn't
anyway,
it
is
somewhere
here
yeah.
So
we
just
need
this
command
line
and,
as
you
see
I'm
doing
this
in
gitlab
development
directory,
there
are
a
lot
of
stuff
here,
but
also
one
of
the
things
we
need
is
this
gitlab
runner,
config,
tomo
file,
so
I'll
just
cut
it
for
you
to
see
gitlab
runner
yeah.
A
As
you
see,
everything
is
already
set
up
here,
but
there
is
a
token
which
is
like
which
isn't
registered.
So
what
we
then
do
now
is
just
register.
Runner
will
use
the
same
file
as
a
config
file.
A
A
A
So
we
go
here.
We
uncomment
this
line
it.
It
won't
be
there
if
this
file
will
be
empty
for
you,
but,
as
I
mentioned,
you
can
just
go
to
gdk
example
copy
some
structure.
Like
some
parameters,
you
need
yeah
and
there
is
a
token
somewhere
here
yeah.
As
you
see,
this
is
the
default
token,
which
is
used,
so
you
can
copy
it
here
and
you
can
copy
the
token
from
yeah
from
this
installation
to
here,
and
then
we
just
need
to
reconfigure
our
jdk
once
again.
A
A
A
A
Okay,
now
you
see
it's
been
low
yeah,
it's
loading.
A
Okay
and
you
see
that
we
have
a
runner
which
was
active
40
seconds
ago
yeah
and
now
we
should
have
a
working
runner.
So
let's
just
go
to
the
main
page
and
create
a
new
project.
A
Create
from
template
there
are
a
number
of
pages
products
here
are
gatsby
hugo
jekyll.
I
totally
recommend
using
just
plain
html.
A
A
You
know
important
thing
here
is
to
make
it
public
because,
depending
on
the
level
visibility
level,
project
can
be
like
there
is
a
feature
called
access
control
for
pages,
which
is
verifying
that
users
have
access
to
the
project
via
oauth
workflow
and
above
when
I
showed
my
gdk
yml
file.
I
did
not
do
anything
about
the
house
process,
so
it
should
be
disabled,
but
in
case
it
will
be
enabled
pages,
will
just
not
work
properly,
so
just
make
it
project
public.
It
will
make
your
life
easier.
A
I
guess
you
can
find
some
some
information
about
this
inside
the
how
two
pages
file
yeah.
There
are
some
things
here,
but
yeah.
You
need
to
know
what
to
what
you're
doing
and
how
this
feature
work
works
inside.
So
right
now
we
are
seeing
that
import
is
in
progress.
It's
basically
a
sidekick
job
which
is
running
this
and
I
guess
we
already
refresh
refreshing
page.
So
import
is
finished
now
yeah.
A
A
It
will
show
you
all
the
logs
and
if
something
is
broken
most
of
the
time
most
of
these
problems
will
be
here
so
yeah.
If
something
is
wrong
with
the
runner,
you'll
see
it.
A
A
We
see
that
we
have
two
jobs,
so
the
first
one
is
what
you
saw.
Actually,
let
me
show
you
it
how
it
works.
A
A
Yeah,
it
all
takes
time
so
inside
we
have
this
git
club
ci
yml
file.
A
Okay,
this
is
finished,
and
now
we
just
need
to
wait
for
the
file
to
be
loaded.
Okay,
it's
a
super
simple
file.
So
this
is
why
you
need
docker
image
because
yeah
I
mean
docker
runner,
because
the
default
template
already
assumes
that
you
have
a
docker
runner.
A
So
there
is
a
single
job
here
stage
deployed.
It
doesn't
matter
that
it's
called
this
way.
You
can
even
skip
this
script,
nothing
to
do
because
actually,
I'm
not
sure
if
I
will
be
easy
yeah.
Actually,
I
should
show
this
probably
so
inside
this
project
we
just
have
a
public
directory
and
inside
it
we
have
index
html
and
style
css
files.
So
the
way
pages
works
is
gitlab.
A
Pages
works
is
that
you
can
run
any
jobs,
ci
job
which
is
called
pages
and
which
has
artifacts
exported
inside
the
directory
called
public.
So
we
already
have
it
here,
so
we
don't
need
to
do
anything.
It's
just
been
loaded
with
git
clone.
So
what
rhino
will
do?
Is
it
will
just
send
this
public
directory
as
a
zip
file
to
gitlab
as
an
artifacts
file?
A
Yeah,
you
can
see
the
job
artifacts,
you
can
download
them.
Yeah.
A
Yeah
you
see
that
artifacts
file
is
downloaded,
it's
been
downloaded
anyway
and
inside
it
it
will
be
just
this.
This
file
tracks
right
here,
index
and
style.
Css,
nothing,
fancy
inside
it,
so
yeah
and
you
can
do
any.
You
can
build
any
site
this
way.
So
job
is
succeeded.
A
If
we
go
back
to
the
pipeline.
Page
you'll
see
another
job
here,
which
is
pages,
deploy
it's
actually
kind
of
a
fake
job.
It's
not
executed
on
the
runner,
it's
just
a
sidekick
worker
which
executes
this
job
and
it's
just
copies,
zip.
A
This
zip
archive,
I
just
shown
you
to
special
place
and
then
pages
demon
can
take
it
from
there.
I
probably
will
explain
this
later
and
probably
it
will
be
another
video
showing
how
all
this
works
internally,
but
yeah
anyway.
A
Let's
continue
with
our
example.
Actually
everything
is
ready.
We
can
now
just
see
how
everything
works
we
go
here.
We
have
this
url
open
this
in
the
next
tab
and
yeah.
Here
is
the
final
example:
we
see
the
pages
website
here
everything
works
out
of
the
box
yeah.
Now
I
will
just
show
you
how
to
make
a
simple
change
to
the
pages.
A
Daemon.
Actually
so
first
thing
first,
is
that
we
have
this
gitlab
development
kit
directory.
There
are
a
bunch
of
stuff
in
here
and
there
is
a
directory
called
gitlab
pages
if
we
just
go
there
gitlab
pages.
A
So
first
of
all,
this
is
a
reference
yeah.
I
can
just
show
this.
So
if
you
go
above,
there
is
a
inside
gitlab
directory.
There
is
a
co
file
called
gitlab.
A
Pages
version
1510:
this
is
a
tag
inside
gitlab
repository
gitlab
pages
repository,
so.
A
These
pages
this
commit
hash,
just
corresponds
to
this
text.
So
if
you,
if
we
show
it
show
we
and
these
pages
version,
you
see
this,
there
should
be
yeah.
This
is
a
commit
hash.
We
just
saw
yeah.
So,
let's
first
things:
first,
let's
just
check
out
master.
A
You
probably
want
to
create
a
special
branch.
Add
the
remote
by
default.
Remote
will
be
https
if
you're
a
gitlab
team
member.
You
probably
want
to
switch
this
to
ssh
remote.
If
you're
a
community
contributor,
you
probably
want
to
add
another
remote
for
your
fork
of
gitlab
pages
but
yeah
for
now.
I
just
assume
that
you
know
that
and
you
want
to
change
something
inside
the
gitlab
pages
daemon
and
actually
see
the
result
of
it
running.
A
Okay,
I'm
just
one
to
check
yeah.
I
hope
I
I'm
starting
the
right
screen.
Oh
I'll
need
to
re-record
this
and
it
will
be
painful
anyway.
Let's
go
to
this
go
end,
so
I
didn't
know.
I
don't
know
what
to
change
this
easily
in
this
demand
to
show
this,
but
we
have
a
main
go
file
and
let's
just
show,
let's
just
change.
What
is
printed
when
you
run
the.
A
Gitlab
pages
server,
so
yeah
we
have
a
main
function.
I
believe
it's
somewhere
yeah.
It
is
here.
We
validate
arguments
fail
to
load
config
there.
There
is
a
log
config
function.
Let's
just
go
into
this,
go
to.
A
A
A
A
A
A
This
is
how
I
usually
just
run
tests
and
you
can
use
a
shortcut
like
go,
build
and
go
test.
This
just
meets
every
director
inside
this,
so
it
will
run
tests
for
every
package
inside
gitlab
pages
yeah,
it's
building
bunch
of
stuff
again,
but
yeah.
Now
we
see
that
everything
is
working
most
of
the
time
when
you
will
be
working
on
github
pages.
A
A
Okay,
so
all
tests
are
passing
now,
let's
copy
this
and
run
gdk
tail
gitlab
pages.
A
A
Oh,
you
don't
see
anything
in
here.
I
wonder
how
we
can
see
the
results.
A
Okay,
there
is
a
config
file
by
the
way,
if
you're
interested
how
all
this
works
inside
yeah
there
is
a
config
file
describing
how
pages
should
be
configured.
I
guess
cut.
A
Actually,
I
don't
know
where
log
variables
falls,
but
whatever
you
should
see,
but
anyway,
just
to
make
the
case
gitlab
pages
yeah,
it
doesn't
print
print
much.
I
guess
yeah.
So
it's
kind
of
a
failed
example.
But
here
you
should
actually
see
the.
A
A
A
Just
don't
forget
to
make
when
you
test
something
just
run
the
go,
build
and
gdk
restart
gitlab
pages.
It
will
use
this
binary.
I've
shown
you
yeah
and
you
can
easily
test
this.
This
way
you
can
easily
test
all
the
modifications
you
do,
the
gitlab
pages
daemon
and
then
just
create
a
merge
request.
A
It
will
run
the
pipeline
for
you.
If
you
want
to
do.
You
can
also
run
tests
locally.
You
can
run
linters
locally,
but
this
is
all
kind
of
advanced,
so
yeah
I'll
try
to
make
another
video
explaining
how
all
this
works
internally
inside
the
rails,
application
and
inside
gitlab
pages
application,
but
I
would
actually
do
it
here,
but
I
have
a
meeting
in
three
minutes,
so
I
probably
end
here
without
this
example
being
finished,
but
yeah
thanks
for
watching.