Compare commits
2 Commits
Author | SHA1 | Date |
---|---|---|
dave | db39afdbef | |
dave | a47a5bfe38 |
27
Dockerfile
27
Dockerfile
|
@ -1,35 +1,38 @@
|
|||
FROM ubuntu:xenial
|
||||
MAINTAINER Dave P
|
||||
FROM ubuntu:jammy
|
||||
|
||||
# Create user with user/password 'deluge'
|
||||
RUN useradd --create-home --uid 1000 deluge && \
|
||||
echo "deluge:deluge" | chpasswd
|
||||
|
||||
# Install deluge
|
||||
RUN set -x && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y supervisor vnstat openvpn iproute2 && \
|
||||
apt-get install -y software-properties-common && \
|
||||
add-apt-repository -y ppa:deluge-team/stable && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive apt-get install -y deluged deluge-web deluge-console
|
||||
|
||||
COPY auth /home/deluge/.config/deluge/
|
||||
COPY core.conf /home/deluge/.config/deluge/
|
||||
COPY web_plugin.conf /home/deluge/.config/deluge/
|
||||
COPY web.conf /home/deluge/.config/
|
||||
RUN apt-get update && \
|
||||
apt-get install -y software-properties-common && \
|
||||
add-apt-repository -y ppa:deluge-team/ppa && \
|
||||
apt-get update && \
|
||||
apt-get -y install deluged deluge-web deluge-console && \
|
||||
chown -R deluge /home/deluge/.config && \
|
||||
|
||||
RUN chown -R deluge /home/deluge/.config && \
|
||||
chgrp -R deluge /home/deluge/.config
|
||||
|
||||
# Install supervisor, vnstat
|
||||
RUN apt-get -y install supervisor vnstat
|
||||
COPY deluged.conf /etc/supervisor/conf.d/deluged.conf
|
||||
|
||||
# Install supervisor, vnstat
|
||||
COPY vnstatd.conf etc/supervisor/conf.d/vnstatd.conf
|
||||
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
|
||||
RUN chown -R deluge /var/lib/vnstat && \
|
||||
RUN set -x && \
|
||||
chown -R deluge /var/lib/vnstat && \
|
||||
chgrp -R deluge /var/lib/vnstat && \
|
||||
sed -i -e"s/^UnitMode\s0/UnitMode 1/" /etc/vnstat.conf && \
|
||||
sed -i -e"s/^RateUnit\s1/RateUnit 0/" /etc/vnstat.conf
|
||||
|
||||
# Install openvpn
|
||||
RUN apt-get install -y openvpn iproute2 && dpkg -l
|
||||
COPY openvpn.conf /etc/supervisor/conf.d/openvpn.conf
|
||||
|
||||
# Expose deluge-web, deluge
|
||||
|
|
|
@ -0,0 +1,68 @@
|
|||
def image_name = "dpedu/deluge2-vpn"
|
||||
|
||||
pipeline {
|
||||
agent {
|
||||
kubernetes {
|
||||
yaml """
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
spec:
|
||||
podAntiAffinity:
|
||||
preferredDuringSchedulingIgnoredDuringExecution: # avoid nodes already running a jenkins job
|
||||
- podAffinityTerm:
|
||||
labelSelector:
|
||||
matchExpressions:
|
||||
- key: jenkins
|
||||
operator: In
|
||||
values:
|
||||
- slave
|
||||
topologyKey: node
|
||||
containers:
|
||||
- name: docker
|
||||
image: docker:20-dind
|
||||
args:
|
||||
- "--insecure-registry"
|
||||
- "dockermirror:5000"
|
||||
securityContext:
|
||||
privileged: true
|
||||
"""
|
||||
}
|
||||
}
|
||||
stages {
|
||||
stage("Build image") {
|
||||
steps {
|
||||
container("docker") {
|
||||
script {
|
||||
try {
|
||||
docker.withRegistry('http://dockermirror:5000') {
|
||||
docker.image("ubuntu:jammy").pull()
|
||||
docker.image(image_name).pull() // Pull a recent version to share base layers with (?)
|
||||
}
|
||||
} catch (exc) {
|
||||
echo "couldn't pull image, assuming we're building it for the first time"
|
||||
}
|
||||
docker.build(image_name)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage("Push image") {
|
||||
steps {
|
||||
container("docker") {
|
||||
script {
|
||||
docker.withRegistry('http://dockermirror:5000') {
|
||||
docker.image(image_name).push("latest")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage("Show images") {
|
||||
steps {
|
||||
container("docker") {
|
||||
sh 'docker images'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue