blob: 9b175d47ddb9b00ac28192ab27e64a28f93e72e9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
Title: Making my server completely replacable
Category: Blog
Tags: /dev/diary, linux, ancible
Date: 2018-02-08
Status: Draft
**This is mostly a draft so far, so maybe pad it a bit more 😉**
I have a virtual server running Arch Linux hosted somewhere in Germany
which I want to use to host some personal services and toolchains.
Currently this is done via LXD which I was a fan of for quite a while.
I am using Zfs as a backend for these containers which means
that I can do quick snapshots and deduplication between the base systems.
But...I'm not really sure this is a nice way to do it anymore.
I would like to run services in Containers just because
it means that the host can be setup in a more clean way.
But right now there is a lot of manual configuration required because
I'm struggling with the new way that LXD handles network taps.
And while I'm gonna have to touch my configs anyways, I thought: why not go a bit further?
# Existing setup
```
☁ (icarus) ~> lxc list
+-------------+---------+----------------------+------+------------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-------------+---------+----------------------+------+------------+-----------+
| betakookie | STOPPED | | | PERSISTENT | 2 |
+-------------+---------+----------------------+------+------------+-----------+
| dcmerge | RUNNING | 10.130.123.13 (eth0) | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
| dns | STOPPED | | | PERSISTENT | 1 |
+-------------+---------+----------------------+------+------------+-----------+
| gitlab | RUNNING | 10.130.123.20 (eth0) | | PERSISTENT | 2 |
+-------------+---------+----------------------+------+------------+-----------+
| hazelnot | RUNNING | 10.130.123.12 (eth0) | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
| partkeepr | STOPPED | | | PERSISTENT | 3 |
+-------------+---------+----------------------+------+------------+-----------+
| spacekookie | RUNNING | 10.130.123.10 (eth0) | | PERSISTENT | 2 |
+-------------+---------+----------------------+------+------------+-----------+
| stats | RUNNING | 10.130.123.22 (eth0) | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
| turtl | STOPPED | | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
| vpn-core | STOPPED | | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
| wiki | RUNNING | 10.130.123.23 (eth0) | | PERSISTENT | 0 |
+-------------+---------+----------------------+------+------------+-----------+
```
Ultimately I want to run a few core services:
- My website (Also available in early access on Github 😱)
- A friend's static website
- Gitlab
- Bookstack (my wiki)
- Matomo (previously Piwik)
- Partkeepr (a tool for managing electronic components)
- Turtl (a cool evernote clone)
- My own Quassel core (instead of using my ex-girlfriend's one 😉)
And maybe some more that I haven't setup yet.
Including a VPN between my server,
my NAS and all of my other devices.
# Future setup idea
I have two servers running pretty much all the time:
- My cloud server
- My NAS at home
What I want to get over is having to manually configure containers and
|