7 Commits
Author SHA1 Message Date
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
pztrn 6ba17b951e cleanfeed installation, stale pids script fix, start-innd script removal.
ci/woodpecker/tag/build Pipeline was successful
2026-07-29 11:34:53 +05:00
pztrn e97be45bcc Enable nocem. 2026-07-29 10:52:04 +05:00
pztrn c82abea21a Remove stale pids.
ci/woodpecker/tag/build Pipeline was successful
2026-07-29 00:04:18 +05:00
pztrn 6fb95559b5 Update changelog. 2026-07-27 00:20:05 +05:00
10 changed files with 139 additions and 20 deletions
+55
View File
@@ -4,12 +4,62 @@ 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-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
* nocem processing enablement with data from https://rosalind.home.xs4all.nl/nocemreg/nocemreg.html.
* cleanfeed installation
### Changed
* stale pids removal script now always exits 0 if removal failed.
### Removed
* start-innd script which was used previously for starting innd.
## [2.7.4-3] - 2026-07-29
### Added
* remove stale pids on container start
## [2.7.4-2] - 2026-07-26
### Added
* switch to s6-overlay (which is more suitable for containers than plain s6).
* syslogd support via s6-overlay.
* cron daemon with set of default cronjobs.
## [2.7.4-1] - 2026-07-26
@@ -26,6 +76,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-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
[2.7.4]: https://code.pztrn.name/containers/inn2/releases/tag/2.7.4
+14 -1
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 \
@@ -45,6 +48,15 @@ RUN mkdir /src && cd /src && \
mv /inn2/etc /inn2/etc-default && \
mv /inn2/db /inn2/db-default && \
mv /inn2/spool /inn2/spool-default && \
# cleanfeed
cd /src && curl -sL https://github.com/infybofh/cleanfeed-ng/archive/refs/tags/2026-07-03-rc1.tar.gz | tar xz && cd cleanfeed-ng-2026-07-03-rc1 && \
cp cleanfeed /inn2/bin/filter/filter_innd.pl && \
mkdir /inn2/etc-default/cleanfeed && \
cp cleanfeed.local.example /inn2/etc-default/cleanfeed/cleanfeed.local && \
cp samples/* /inn2/etc-default/cleanfeed && \
mkdir -p /inn2/spool-default/cleanfeed && \
mkdir -p /var/www/ && \
chown -R news:news /var/www && \
rm -rf /src
COPY etc /etc
@@ -53,8 +65,9 @@ RUN groupmod -g 600 news && usermod -u 600 -g 600 -d /inn2 news && chown -R news
WORKDIR /inn2
ENV PATH=/inn2/bin:$PATH
ENV CLEANFEED_CONFIG_DIR=/inn2/etc/cleanfeed
EXPOSE 119
EXPOSE 563
VOLUME [ "/inn2/db", "/inn2/spool", "/inn2/log" ]
VOLUME [ "/inn2/db", "/inn2/spool", "/inn2/log", "/var/www" ]
ENTRYPOINT [ "/init" ]
+13 -1
View File
@@ -2,7 +2,7 @@
This repository holds files neccessary to build inn2 (InterNet News 2), a NNTP server.
This container is based on [greenbender's image](https://github.com/greenbender/inn-docker).
This container is based on [greenbender's image](https://github.com/greenbender/inn-docker) and includes enabled nocems processing and cleanfeed.
## Usage
@@ -27,6 +27,7 @@ services:
- "./data/spool:/inn2/spool"
- "./data/tmp:/inn2/tmp"
- "./data/syslog:/var/log"
- "./data/www:/var/www"
ulimits:
nofile:
soft: 65535
@@ -49,6 +50,7 @@ services:
- "./data/spool:/inn2/spool"
- "./data/tmp:/inn2/tmp"
- "./data/syslog:/var/log"
- "./data/www:/var/www"
networks:
inn2-ipvlan:
ipv4_address: 192.168.168.168 # ip address from real LAN.
@@ -95,6 +97,16 @@ If you want to use cron outside of your container:
As this container has no postfix installed (why do you might ever need it here?) you can use [ssmtp](https://wiki.debian.org/sSMTP) which installed in container to get mails sent over SMTP.
## No See 'Em's
This container has nocem enabled and neccessary data will be loaded on first start from [NoCeM registry](https://rosalind.home.xs4all.nl/nocemreg/nocemreg.html).
Make sure you have `news.lists.filters` group created.
## Cleanfeed
Cleanfeed is automatically installed from [infybofh's repository](https://github.com/infybofh/cleanfeed-ng). Configuration is located in `/inn2/etc/cleanfeed` directory within container, please configure it according to your needs.
## Versioning
Image versioning follows official inn2 versions with additional optional version postfix added to indicate image fixes for particular version.
+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
+15
View File
@@ -0,0 +1,15 @@
#!/bin/sh
if [ ! -d "/inn2/etc/pgp" ]; then
mkdir -p "/inn2/etc/pgp"
fi
echo "* Downloading NoCeM gpg keys and ctl file..."
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..."
sed -i '/^#nocem/ { s/^#//; n; s/^#//; }' /inn2/etc/newsfeeds
+13
View File
@@ -0,0 +1,13 @@
#!/bin/sh
if [ ! -d "/inn2/etc/cleanfeed" ]; then
cp -r "/inn2/etc-default/cleanfeed" "/inn2/etc"
chown -R news:news "/inn2/etc/cleanfeed"
fi
if [ ! -d "/inn2/spool/cleanfeed" ]; then
mkdir -p "/inn2/spool/cleanfeed"
chown -R news:news "/inn2/spool/cleanfeed"
fi
chown -R news:news /var/www
+3
View File
@@ -0,0 +1,3 @@
#!/bin/sh
rm "/inn2/run/*.pid" || exit 0
+1 -1
View File
@@ -1,5 +1,5 @@
# min hour day month weekday command
0 5 * * * cd /inn2; /inn2/bin/news.daily expireover lowmark delayrm
0 5 * * * cd /inn2; /inn2/bin/news.daily expireover lowmark delayrm norotate
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
-17
View File
@@ -1,17 +0,0 @@
#!/bin/sh
if [ ! -f "/inn2/etc/inn.conf" ]; then
cp -r /inn2/etc-default/* /inn2/etc
fi
if [ ! -f "/inn2/db/history" ]; then
cp -r /inn2/db-default/* /inn2/db
fi
if [ ! -d "/inn2/spool/articles" ]; then
cp -r /inn2/spool-default/* /inn2/spool
fi
cd /inn2 || exit 1
/inn2/bin/innd -f