use gitlab docker registry

This commit is contained in:
Sebastian Hugentobler 2017-09-06 10:46:01 +02:00
parent bdf253be3d
commit c2aad1da9e
6 changed files with 51 additions and 31 deletions

10
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,10 @@
build:
image: docker:latest
services:
- docker:dind
stage: build
script:
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- docker build --pull --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME --tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA

View File

@ -1,28 +1,38 @@
FROM quay.io/thallian/confd-env:latest #FROM alpine:latest as builder
ENV PROFTP_VERSION v1.3.6 #ENV PROFTP_VERSION v1.3.6
RUN addgroup -g 2222 proftp #ADD /rootfs /
RUN adduser -h /var/lib/proftp -u 2222 -D -G proftp proftp
#RUN apk add --no-cache libressl openssh-client tar gcc make g++ openldap-dev zlib-dev file
#RUN mkdir /tmp/proftpd
#RUN wget -qO- https://github.com/proftpd/proftpd/archive/$PROFTP_VERSION.tar.gz | tar -xz -C /tmp/proftpd --strip 1
#WORKDIR /tmp/proftpd
#RUN ./configure --with-modules=mod_ldap:mod_sftp --disable-wtmp
#RUN patch -p1 -i /musl_mempcpy.patch
#RUN make && make install
FROM registry.gitlab.com/thallian/docker-confd-env:master
#COPY --from=builder /usr/local/sbin/proftpd /usr/sbin/proftpd
#COPY --from=builder /usr/local/lib/proftpd /usr/lib/proftpd
RUN apk add --no-cache libressl openssh-client openldap zlib
RUN apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing \
proftpd proftpd-mod_ldap proftpd-mod_sftp
RUN addgroup -g 2222 access
RUN addgroup proftpd access
RUN rm /etc/proftpd/dhparams.pem
RUN mkdir /etc/proftpd/keys/
ADD /rootfs / ADD /rootfs /
RUN apk add --no-cache libressl openssh-client openldap tar gcc make g++ openldap-dev zlib zlib-dev file
RUN mkdir /tmp/proftpd
RUN wget -qO- https://github.com/proftpd/proftpd/archive/$PROFTP_VERSION.tar.gz | tar -xz -C /tmp/proftpd --strip 1
WORKDIR /tmp/proftpd
RUN ./configure --with-modules=mod_ldap:mod_sftp --disable-wtmp
RUN patch -p1 -i /musl_mempcpy.patch
RUN make && make install
RUN rm -r /tmp/proftpd
RUN rm /musl_mempcpy.patch
WORKDIR / WORKDIR /
RUN apk del tar gcc make g++ openldap-dev zlib-dev file VOLUME /etc/proftpd/keys /var/lib/ftp/data
VOLUME /var/lib/proftp/keys /var/lib/proftp/data
EXPOSE 22 EXPOSE 22

View File

@ -1,3 +1,3 @@
[template] [template]
src = "proftpd.conf.tmpl" src = "proftpd.conf.tmpl"
dest = "/usr/local/etc/proftpd.conf" dest = "/etc/proftpd/proftpd.conf"

View File

@ -5,10 +5,10 @@ Port 22
UseIPv6 off UseIPv6 off
Umask 006 007 Umask 006 007
MaxInstances 30 MaxInstances 30
User proftp User proftpd
Group proftp Group proftpd
DefaultRoot /var/lib/proftp/data DefaultRoot /var/lib/ftp/data
DefaultChdir /var/lib/proftp/data DefaultChdir /var/lib/ftp/data
AllowOverwrite on AllowOverwrite on
RequireValidShell off RequireValidShell off
@ -19,8 +19,8 @@ RequireValidShell off
<IfModule mod_sftp.c> <IfModule mod_sftp.c>
SFTPEngine on SFTPEngine on
SFTPAuthMethods password SFTPAuthMethods password
SFTPDHParamFile /var/lib/proftp/keys/dhparams.pem SFTPDHParamFile /etc/proftpd/keys/dhparams.pem
SFTPHostKey /var/lib/proftp/keys/ssh_rsa_key SFTPHostKey /etc/proftpd/keys/ssh_rsa_key
</IfModule> </IfModule>
<IfModule mod_ldap.c> <IfModule mod_ldap.c>
@ -39,6 +39,6 @@ RequireValidShell off
LDAPForceDefaultUID on LDAPForceDefaultUID on
LDAPForceDefaultGID on LDAPForceDefaultGID on
LDAPGenerateHomedir on LDAPGenerateHomedir on
LDAPGenerateHomedirPrefix /var/lib/proftp/data LDAPGenerateHomedirPrefix /var/lib/ftp/data
LDAPForceGeneratedHomedir on LDAPForceGeneratedHomedir on
</IfModule> </IfModule>

View File

@ -1,5 +1,5 @@
#!/usr/bin/with-contenv sh #!/usr/bin/with-contenv sh
if [ ! -f /var/lib/proftp/keys/dhparams.pem ]; then if [ ! -f /etc/proftpd/keys/dhparams.pem ]; then
openssl dhparam -outform PEM -5 nbits >> /var/lib/proftp/keys/dhparams.pem openssl dhparam -outform PEM -5 nbits >> /etc/proftpd/keys/dhparams.pem
fi fi

View File

@ -1,5 +1,5 @@
#!/usr/bin/with-contenv sh #!/usr/bin/with-contenv sh
if [ ! -f /var/lib/proftp/keys/ssh_rsa_key ]; then if [ ! -f /etc/proftpd/keys/ssh_rsa_key ]; then
ssh-keygen -b 2048 -t rsa -f /var/lib/proftp/keys/ssh_rsa_key -q -N "" ssh-keygen -b 2048 -t rsa -f /etc/proftpd/keys/ssh_rsa_key -q -N ""
fi fi