Skip to content

Commit d4e1b24

Browse files
committed
Added install and getting started sections
1 parent ed457f7 commit d4e1b24

15 files changed

+7364
-57
lines changed

config.yaml

Lines changed: 39 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ params:
1414
title: DHCP. Just simple.
1515
subtitle: NextDHCP is a DHCP server chaining middlewares. It's similar to CoreDNS and Caddy
1616
buttontext: Get started
17-
buttonlink: "https://github.com/nextdhcp/nextdhcp"
17+
buttonlink: /blog/install/
1818
image: logos/nextdhcp-wo-text.svg
1919
# Footer logos (from static/images/logos/clients/___.svg)
2020
#clientlogos:
@@ -25,12 +25,14 @@ params:
2525
url: https://github.com/nextdhcp/nextdhcp
2626
- title: Docs
2727
sublinks:
28+
- title: Introduction
29+
url: /blog/intro/
2830
- title: Getting Started
29-
url: /
30-
- title: Plugins
31-
url: /
32-
- title: Contributing
33-
url: /
31+
url: /blog/install/
32+
#- title: Plugins
33+
# url: /
34+
#- title: Contributing
35+
# url: /
3436
- title: Download
3537
url: https://github.com/nextdhcp/nextdhcp/releases
3638
button: true
@@ -105,43 +107,38 @@ params:
105107
section5: false
106108

107109
footer:
108-
# Logo (from /images/logos/___)
109-
logo:
110-
# Social media links (GitHub, Twitter, etc.). All are optional.
111110
socialmedia:
112111
- link: https://github.com/nextdhcp/nextdhcp
113112
# Icons are from Font Awesome
114113
icon: github
115-
bulmalogo: true
116-
quicklinks:
117-
column1:
118-
title: "Product"
119-
links:
120-
- text: Discover features
121-
link: /
122-
- text: Why choose our product?
123-
link: /
124-
- text: Compare features
125-
link: /
126-
- text: Our roadmap
127-
link: /
128-
- text: AGB
129-
link: /agb
130-
column2:
131-
title: "Docs"
132-
links:
133-
- text: Get started
134-
link: /
135-
- text: User guides
136-
link: /
137-
- text: Admin guide
138-
link: /
139-
- text: Developers
140-
link: /
141-
column3:
142-
title: "Blog"
143-
links:
144-
- text: Latest news
145-
link: /blog/first
146-
- text: Tech articles
147-
link: /blog/second
114+
#bulmalogo: true
115+
#quicklinks:
116+
# column1:
117+
# title: "Product"
118+
# links:
119+
# - text: Discover features
120+
# link: /
121+
# - text: Why choose our product?
122+
# link: /
123+
# - text: Compare features
124+
# link: /
125+
# - text: Our roadmap
126+
# link: /
127+
# - text: AGB
128+
# link: /agb
129+
# column2:
130+
# title: "Docs"
131+
# links:
132+
# - text: Get started
133+
# link: /
134+
# - text: User guides
135+
# link: /
136+
# - text: Admin guide
137+
# link: /
138+
# - text: Developers
139+
# link: /
140+
# column3:
141+
# title: "Blog"
142+
# links:
143+
# - text: Latest news
144+
# link: /blog/Intro

content/blog/first.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

content/blog/install.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
title: "Getting Started"
3+
date: 2019-09-15T18:37:01+02:00
4+
draft: false
5+
---
6+
7+
# Installation
8+
9+
There are currently 2 different ways of installing NextDHCP. You can either download one of the latest pre-built releases from Github or just build it from source. We'll explain them both in order:
10+
11+
## Release binaries
12+
13+
Official release binaries are the most simple way to use and install NextDHCP. Just download the archive that suits your platform, extract it and you should be ready to go.
14+
You can find a list of official releases on the [Github project page](https://github.com/nextdhcp/nextdhcp/releases). We recommend sticking to the latest available release:
15+
16+
<br />
17+
<center>
18+
<p>
19+
<a href="https://github.com/nextdhcp/nextdhcp/releases/latest" class="button signup-button rounded raised secondary-btn" target="_blank">Latest Version</a>
20+
</p>
21+
</center>
22+
<br />
23+
24+
Once you downloaded the correct archive just unpack it and you should end up with a `nextdhcp` binary.
25+
26+
For the "terminal" lovers, here're some commands to install it:
27+
<br />
28+
<br />
29+
30+
{{<highlight bash>}}
31+
# Watch out, the next command does NOT automatically download
32+
# the latest version of NextDHCP. Copy the actual link from
33+
# the release page
34+
curl -o nextdhcp.tar.gz https://github.com/nextdhcp/nextdhcp/releases/latest/download/nextdhcp_0.1.0_Linux_x86_64.tar.gz
35+
36+
# Unpack it
37+
tar xfz nextdhcp.tar.gz
38+
{{</highlight>}}
39+
40+
41+
## Source Code
42+
43+
If you want to built NextDHCP from source code you'll need the following dependencies installed:
44+
45+
* [Git](https://git-scm.com/)
46+
* [Go](https://golang.org/)
47+
48+
Once you got the dependencies installed (check your distribution's package manager), go ahead and clone the repository:
49+
50+
{{<highlight bash>}}
51+
git clone https://github.com/nextdhcp/nextdhcp
52+
{{</highlight>}}
53+
54+
Finally, we can install all dependencies and build NextDHCP. The binary will end up in the same folder.
55+
56+
{{<highlight bash>}}
57+
# Download all dependencies
58+
go get ./...
59+
60+
# Generate any required code
61+
go generate ./...
62+
63+
# Build NextDHCP
64+
go build .
65+
{{</highlight>}}
66+
67+
# Configuration
68+
69+
> Although NextDHCP provides a lot of functionallity and features this section will only cover the most basic setup. For more information please refer to the list
70+
of builtin plugins and their documentation.
71+
72+
NextDHCP expects a configuration file with the name Dhcpfile in the same directory where you execute the command. The syntax of the Dhcpfile is meant to be easy and
73+
hard to get wrong. It is based on the awesome [Caddy server framework](https://caddyserver.com) and thus looks similar to the Caddyfile or Corefile (for CoreDNS).
74+
A simple Dhcpfile may look like the following:
75+
76+
{{<highlight plain>}}
77+
192.168.0.1/24 {
78+
lease 1h
79+
range 192.168.0.100 192.168.0.200
80+
option router 192.168.0.1
81+
option nameserver 8.8.8.8 1.1.1.1
82+
}
83+
{{</highlight>}}
84+

content/blog/intro.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: "Introduction"
3+
date: 2019-09-05T12:26:25+02:00
4+
draft: false
5+
---
6+
7+
<br />
8+
<center><img src="/images/logos/nextdhcp-wo-text.svg" alt="NextDHCP" width="170px"></center>
9+
<br />
10+
<br />
11+
12+
NextDHCP is simle but extensible DHCP server that chains plugins. It's based on the concept of the [Caddy Webserver](https://caddyserver.com) and [CoreDNS](https://coredns.io). It's written in [Go](https://golang.org), runs on lots of different platforms, is open source and licensed under the [MIT License](https://github.com/nextdhcp/nextdhcp/blob/master/LICENSE). Development, feature requests, bug reports or any other kind of issues are managed on [Github](https://github.com/nextdhcp).
13+
14+
---
15+
16+
DHCP stands for Dynamic Host Configuration Protocol and provides network clients with information required to participate in the overall communication. NextDHCP strives to fullfill the needs of home users as well as complicated buisness enviroments. Nearly every single feature NextDHCP offers is implemented as a plugin. Thus, if you're searching for something NextDHCP does not offer out-of-the-box, you may find it easy enough to add the required feature youself. Contributions to NextDHCP and all related projects are always welcome!
17+
18+
<br/>
19+
20+
Regardless of why you need a DHCP server; playing some games on a LAN party, setting up network boot, some kind of home-automation (user-presence tracking) or even more complicated DHCP setups, NextDHCP will have you covered. If not, it will be easy to extend NextDHCP to do what you want, just a few [Go](https://golang.org) skills are required. Checkout the list of [plugins](https://github.com/nextdhcp/nextdhcp/blob/master/README.md#plugins) for more information on the current feature set!
21+
22+
---
23+
24+
<center><a href="/blog/install/" class="button signup-button rounded raised">Get started</a></center>

0 commit comments

Comments
 (0)