You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Development, Maintenance and Community Principals for _NetBox Docker_
2
+
3
+
This principals shall guide the development and the maintenance of _NetBox Docker_.
4
+
5
+
## Basic principals
6
+
7
+
This project is maintained on voluntary basis.
8
+
Everyone is asked to respect that.
9
+
10
+
This means, that …
11
+
12
+
- … sometimes features are not implemented as fast as one might like -- or not at all.
13
+
- … sometimes nobody is looking at bugs or they are not fixed as fast as one might like -- or not at all.
14
+
- … sometimes PRs are not reviewed for an extended period.
15
+
16
+
Everyone is welcome to provide improvements and bug fixes to the benefit of everyone else.
17
+
18
+
## Development Principals
19
+
20
+
The goal of the _NetBox Docker_ project is to provide a container to run the basic NetBox project.
21
+
The container should feel like a native container -- as if it were provided by NetBox itself:
22
+
23
+
- Configuration via environment variables where feasible.
24
+
- Configuration of secrets via secret files.
25
+
- Log output to standard out (STDOUT/&1) / standard error (STDERR/&2).
26
+
- Volumes for data and cache directories.
27
+
- Runs a non-root user by default.
28
+
- One process / role for each instance.
29
+
30
+
There is one exception for the configuration:
31
+
Whenever a `dict` is required as value of a configuration setting, then it must not be provided through an environment variable.
32
+
33
+
The container generally does not provide more features than the basic NetBox project itself provides.
34
+
It may provide additional Python dependencies than the upstream project, so that all features of NetBox can be used in the container.
35
+
It may provide helpers, so that the container feels and behaves like a native container.
36
+
37
+
The container does not come with pre-bundled plugins.
38
+
39
+
## Maintenance Principals
40
+
41
+
The main goals of maintainig _NetBox Docker_ are:
42
+
43
+
- Keeping the project on a high quality level.
44
+
- Keeping the maintenance effort minimal.
45
+
- Coordinating development efforts.
46
+
47
+
The following guidelines help us to achieve these goals:
48
+
49
+
- As many maintenance tasks as possible shall be automated or scripted.
50
+
- All manual tasks must be documented.
51
+
- All changes are reviewed by at least one maintainer.
52
+
- Changes of maintainers are reviewed by at least one other maintainer.
53
+
- The infrastructure beyond what GitHub provides shall be kept to a minimum.
54
+
- On request, every maintainer shall get access to infrastructure that is beyond GitHub (at the time of writing that's _Docker Hub_ and _Quay_ in particular).
55
+
56
+
## Community Principals
57
+
58
+
This project is developed by the NetBox community for the NetBox community.
59
+
We welcome contributions, as long as they are in line with the principals above.
60
+
61
+
The maintainers of NetBox Docker are not the support team.
[The GitHub repository][netbox-docker-github] houses the components needed to build NetBox as a container.
11
-
Images are built regularly using the code in that repository and are pushed to [Docker Hub][netbox-dockerhub], [Quay.io][netbox-quayio] and [GitHub Container Registry][netbox-ghcr].
11
+
Images are built regularly using the code in that repository
12
+
and are pushed to [Docker Hub][netbox-dockerhub],
13
+
[Quay.io][netbox-quayio] and [GitHub Container Registry][netbox-ghcr].
14
+
_NetBox Docker_ is a project developed and maintained by the _NetBox_ community.
12
15
13
16
Do you have any questions?
14
17
Before opening an issue on GitHub,
15
-
please join [our Slack][netbox-docker-slack] and ask for help in the [`#netbox-docker`][netbox-docker-slack-channel] channel.
18
+
please join [our Slack][netbox-docker-slack]
19
+
and ask for help in the [`#netbox-docker`][netbox-docker-slack-channel] channel,
20
+
or start a new [GitHub Discussion][github-discussions].
If you need to restart Netbox from an empty database often, you can also set the `SUPERUSER_*` variables in your `docker-compose.override.yml` as shown in the example.
62
+
If you need to restart Netbox from an empty database often,
63
+
you can also set the `SUPERUSER_*` variables in your `docker-compose.override.yml`.
0 commit comments