82 lines
2.5 KiB
Docker
82 lines
2.5 KiB
Docker
#FROM debian:bookworm
|
|
FROM ubuntu:plucky
|
|
|
|
MAINTAINER Roman VANICEK <roman.vanicek@ivasoft.cz>
|
|
|
|
ENV ADMIN_PASSWORD_SECRET=samba-admin-password \
|
|
ADMIN_ACCOUNT=Administrator \
|
|
BIND_INTERFACES_ONLY=yes \
|
|
INTERFACES="lo eth0" \
|
|
LOG_LEVEL=1 \
|
|
MODEL=standard \
|
|
NETBIOS_NAME= \
|
|
REALM=ad.example.com \
|
|
SERVER_STRING="Samba Member Server" \
|
|
TZ=UTC \
|
|
WINBIND_USE_DEFAULT_DOMAIN=yes \
|
|
WORKGROUP=AD \
|
|
CUPS_TRUSTED_PROXY= \
|
|
EXPORTER_ENABLED=true \
|
|
EXPORTER_LISTEN_ADDRESS=127.0.0.1:9922
|
|
|
|
COPY *.sh /
|
|
COPY imker-ubuntu-samba-exporter-ppa-plucky.sources /etc/apt/sources.list.d/
|
|
|
|
RUN apt-get -y update && \
|
|
# HACK: ubuntu:plucky has broken ca-certificates and apt-get update fails for samba-exporter repository
|
|
DEBIAN_FRONTEND=noninteractive apt-get -yqq --no-install-recommends install ca-certificates && \
|
|
# HACK: samba-exporter needs adduser and systemctl for its postinstall script
|
|
DEBIAN_FRONTEND=noninteractive apt-get -yqq --no-install-recommends install adduser systemd && \
|
|
echo '#!/bin/sh' > /usr/bin/systemctl && chmod +x /usr/bin/systemctl && \
|
|
apt-get -y update && \
|
|
DEBIAN_FRONTEND=noninteractive apt-get -yqq --no-install-recommends install \
|
|
nano \
|
|
tzdata \
|
|
acl \
|
|
krb5-user \
|
|
libpam-krb5 \
|
|
adcli \
|
|
winbind \
|
|
libnss-winbind \
|
|
libpam-winbind \
|
|
samba \
|
|
samba-common-bin \
|
|
samba-dsdb-modules \
|
|
samba-client \
|
|
samba-vfs-modules \
|
|
logrotate \
|
|
attr \
|
|
libpam-mount \
|
|
supervisor \
|
|
cups \
|
|
samba-exporter && \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* && \
|
|
# HACK: samba-exporter
|
|
rm /usr/bin/systemctl && \
|
|
\
|
|
chmod +x /entrypoint.sh && \
|
|
chmod +x /persistCups.sh && \
|
|
sed -E -i "s:^(passwd\:\s*files\s*)$:\1 winbind:" /etc/nsswitch.conf && \
|
|
sed -E -i "s:^(group\:\s*files\s*)$:\1 winbind:" /etc/nsswitch.conf && \
|
|
pam-auth-update --package && \
|
|
mkdir -p /etc/cups-persist/ppd && \
|
|
ln -s /etc/cups-persist/printers.conf /etc/cups/printers.conf && \
|
|
rmdir /etc/cups/ppd && \
|
|
ln -s /etc/cups-persist/ppd /etc/cups/ppd && \
|
|
sed -i "s:Listen localhost\:631:Port 631\nServerAlias \*:" /etc/cups/cupsd.conf && \
|
|
useradd guest
|
|
|
|
#RUN chmod 777 /home
|
|
|
|
COPY *.conf.j2 /root/
|
|
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
|
COPY crontab /etc
|
|
|
|
VOLUME /etc/samba /var/lib/samba /etc/cups-persist
|
|
|
|
EXPOSE 135 137 138 139 445 631 9100
|
|
|
|
ENTRYPOINT ["/entrypoint.sh"]
|
|
CMD ["/usr/bin/supervisord","-c","/etc/supervisor/conf.d/supervisord.conf"]
|