4 Commits
Author SHA1 Message Date
pztrn 9eebc61f9a Remove crond from busybox launching.
ci/woodpecker/tag/build Pipeline was successful
2026-08-11 21:22:44 +05:00
pztrn f1a7e365bc GPG fixes, crontab fixes, additional packages and permissions script for container startup.
ci/woodpecker/tag/build Pipeline was successful
2026-08-11 09:34:34 +05:00
pztrn 14d19a949f nocem keyring fix.
ci/woodpecker/tag/build Pipeline was successful
2026-08-09 06:45:51 +05:00
pztrn e500bff0f1 Add diffutils for actsync.
ci/woodpecker/tag/build Pipeline was successful
2026-08-09 06:06:57 +05:00
9 changed files with 81 additions and 20 deletions
+39
View File
@@ -4,6 +4,40 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) but do not follows semantic versioning as it is useless in this type of project.
## [2.7.4-8] - 2026-08-11
### Removed
* Removed crond from busybox launch as it is completely useless. Use external cron instead.
## [2.7.4-7] - 2026-08-10
### Added
* GPG configuration for news user to skip keyboxd.
* Permission set script for /inn2.
* busybox-suid and nano packages installing.
### Changed
* norotate added to news.daily for proper statistics generation.
## [2.7.4-6] - 2026-08-09
### Added
* gpg configuration to skip keyboxd, so importing nocem gpg keys will work.
### Changed
* nocem keyring will be removed and re-imported every container launch.
## [2.7.4-5] - 2026-08-02
### Added
* diffutils package installation for actsync to work.
## [2.7.4-4] - 2026-07-29
### Added
@@ -48,6 +82,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
Initial container release with inn 2.7.4 built with perl/python/sqlite support.
[2.7.4-8]: https://code.pztrn.name/containers/inn2/compare/2.7.4-7...2.7.4-8
[2.7.4-7]: https://code.pztrn.name/containers/inn2/compare/2.7.4-6...2.7.4-7
[2.7.4-6]: https://code.pztrn.name/containers/inn2/compare/2.7.4-5...2.7.4-6
[2.7.4-5]: https://code.pztrn.name/containers/inn2/compare/2.7.4-4...2.7.4-5
[2.7.4-4]: https://code.pztrn.name/containers/inn2/compare/2.7.4-3...2.7.4-4
[2.7.4-3]: https://code.pztrn.name/containers/inn2/compare/2.7.4-2...2.7.4-3
[2.7.4-2]: https://code.pztrn.name/containers/inn2/compare/2.7.4-1...2.7.4-2
[2.7.4-1]: https://code.pztrn.name/containers/inn2/compare/2.7.4...2.7.4-1
+3
View File
@@ -4,14 +4,17 @@ ENV PERL_MM_USE_DEFAULT=1
RUN apk add --no-cache \
bison \
build-base \
busybox-suid \
bzip2 \
curl \
diffutils \
flex \
gawk \
gd-dev \
gnupg \
libgd \
krb5-dev \
nano \
openssl \
openssl-dev \
perl \
+11 -4
View File
@@ -85,12 +85,19 @@ Note that this code is built to support dual-stack (IPv4+IPv6). You should eithe
## Cronjobs
This Docker image come with a recommended in documentation set of cronjobs. To customize it copy `etc/crontabs/news` file, make neccessary changes and mount it to container in `/etc/crontabs/news`.
INN requires some cronjobs to be executed due to it's architecture. Previously this image was launching crond from busybox, but it is a pain to configure it to work properly, so you should use some external cron service.
If you want to use cron outside of your container:
Example from oldproto.ru:
```shell
0 3 * * * docker compose run inn news.daily expireover lowmark delayrm
```text
# min hour day month weekday command
0 0 * * * docker compose exec -u news inn news.daily expireover lowmark delayrm norotate
15 * * * * docker compose exec -u news inn rnews -U
0 4 * * * docker compose exec -u news inn ctlinnd -t 120 -s reload incoming.conf 'flush cache'
*/10 * * * * docker compose exec -u news inn nntpsend
15 5 * * * docker compose exec -u news inn ctlinnd flush inpaths!
30 5 * * * docker compose exec -u news inn sendinpaths -c
30 4 * * * docker compose exec -u news inn actsyncd /inn2/etc/actsync.cfg
```
## Sending emails
+3
View File
@@ -0,0 +1,3 @@
#!/bin/sh
chown -R news:news /inn2
+22
View File
@@ -0,0 +1,22 @@
#!/bin/sh
if [ -f "/etc/gpg/gpg.conf" ]; then
exit 0
fi
rm -rf /etc/gpg || exit 0
mkdir -p /etc/gpg
echo "#use-keyboxd" > /etc/gpg/gpg.conf
rm -rf /inn2/.gnupg
mkdir -p /inn2/.gnupg
echo "#use-keyboxd" > /inn2/.gnupg/common.conf
chown -R news:news /inn2/.gnupg
chmod 0700 /inn2/.gnupg
chmod 0600 /inn2/.gnupg/common.conf
rm -rf /root/.gnupg
mkdir -p /root/.gnupg
echo "#use-keyboxd" > /root/.gnupg/common.conf
chmod 0700 /root/.gnupg
chmod 0600 /root/.gnupg/common.conf
-3
View File
@@ -1,3 +0,0 @@
#!/bin/sh
chown news:news /etc/crontabs/news
+3 -5
View File
@@ -1,16 +1,14 @@
#!/bin/sh
if [ -f "/inn2/etc/pgp/ncmring.gpg" ]; then
exit 0
fi
if [ ! -d "/inn2/etc/pgp" ]; then
mkdir -p "/inn2/etc/pgp"
fi
echo "* Downloading NoCeM gpg keys and ctl file..."
curl -o /inn2/etc/pgp/ncmring.gpg https://rosalind.home.xs4all.nl/nocemreg/ncmring.asc
rm /inn2/etc/pgp/ncmring.gpg
curl -o /inn2/etc/pgp/ncmring.gpg.source https://rosalind.home.xs4all.nl/nocemreg/ncmring.asc
gpg --no-default-keyring --keyring /inn2/etc/pgp/ncmring.gpg --import /inn2/etc/pgp/ncmring.gpg.source
chown -R news:news /inn2/etc/nocem.ctl /inn2/etc/pgp
echo "* Enabling NoCeM processing..."
-5
View File
@@ -1,5 +0,0 @@
# min hour day month weekday command
0 5 * * * cd /inn2; /inn2/bin/news.daily expireover lowmark delayrm
15 * * * * cd /inn2; /inn2/bin/rnews -U
0 4 * * * cd /inn2; /inn2/bin/ctlinnd -t 120 -s reload incoming.conf 'flush cache'
*/10 * * * * cd /inn2; /inn2/bin/nntpsend
-3
View File
@@ -1,3 +0,0 @@
#!/bin/sh
/usr/sbin/crond -f