blob: f29f9f46857f7b31fa93002b9e2e5bb6edf55a4d (
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
|
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
|