Newer
Older
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
[](https://github.com/$GITHUB_USERNAME/$GITHUB_REPONAME)
[](https://www.griefed.de)
[](https://www.griefed.de/blog)
[](https://fleet.griefed.de)
[](https://github.com/Griefed)
[](https://hub.docker.com/u/griefed)
---
# $GITHUB_REPONAME
[](https://hub.docker.com/repository/docker/griefed/$DOCKERHUB_REPONAME)
[](https://hub.docker.com/repository/docker/griefed/$DOCKERHUB_REPONAME)
[](https://hub.docker.com/repository/docker/griefed/$DOCKERHUB_REPONAME)
[](https://hub.docker.com/repository/docker/griefed/$DOCKERHUB_REPONAME)
[](https://github.com/Griefed/$GITHUB_REPONAME)
[](https://github.com/Griefed/$GITHUB_REPONAME)
$DESCRIPTION
[](https://github.com/$CREATOR_USERNAME/$CREATOR_REPONAME)
---
Creates a Container which runs [$CREATOR_USERNAME's](https://github.com/$CREATOR_USERNAME) [$CREATOR_REPONAME](https://github.com/$CREATOR_USERNAME/$CREATOR_REPONAME), with [$BASE_IMAGE](https://hub.docker.com/r/$BASE_IMAGE) as the base image, as seen on $EXAMPLE_SITE_LINK.
The [$BASE_IMAGE](https://hub.docker.com/r/$BASE_IMAGE) image is a custom base image built with [Alpine linux](https://alpinelinux.org/) and [S6 overlay](https://github.com/just-containers/s6-overlay).
Using this image allows us to use the same user/group ids in the container as on the host, making file transfers much easier
# Deployment
Tags | Description
-----|------------
`latest` | Using the `latest` tag will pull the latest image for amd64/x86_64 architecture.
`arm` | Using the `arm`tag will pull the latest image for arm architecture. Use this if you intend on running the container on a Raspberry Pi 3B, for example.
## Pre-built images
```docker-compose.yml
version: '3.6'
services:
$DOCKERHUB_REPONAME:
container_name: $DOCKERHUB_REPONAME
image: griefed/$DOCKERHUB_REPONAME
restart: unless-stopped
volumes:
- ./path/to/config:/config
environment:
- TZ=Europe/Berlin
- PUID=1000 # User ID
- PGID=1000 # Group ID
ports:
- 80:$CONTAINER_PORT
- $CONTAINER_PORT2
```
## Raspberry Pi
To run this container on a Raspberry Pi, use the `arm`-tag. I've tested it on a Raspberry Pi 3B.
`$DOCKERHUB_USERNAME/$DOCKERHUB_REPONAME:arm`
# Configuration
Configuration | Explanation
------------ | -------------
[Restart policy](https://docs.docker.com/compose/compose-file/#restart) | "no", always, on-failure, unless-stopped
config volume | Contains config files and logs.
data volume | Contains your/the containers important data.
TZ | Timezone
PUID | for UserID
PGID | for GroupID
ports | The port where the service will be available at.
## User / Group Identifiers
When using volumes, permissions issues can arise between the host OS and the container. [Linuxserver.io](https://www.linuxserver.io/) avoids this issue by allowing you to specify the user `PUID` and group `PGID`.
Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
```
$ id username
uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
```
# Building the image yourself
Use the [Dockerfile](https://github.com/Griefed/$GITHUB_REPONAME/Dockerfile) to build the image yourself, in case you want to make any changes to it
docker-compose.yml:
```docker-compose.yml
version: '3.6'
services:
$DOCKERHUB_REPONAME:
container_name: $DOCKERHUB_REPONAME
build: ./$GITHUB_REPONAME/
restart: unless-stopped
volumes:
- ./path/to/config/files:/config
environment:
- TZ=Europe/Berlin
- PUID=1000 # User ID
- PGID=1000 # Group ID
ports:
- 8080:$CONTAINER_PORT
- $CONTAINER_PORT2
```
1. Clone the repository: `git clone https://github.com/Griefed/$GITHUB_REPONAME.git ./$GITHUB_REPONAME`
1. Prepare docker-compose.yml file as seen above
1. `docker-compose up -d --build $DOCKERHUB_REPONAME`
1. Visit IP.ADDRESS.OF.HOST:8080
1. ???
1. Profit!