Skip to content

Commit 734f9ee

Browse files
committed
dev: more container work
1 parent acfa8c2 commit 734f9ee

File tree

24 files changed

+263
-166
lines changed

24 files changed

+263
-166
lines changed

Containerfile

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ RUN cargo binstall --no-confirm cargo-nextest
1818

1919
COPY ./share/ /app/share/torrust
2020
RUN mkdir -p /app/share/torrust/default/database/; \
21-
touch /app/share/torrust/default/database/tracker.sqlite3.db; \
22-
echo ";" | sqlite3 /app/share/torrust/default/database/tracker.sqlite3.db
21+
sqlite3 /app/share/torrust/default/database/tracker.sqlite3.db "VACUUM;"
2322

2423
COPY ./contrib/dev-tools/su-exec/ /tmp/su-exec/
2524
RUN cc -Wall -Werror -g /tmp/su-exec/su-exec.c -o /tmp/su-exec/su-exec
@@ -95,12 +94,14 @@ RUN ["/busybox/cp", "-sp", "/busybox/sh","/busybox/cat","/busybox/ls","/busybox/
9594
COPY --from=tester --chmod=0555 /tmp/su-exec/su-exec /bin/su-exec
9695

9796
ARG TORRUST_TRACKER_PATH_CONFIG="/etc/torrust/tracker/config.toml"
97+
ARG TORRUST_TRACKER_DATABASE="sqlite3"
9898
ARG USER_ID=1000
9999
ARG UDP_PORT=6969
100100
ARG HTTP_PORT=7070
101101
ARG API_PORT=1212
102102

103103
ENV TORRUST_TRACKER_PATH_CONFIG=${TORRUST_TRACKER_PATH_CONFIG}
104+
ENV TORRUST_TRACKER_DATABASE=${TORRUST_TRACKER_DATABASE}
104105
ENV USER_ID=${USER_ID}
105106
ENV UDP_PORT=${UDP_PORT}
106107
ENV HTTP_PORT=${HTTP_PORT}
@@ -118,18 +119,20 @@ COPY --chmod=0555 ./share/container/entry_script_sh /usr/local/bin/entry.sh
118119

119120
VOLUME ["/var/lib/torrust/tracker","/var/log/torrust/tracker","/etc/torrust/tracker"]
120121

122+
ENV RUNTIME="runtime"
121123
ENTRYPOINT ["/usr/local/bin/entry.sh"]
122124

125+
123126
## Torrust-Tracker (debug)
124127
FROM runtime as debug
128+
ENV RUNTIME="debug"
125129
COPY --from=test_debug /app/ /usr/
126-
COPY --chmod=0644 ./share/container/motd.debug /etc/motd
127130
RUN env
128131
CMD ["sh"]
129132

130133
## Torrust-Tracker (release) (default)
131134
FROM runtime as release
135+
ENV RUNTIME="release"
132136
COPY --from=test /app/ /usr/
133-
COPY --chmod=0644 ./share/container/motd.release /etc/motd
134137
# HEALTHCHECK CMD ["/usr/bin/wget", "--no-verbose", "--tries=1", "--spider", "localhost:${API_PORT}/version"]
135138
CMD ["/usr/bin/torrust-tracker"]

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,11 @@ You can follow the [documentation](https://docs.rs/torrust-tracker/) to install
4141
git clone https://github.com/torrust/torrust-tracker.git \
4242
&& cd torrust-tracker \
4343
&& cargo build --release \
44-
&& mkdir -p ./storage/lib/database \
45-
&& mkdir -p ./storage/ssl_certificates
44+
&& mkdir -p ./storage/tracker/lib/database \
45+
&& mkdir -p ./storage/tracker/lib/tls
4646
```
4747

48-
The tracker gets it's default configuration from the [share/default/config](./share/default/config/) folder: either [´tracker.sqlite3.development.toml´](./share/default/config/tracker.sqlite3.development.toml), the [local default](./src/bootstrap/config.rs#L18); or [′tracker.sqlite3.distribution.toml´](./share/default/config/tracker.sqlite3.distribution.toml), the [container default](./share/container/entry_script_s#L10).
48+
The tracker gets it's default configuration from the [share/default/config](./share/default/config/) folder: either [´tracker.development.sqlite3.toml´](./share/default/config/tracker.development.sqlite3.toml), the [local default](./src/bootstrap/config.rs#L18); or [′tracker.container.sqlite3.toml´](./share/default/config/tracker.container.sqlite3.toml), the [container default](./share/container/entry_script_s#L10).
4949

5050
To specify a different configuration file, supply it's path on an environmental variable: [`TORRUST_TRACKER_PATH_CONFIG`](./src/bootstrap/config.rs#L15), or simply supply your entire configuration on the environmental variable itself: [`TORRUST_TRACKER_CONFIG`](./src/bootstrap/config.rs#L11).
5151

cSpell.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@
127127
],
128128
"enableFiletypes": [
129129
"dockerfile",
130-
"shellscript"
130+
"shellscript",
131+
"toml"
131132
]
132133
}

compose.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
image: torrust-tracker:debug
66
tty: true
77
environment:
8-
- TORRUST_TRACKER_CONFIG=${TORRUST_TRACKER_CONFIG}
8+
- TORRUST_TRACKER_DATABASE=${TORRUST_TRACKER_DATABASE:-"mysql"}
99
- TORRUST_TRACKER_API_ADMIN_TOKEN=${TORRUST_TRACKER_API_ADMIN_TOKEN:-MyAccessToken}
1010
networks:
1111
- server_side
@@ -14,9 +14,9 @@ services:
1414
- 7070:7070
1515
- 1212:1212
1616
volumes:
17-
- ./storage/lib:/var/lib/torrust/tracker
18-
- ./storage/log:/var/log/torrust/tracker
19-
- ./storage/etc:/etc/torrust/tracker
17+
- ./storage/tracker/lib:/var/lib/torrust/tracker
18+
- ./storage/tracker/log:/var/log/torrust/tracker
19+
- ./storage/tracker/etc:/etc/torrust/tracker
2020
depends_on:
2121
- mysql
2222

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
11
#!/bin/bash
22

3-
CURRENT_USER_NAME=$(whoami)
4-
CURRENT_USER_ID=$(id -u)
5-
echo "User name: $CURRENT_USER_NAME"
6-
echo "User id: $CURRENT_USER_ID"
7-
8-
USER_ID=$CURRENT_USER_ID
9-
export USER_ID
10-
113
echo "Building docker image ..."
124

13-
docker build --target debug --tag torrust-tracker:debug .
5+
docker build --target release --tag torrust-tracker:release --file Containerfile
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
11
#!/bin/bash
22

3-
./docker/bin/build.sh
4-
./bin/install.sh
3+
./contrib/dev-tools/containers/docker-build.sh

contrib/dev-tools/containers/docker-run-local-image.sh

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/bash
2+
3+
mkdir -p ./storage/tracker/lib/ ./storage/tracker/log/ ./storage/tracker/etc/
4+
5+
docker run -it \
6+
--env USER_ID"$(id -u)" \
7+
--publish 6969:6969/udp \
8+
--publish 7070:7070/tcp \
9+
--publish 1212:1212/tcp \
10+
--volume ./storage/tracker/lib:/var/lib/torrust/tracker:rw \
11+
--volume ./storage/tracker/log:/var/log/torrust/tracker:rw \
12+
--volume ./storage/tracker/etc:/etc/torrust/tracker:rw \
13+
torrust-tracker:release

contrib/dev-tools/containers/docker-run-public-image.sh

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
#!/bin/bash
2+
3+
mkdir -p ./storage/tracker/lib/ ./storage/tracker/log/ ./storage/tracker/etc/
4+
5+
docker run -it \
6+
--env USER_ID"$(id -u)" \
7+
--publish 6969:6969/udp \
8+
--publish 7070:7070/tcp \
9+
--publish 1212:1212/tcp \
10+
--volume ./storage/tracker/lib:/var/lib/torrust/tracker:rw \
11+
--volume ./storage/tracker/log:/var/log/torrust/tracker:rw \
12+
--volume ./storage/tracker/etc:/etc/torrust/tracker:rw \
13+
torrust/tracker:latest

0 commit comments

Comments
 (0)