Skip to content

Commit 33c6a90

Browse files
committed
refact: docker daemon.json, set_hostname, +less for journalctl
1 parent 0542708 commit 33c6a90

2 files changed

Lines changed: 26 additions & 6 deletions

File tree

‎system/Dockerfile‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ ENTRYPOINT ["sh", "-c", "rm -f /.dockerenv; trap 'echo Received SIGTERM; exit 0'
77

88
COPY seccomp-default.json /etc/docker/
99

10-
RUN echo "cuos-system" >/etc/hostname
11-
1210
# Pre-install initramfs-tools
1311
RUN apt-get update && apt-get install --no-install-recommends -y \
1412
initramfs-tools \
@@ -48,6 +46,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
4846
jsonschema-jv \
4947
kbd \
5048
kmod \
49+
less \
5150
linux-image-amd64 \
5251
openssh-server \
5352
pass \

‎system/cuos/init.sh‎

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,15 +82,31 @@ prepare_data_volume() {
8282
chown -R root:systemd-journal /data/log/journal
8383
chmod 2755 /data/log/journal
8484
journalctl --flush
85+
if [[ ! -f /data/log/lastlog ]]; then
86+
touch /data/log/lastlog
87+
chgrp utmp /data/log/lastlog
88+
chmod 664 /data/log/lastlog
89+
fi
8590
}
8691

8792
set_hostname() {
93+
OLD_HOSTNAME="$(cat /etc/hostname)"
94+
8895
SYSTEM_HOSTNAME="$(jq_config '.hostname // empty')"
96+
if [[ -n "${SYSTEM_HOSTNAME}" && ! -f /etc/hostname ]]; then
97+
local r1 r2 hn
98+
r1=$(printf "%02X" $(( RANDOM % 256 )))
99+
r2=$(printf "%02X" $(( RANDOM % 256 )))
100+
SYSTEM_HOSTNAME="device-${r1}${r2}"
101+
fi
89102
if [[ -n "${SYSTEM_HOSTNAME}" ]]; then
90103
echo "Setting hostname to $SYSTEM_HOSTNAME"
91104
echo "$SYSTEM_HOSTNAME" > "/etc/hostname"
92105
hostname "$SYSTEM_HOSTNAME"
93106
fi
107+
if [[ -n "${REINIT:-}" && "${OLD_HOSTNAME}" != "${SYSTEM_HOSTNAME}" ]]; then
108+
systemctl restart networking
109+
fi
94110
}
95111

96112
configure_network() {
@@ -210,7 +226,10 @@ create_ssh_hostkey() {
210226

211227
configure_docker() {
212228
jq '{
213-
"log-level": "info",
229+
"log-driver": "journald",
230+
"log-opts": {
231+
"tag": "{{.Name}}"
232+
},
214233
"storage-driver": "overlay2",
215234
"data-root": "/data/docker",
216235
"bip": (.docker_bridge_net // "10.235.255.1/24"),
@@ -221,14 +240,16 @@ configure_docker() {
221240
# total: 4*128 = 512 networks
222241
}
223242
],
243+
"max-concurrent-downloads": 3,
244+
"max-concurrent-uploads": 3,
224245
"no-new-privileges": true,
225246
"live-restore": true,
226247
"userland-proxy": false,
227248
"default-ulimits": {
228249
"nofile": {
229-
"Hard": 20000,
230-
"Name": "nofile",
231-
"Soft": 20000
250+
"Hard": 20000,
251+
"Name": "nofile",
252+
"Soft": 20000
232253
}
233254
},
234255
"seccomp-profile": "/etc/docker/seccomp-default.json"

0 commit comments

Comments
 (0)