From 9206be488af2dc6fd2ef5ff7506c5bc8d9395fdc Mon Sep 17 00:00:00 2001 From: Anatolii Zimovskii Date: Fri, 19 Jan 2024 15:42:02 +0300 Subject: [PATCH] CVE-2023-22527 - RCE (Remote Code Execution) Vulnerability In Confluence Data Center and Confluence Server --- CHANGELOG.md | 4 + linux/discontinued/balancer/legacy/Dockerfile | 41 ++ linux/discontinued/balancer/legacy/Makefile | 4 + linux/discontinued/balancer/legacy/README.md | 30 + linux/discontinued/epicmorg/README.md | 5 + .../epicmorg/devel/jdk11/Dockerfile | 24 + .../epicmorg/devel/jdk11/Makefile | 19 + .../epicmorg/devel/jdk11/docker-compose.yml | 6 + .../epicmorg/devel/jdk16/Dockerfile | 24 + .../epicmorg/devel/jdk16/Makefile | 19 + .../epicmorg/devel/jdk16/docker-compose.yml | 6 + .../epicmorg/devel/jdk6/Dockerfile | 20 + .../discontinued/epicmorg/devel/jdk6/Makefile | 19 + .../epicmorg/devel/jdk6/docker-compose.yml | 6 + .../epicmorg/devel/jdk7/Dockerfile | 20 + .../discontinued/epicmorg/devel/jdk7/Makefile | 19 + .../epicmorg/devel/jdk7/docker-compose.yml | 6 + .../epicmorg/devel/jdk8/Dockerfile | 21 + .../discontinued/epicmorg/devel/jdk8/Makefile | 19 + .../epicmorg/devel/jdk8/docker-compose.yml | 6 + .../epicmorg/devel/main/Dockerfile | 116 +++ .../discontinued/epicmorg/devel/main/Makefile | 19 + .../epicmorg/devel/main/docker-compose.yml | 6 + .../epicmorg/edge/jdk11/Dockerfile | 24 + .../discontinued/epicmorg/edge/jdk11/Makefile | 19 + .../epicmorg/edge/jdk11/docker-compose.yml | 6 + .../epicmorg/edge/jdk16/Dockerfile | 24 + .../discontinued/epicmorg/edge/jdk16/Makefile | 19 + .../epicmorg/edge/jdk16/docker-compose.yml | 6 + .../epicmorg/edge/jdk6/Dockerfile | 20 + .../discontinued/epicmorg/edge/jdk6/Makefile | 19 + .../epicmorg/edge/jdk6/docker-compose.yml | 6 + .../epicmorg/edge/jdk7/Dockerfile | 20 + .../discontinued/epicmorg/edge/jdk7/Makefile | 19 + .../epicmorg/edge/jdk7/docker-compose.yml | 6 + .../epicmorg/edge/jdk8/Dockerfile | 21 + .../discontinued/epicmorg/edge/jdk8/Makefile | 19 + .../epicmorg/edge/jdk8/docker-compose.yml | 6 + .../epicmorg/edge/main/Dockerfile | 30 + .../discontinued/epicmorg/edge/main/Makefile | 19 + .../epicmorg/edge/main/docker-compose.yml | 6 + .../main/sources.list.d/github_git-lfs.list | 2 + .../edge/main/sources.list.d/sources.list | 21 + .../epicmorg/prod/jdk11/Dockerfile | 23 + .../discontinued/epicmorg/prod/jdk11/Makefile | 19 + .../epicmorg/prod/jdk11/docker-compose.yml | 6 + .../epicmorg/prod/jdk16/Dockerfile | 23 + .../discontinued/epicmorg/prod/jdk16/Makefile | 19 + .../epicmorg/prod/jdk16/docker-compose.yml | 6 + .../epicmorg/prod/jdk6/Dockerfile | 20 + .../discontinued/epicmorg/prod/jdk6/Makefile | 19 + .../epicmorg/prod/jdk6/docker-compose.yml | 6 + .../epicmorg/prod/jdk7/Dockerfile | 20 + .../discontinued/epicmorg/prod/jdk7/Makefile | 19 + .../epicmorg/prod/jdk7/docker-compose.yml | 6 + .../epicmorg/prod/jdk8/Dockerfile | 20 + .../discontinued/epicmorg/prod/jdk8/Makefile | 19 + .../epicmorg/prod/jdk8/docker-compose.yml | 6 + .../epicmorg/prod/main/Dockerfile | 191 +++++ .../discontinued/epicmorg/prod/main/Makefile | 19 + .../epicmorg/prod/main/docker-compose.yml | 6 + .../epicmorg/prod/main/etc/locale.gen | 12 + .../epicmorg/prod/main/etc/locale.gen.full | 496 +++++++++++++ .../prod/main/sources.list.d/github-cli.list | 1 + .../main/sources.list.d/github_git-lfs.list | 2 + .../prod/main/sources.list.d/sources.list | 19 + .../trusted.gpg.d/deb-multimedia-keyring.gpg | Bin 0 -> 7607 bytes .../githubcli-archive-keyring.gpg | Bin 0 -> 1795 bytes linux/discontinued/staytus/Dockerfile | 30 + linux/discontinued/staytus/Makefile | 4 + linux/discontinued/staytus/README.md | 37 + linux/discontinued/staytus/entrypoint.sh | 39 + linux/discontinued/syspass/LICENSE | 674 ++++++++++++++++++ linux/discontinued/syspass/README.md | 41 ++ linux/discontinued/syspass/sysPass/Dockerfile | 169 +++++ linux/discontinued/syspass/sysPass/Makefile | 5 + .../discontinued/syspass/sysPass/common_fn.sh | 122 ++++ .../syspass/sysPass/docker-compose.yml | 24 + .../syspass/sysPass/entrypoint.sh | 55 ++ .../syspass/sysPass/init-functions | 17 + linux/discontinued/syspass/sysPass/locale.gen | 25 + .../syspass/sysPass/locale.gen.full | 496 +++++++++++++ linux/discontinued/syspass/sysPass/smb.conf | 239 +++++++ .../discontinued/syspass/sysPass/sources.list | 19 + .../discontinued/syspass/sysPass/syspass.conf | 184 +++++ linux/discontinued/syspass/sysPass/xdebug.ini | 43 ++ .../atlassian/bitbucket/8/8.17.0/Dockerfile | 47 ++ .../bitbucket/8/8.17.0/Dockerfile.jdk11 | 48 ++ .../bitbucket/8/8.17.0/Dockerfile.jdk17 | 48 ++ .../atlassian/bitbucket/8/8.17.0/Makefile | 19 + .../atlassian/bitbucket/8/8.17.0/README.md | 216 ++++++ .../bitbucket/8/8.17.0/docker-compose.yml | 16 + .../bitbucket/8/8.17.0/entrypoint.sh | 57 ++ .../atlassian/bitbucket/latest/Dockerfile | 4 +- .../bitbucket/latest/Dockerfile.jdk11 | 2 +- .../bitbucket/latest/Dockerfile.jdk17 | 2 +- .../atlassian/confluence/7/7.19.18/Dockerfile | 46 ++ .../confluence/7/7.19.18/Dockerfile.jdk11 | 46 ++ .../atlassian/confluence/7/7.19.18/Makefile | 19 + .../confluence/7/7.19.18/docker-compose.yml | 11 + .../confluence/7/7.19.18/entrypoint.sh | 39 + .../atlassian/confluence/8/8.7.2/.env | 2 + .../atlassian/confluence/8/8.7.2/Dockerfile | 45 ++ .../confluence/8/8.7.2/Dockerfile.jdk11 | 46 ++ .../confluence/8/8.7.2/Dockerfile.jdk17 | 46 ++ .../atlassian/confluence/8/8.7.2/Makefile | 19 + .../confluence/8/8.7.2/docker-compose.yml | 25 + .../confluence/8/8.7.2/entrypoint.sh | 39 + .../atlassian/confluence/latest/Dockerfile | 2 +- .../confluence/latest/Dockerfile.jdk11 | 2 +- .../confluence/latest/Dockerfile.jdk17 | 2 +- linux/ecosystem/atlassian/jira/9/9.12.2/.env | 2 + .../atlassian/jira/9/9.12.2/Dockerfile | 52 ++ .../atlassian/jira/9/9.12.2/Dockerfile.jdk11 | 51 ++ .../atlassian/jira/9/9.12.2/Dockerfile.jdk17 | 51 ++ .../atlassian/jira/9/9.12.2/Makefile | 19 + .../jira/9/9.12.2/docker-compose.yml | 25 + .../atlassian/jira/9/9.12.2/entrypoint.sh | 89 +++ linux/ecosystem/atlassian/jira/latest/.env | 2 +- 119 files changed, 5102 insertions(+), 8 deletions(-) create mode 100644 linux/discontinued/balancer/legacy/Dockerfile create mode 100644 linux/discontinued/balancer/legacy/Makefile create mode 100644 linux/discontinued/balancer/legacy/README.md create mode 100644 linux/discontinued/epicmorg/README.md create mode 100644 linux/discontinued/epicmorg/devel/jdk11/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/jdk11/Makefile create mode 100644 linux/discontinued/epicmorg/devel/jdk11/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/devel/jdk16/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/jdk16/Makefile create mode 100644 linux/discontinued/epicmorg/devel/jdk16/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/devel/jdk6/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/jdk6/Makefile create mode 100644 linux/discontinued/epicmorg/devel/jdk6/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/devel/jdk7/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/jdk7/Makefile create mode 100644 linux/discontinued/epicmorg/devel/jdk7/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/devel/jdk8/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/jdk8/Makefile create mode 100644 linux/discontinued/epicmorg/devel/jdk8/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/devel/main/Dockerfile create mode 100644 linux/discontinued/epicmorg/devel/main/Makefile create mode 100644 linux/discontinued/epicmorg/devel/main/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/jdk11/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/jdk11/Makefile create mode 100644 linux/discontinued/epicmorg/edge/jdk11/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/jdk16/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/jdk16/Makefile create mode 100644 linux/discontinued/epicmorg/edge/jdk16/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/jdk6/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/jdk6/Makefile create mode 100644 linux/discontinued/epicmorg/edge/jdk6/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/jdk7/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/jdk7/Makefile create mode 100644 linux/discontinued/epicmorg/edge/jdk7/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/jdk8/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/jdk8/Makefile create mode 100644 linux/discontinued/epicmorg/edge/jdk8/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/main/Dockerfile create mode 100644 linux/discontinued/epicmorg/edge/main/Makefile create mode 100644 linux/discontinued/epicmorg/edge/main/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/edge/main/sources.list.d/github_git-lfs.list create mode 100644 linux/discontinued/epicmorg/edge/main/sources.list.d/sources.list create mode 100644 linux/discontinued/epicmorg/prod/jdk11/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/jdk11/Makefile create mode 100644 linux/discontinued/epicmorg/prod/jdk11/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/jdk16/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/jdk16/Makefile create mode 100644 linux/discontinued/epicmorg/prod/jdk16/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/jdk6/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/jdk6/Makefile create mode 100644 linux/discontinued/epicmorg/prod/jdk6/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/jdk7/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/jdk7/Makefile create mode 100644 linux/discontinued/epicmorg/prod/jdk7/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/jdk8/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/jdk8/Makefile create mode 100644 linux/discontinued/epicmorg/prod/jdk8/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/main/Dockerfile create mode 100644 linux/discontinued/epicmorg/prod/main/Makefile create mode 100644 linux/discontinued/epicmorg/prod/main/docker-compose.yml create mode 100644 linux/discontinued/epicmorg/prod/main/etc/locale.gen create mode 100644 linux/discontinued/epicmorg/prod/main/etc/locale.gen.full create mode 100644 linux/discontinued/epicmorg/prod/main/sources.list.d/github-cli.list create mode 100644 linux/discontinued/epicmorg/prod/main/sources.list.d/github_git-lfs.list create mode 100644 linux/discontinued/epicmorg/prod/main/sources.list.d/sources.list create mode 100644 linux/discontinued/epicmorg/prod/main/trusted.gpg.d/deb-multimedia-keyring.gpg create mode 100644 linux/discontinued/epicmorg/prod/main/trusted.gpg.d/githubcli-archive-keyring.gpg create mode 100644 linux/discontinued/staytus/Dockerfile create mode 100644 linux/discontinued/staytus/Makefile create mode 100644 linux/discontinued/staytus/README.md create mode 100755 linux/discontinued/staytus/entrypoint.sh create mode 100644 linux/discontinued/syspass/LICENSE create mode 100644 linux/discontinued/syspass/README.md create mode 100644 linux/discontinued/syspass/sysPass/Dockerfile create mode 100644 linux/discontinued/syspass/sysPass/Makefile create mode 100644 linux/discontinued/syspass/sysPass/common_fn.sh create mode 100644 linux/discontinued/syspass/sysPass/docker-compose.yml create mode 100755 linux/discontinued/syspass/sysPass/entrypoint.sh create mode 100644 linux/discontinued/syspass/sysPass/init-functions create mode 100644 linux/discontinued/syspass/sysPass/locale.gen create mode 100644 linux/discontinued/syspass/sysPass/locale.gen.full create mode 100644 linux/discontinued/syspass/sysPass/smb.conf create mode 100644 linux/discontinued/syspass/sysPass/sources.list create mode 100644 linux/discontinued/syspass/sysPass/syspass.conf create mode 100644 linux/discontinued/syspass/sysPass/xdebug.ini create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk11 create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk17 create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/Makefile create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/README.md create mode 100644 linux/ecosystem/atlassian/bitbucket/8/8.17.0/docker-compose.yml create mode 100755 linux/ecosystem/atlassian/bitbucket/8/8.17.0/entrypoint.sh create mode 100644 linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile create mode 100644 linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile.jdk11 create mode 100644 linux/ecosystem/atlassian/confluence/7/7.19.18/Makefile create mode 100644 linux/ecosystem/atlassian/confluence/7/7.19.18/docker-compose.yml create mode 100755 linux/ecosystem/atlassian/confluence/7/7.19.18/entrypoint.sh create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/.env create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk11 create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk17 create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/Makefile create mode 100644 linux/ecosystem/atlassian/confluence/8/8.7.2/docker-compose.yml create mode 100755 linux/ecosystem/atlassian/confluence/8/8.7.2/entrypoint.sh create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/.env create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk11 create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk17 create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/Makefile create mode 100644 linux/ecosystem/atlassian/jira/9/9.12.2/docker-compose.yml create mode 100755 linux/ecosystem/atlassian/jira/9/9.12.2/entrypoint.sh diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c2106145..4469964b2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,8 @@ # Changelog +## 2024 +* `jan` + * new versions of images + * CVE-2023-22527 - RCE (Remote Code Execution) Vulnerability In Confluence Data Center and Confluence Server ## 2023 * `sep-oct-nov-dec` * `nextcloud` upgrade diff --git a/linux/discontinued/balancer/legacy/Dockerfile b/linux/discontinued/balancer/legacy/Dockerfile new file mode 100644 index 000000000..be9c256a2 --- /dev/null +++ b/linux/discontinued/balancer/legacy/Dockerfile @@ -0,0 +1,41 @@ +FROM debian:buster +MAINTAINER Anatoliy Zimovskiy + +ENV DEBIAN_FRONTEND noninteractive + +#editing sources list +RUN rm /etc/apt/sources.list +COPY sources.list /etc/apt/sources.list +COPY locale.gen /etc/locale.gen + +# fix errors +RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections + +#installing utils +RUN apt-get update && apt-get install -y --allow-unauthenticated ca-certificates gnupg sudo apt-transport-https lsb-release apt-utils locales console-cyrillic wget curl htop mc tmux iftop cmatrix iputils-ping cmatrix-xfont lsof lynx fontconfig smbclient nano + +#installing nginx repo +RUN wget -O /etc/apt/trusted.gpg.d/nginx-mainline.gpg https://packages.sury.org/nginx-mainline/apt.gpg +RUN sh -c 'echo "deb https://packages.sury.org/nginx-mainline/ buster main" > /etc/apt/sources.list.d/nginx-mainline.list' + +#installing packages +RUN apt-get update && apt-get install -y --allow-unauthenticated libgd-tools geoip-bin nginx-doc ssl-cert nginx-extras openssl libnginx-mod-http-cache-purge libnginx-mod-http-dav-ext libnginx-mod-http-geoip libnginx-mod-http-headers-more-filter libnginx-mod-http-lua libnginx-mod-http-uploadprogress libnginx-mod-mail libnginx-mod-stream libnginx-mod-http-xslt-filter + +RUN ln -sf /dev/stdout /var/log/nginx/access.log && \ + ln -sf /dev/stderr /var/log/nginx/error.log + +#After install fixes +RUN localedef en_US.UTF-8 -i en_US -f UTF-8 +RUN update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 +RUN apt update +RUN apt upgrade -y +RUN apt dist-upgrade -y +RUN apt-get clean autoclean +RUN apt-get autoremove -y +RUN rm -rf /var/lib/apt/lists/* + +#final config +VOLUME ["/var/cache/nginx"] +EXPOSE 80 443 + +CMD ["nginx", "-g", "daemon off;"] diff --git a/linux/discontinued/balancer/legacy/Makefile b/linux/discontinued/balancer/legacy/Makefile new file mode 100644 index 000000000..bd56b1ec0 --- /dev/null +++ b/linux/discontinued/balancer/legacy/Makefile @@ -0,0 +1,4 @@ +all: nginx + +nginx: + docker build --compress -t epicmorg/balancer:legacy . diff --git a/linux/discontinued/balancer/legacy/README.md b/linux/discontinued/balancer/legacy/README.md new file mode 100644 index 000000000..034784bc0 --- /dev/null +++ b/linux/discontinued/balancer/legacy/README.md @@ -0,0 +1,30 @@ +# Compose example + +```yml +version: '3.7' +services: + balancer: + image: epicmorg/balancer + restart: unless-stopped + ports: + - "0.0.0.0:80:80" + - "0.0.0.0:443:443" + volumes: + - /etc/localtime:/etc/localtime + - /etc/timezone:/etc/timezone + - /etc/letsencrypt:/etc/letsencrypt + - nginx:/etc/nginx + - nginx-usr:/usr/share/nginx/html + - /var/lib/nginx +# extra_hosts: +# - "example.com:192.168.0.11" + depends_on: + - websites + tmpfs: + - /tmp +volumes: + nginx: + external: true + nginx-usr: + external: true +``` diff --git a/linux/discontinued/epicmorg/README.md b/linux/discontinued/epicmorg/README.md new file mode 100644 index 000000000..044c898f1 --- /dev/null +++ b/linux/discontinued/epicmorg/README.md @@ -0,0 +1,5 @@ +# Difference between images + +* `base` - main image based from debian `buster-slim` with enhanced `sources.list`. +* `edge` - more recent system image. based on `base` image with switched to `sid` (`sid-slim`) update-channel. +* `devel` - just enhanced `edge` image with preinstalled some pre requirements. diff --git a/linux/discontinued/epicmorg/devel/jdk11/Dockerfile b/linux/discontinued/epicmorg/devel/jdk11/Dockerfile new file mode 100644 index 000000000..3c99bceda --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk11/Dockerfile @@ -0,0 +1,24 @@ +FROM epicmorg/devel +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java11 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-11-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/lib + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/devel/jdk11/Makefile b/linux/discontinued/epicmorg/devel/jdk11/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk11/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/jdk11/docker-compose.yml b/linux/discontinued/epicmorg/devel/jdk11/docker-compose.yml new file mode 100644 index 000000000..c18b88c24 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk11/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:jdk11" + build: + context: . diff --git a/linux/discontinued/epicmorg/devel/jdk16/Dockerfile b/linux/discontinued/epicmorg/devel/jdk16/Dockerfile new file mode 100644 index 000000000..18a382df5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk16/Dockerfile @@ -0,0 +1,24 @@ +FROM epicmorg/devel +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java16 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-16-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/lib + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/devel/jdk16/Makefile b/linux/discontinued/epicmorg/devel/jdk16/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk16/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/jdk16/docker-compose.yml b/linux/discontinued/epicmorg/devel/jdk16/docker-compose.yml new file mode 100644 index 000000000..d72619833 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk16/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:jdk16" + build: + context: . diff --git a/linux/discontinued/epicmorg/devel/jdk6/Dockerfile b/linux/discontinued/epicmorg/devel/jdk6/Dockerfile new file mode 100644 index 000000000..477630f7a --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk6/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/devel +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java6 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-6 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/devel/jdk6/Makefile b/linux/discontinued/epicmorg/devel/jdk6/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk6/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/jdk6/docker-compose.yml b/linux/discontinued/epicmorg/devel/jdk6/docker-compose.yml new file mode 100644 index 000000000..fc8255dba --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk6/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:jdk6" + build: + context: . diff --git a/linux/discontinued/epicmorg/devel/jdk7/Dockerfile b/linux/discontinued/epicmorg/devel/jdk7/Dockerfile new file mode 100644 index 000000000..828853acb --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk7/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/devel +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java7 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-7 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/devel/jdk7/Makefile b/linux/discontinued/epicmorg/devel/jdk7/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk7/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/jdk7/docker-compose.yml b/linux/discontinued/epicmorg/devel/jdk7/docker-compose.yml new file mode 100644 index 000000000..05c7ad05f --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk7/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:jdk7" + build: + context: . diff --git a/linux/discontinued/epicmorg/devel/jdk8/Dockerfile b/linux/discontinued/epicmorg/devel/jdk8/Dockerfile new file mode 100644 index 000000000..c8442c274 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk8/Dockerfile @@ -0,0 +1,21 @@ +FROM epicmorg/devel +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java8 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-8-hotspot + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/devel/jdk8/Makefile b/linux/discontinued/epicmorg/devel/jdk8/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk8/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/jdk8/docker-compose.yml b/linux/discontinued/epicmorg/devel/jdk8/docker-compose.yml new file mode 100644 index 000000000..82658b37b --- /dev/null +++ b/linux/discontinued/epicmorg/devel/jdk8/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:jdk8" + build: + context: . diff --git a/linux/discontinued/epicmorg/devel/main/Dockerfile b/linux/discontinued/epicmorg/devel/main/Dockerfile new file mode 100644 index 000000000..fb32d5a14 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/main/Dockerfile @@ -0,0 +1,116 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ENV BuildDocker true +ARG BUILDS_DIR=/builds +ARG SRC_DIR=${BUILDS_DIR}/src +ARG EXPORT_DIR=${BUILDS_DIR}/export +ARG NINJA_ARCH=linux +ARG NINJA_VERSION=latest +ARG NINJA_RELEASE_URL=https://api.github.com/repos/ninja-build/ninja/releases/${NINJA_VERSION} + +################################################################## +# Files and folders +################################################################## +RUN mkdir -p ${SRC_DIR} ${EXPORT_DIR} ${PRE_DIR} + +################################################################## +# sid sources list +################################################################## +RUN apt update && \ + apt-get autoremove -y && \ + apt dist-upgrade -y + +################################################################## +# deps +################################################################## +RUN apt-get update && \ + apt install -y --allow-unauthenticated --allow-downgrades \ + build-essential \ + autoconf-archive \ + gnu-standards \ + cmake \ + libunwind-dev \ + golang \ + at \ + autopkgtest \ + gcc-multilib \ + g++-multilib \ + libxkbcommon-dev \ + zlib1g-dev \ + libfreetype6-dev \ + libegl1-mesa-dev \ + libgles2-mesa-dev \ + libgbm-dev \ + uuid-dev \ + nvidia-cg-toolkit \ + nvidia-cg-dev \ + libavcodec-dev \ + libsdl2-dev \ + libsdl-image1.2-dev \ + libxml2-dev \ + yasm \ + devscripts \ + automake \ + libtool \ + autotools-dev \ + dpkg-dev \ + fakeroot \ + checkinstall \ + dh-make \ + zlib1g \ + zlib1g-dev \ + libssl-dev \ + libxslt-dev \ + libgd-dev \ + libpcre3-dev \ + libgeoip-dev \ + libkrb5-dev \ + libperl-dev \ + krb5-user \ + luajit \ + liblua5.1-0-dev \ + libmaxminddb-dev \ + libpam0g-dev \ + libldap2-dev \ + libavformat-dev \ + libavfilter-dev \ + libswscale-dev \ + libavcodec-dev \ + libz-dev \ + libhiredis-dev \ + libzip-dev \ + libcrypto++-dev \ + libbz2-dev \ + libvpx-dev \ + libvpx6 \ + tcl + +################################################################## +# Get NINJA binary +################################################################## +RUN curl -s ${NINJA_RELEASE_URL} | jq -r ".assets[] | select(.name | test(\"${NINJA_ARCH}\")) | .browser_download_url" > /tmp/ninja-url.txt && \ + cat /tmp/ninja-url.txt && \ + cd /tmp && \ + wget -q -c --input-file=/tmp/ninja-url.txt && \ + unzip -o /tmp/ninja-linux.zip -d /bin && \ + printf "\n--------------------------------\nninja version: $(ninja --version)\n--------------------------------\n\n" + +################################################################## +# other customisations +################################################################## + + +################################################################## +# cleaninig up +################################################################## +RUN apt purge policykit-1 -y && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* diff --git a/linux/discontinued/epicmorg/devel/main/Makefile b/linux/discontinued/epicmorg/devel/main/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/devel/main/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/devel/main/docker-compose.yml b/linux/discontinued/epicmorg/devel/main/docker-compose.yml new file mode 100644 index 000000000..d580e7a5d --- /dev/null +++ b/linux/discontinued/epicmorg/devel/main/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/devel:latest" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/jdk11/Dockerfile b/linux/discontinued/epicmorg/edge/jdk11/Dockerfile new file mode 100644 index 000000000..af321551d --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk11/Dockerfile @@ -0,0 +1,24 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java11 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-11-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/lib + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/jdk11/Makefile b/linux/discontinued/epicmorg/edge/jdk11/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk11/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/jdk11/docker-compose.yml b/linux/discontinued/epicmorg/edge/jdk11/docker-compose.yml new file mode 100644 index 000000000..8e3c49f5c --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk11/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:jdk11" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/jdk16/Dockerfile b/linux/discontinued/epicmorg/edge/jdk16/Dockerfile new file mode 100644 index 000000000..9b8a6ec8b --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk16/Dockerfile @@ -0,0 +1,24 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java16 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-16-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/lib + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/jdk16/Makefile b/linux/discontinued/epicmorg/edge/jdk16/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk16/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/jdk16/docker-compose.yml b/linux/discontinued/epicmorg/edge/jdk16/docker-compose.yml new file mode 100644 index 000000000..7945ea454 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk16/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:jdk16" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/jdk6/Dockerfile b/linux/discontinued/epicmorg/edge/jdk6/Dockerfile new file mode 100644 index 000000000..189601b1f --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk6/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java6 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-6 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/jdk6/Makefile b/linux/discontinued/epicmorg/edge/jdk6/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk6/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/jdk6/docker-compose.yml b/linux/discontinued/epicmorg/edge/jdk6/docker-compose.yml new file mode 100644 index 000000000..be02b2e6c --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk6/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:jdk6" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/jdk7/Dockerfile b/linux/discontinued/epicmorg/edge/jdk7/Dockerfile new file mode 100644 index 000000000..bf4c2dc83 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk7/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java7 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-7 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/jdk7/Makefile b/linux/discontinued/epicmorg/edge/jdk7/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk7/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/jdk7/docker-compose.yml b/linux/discontinued/epicmorg/edge/jdk7/docker-compose.yml new file mode 100644 index 000000000..f28c0e686 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk7/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:jdk7" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/jdk8/Dockerfile b/linux/discontinued/epicmorg/edge/jdk8/Dockerfile new file mode 100644 index 000000000..fc85fe4e5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk8/Dockerfile @@ -0,0 +1,21 @@ +FROM epicmorg/edge +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java8 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-8-hotspot + + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/jdk8/Makefile b/linux/discontinued/epicmorg/edge/jdk8/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk8/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/jdk8/docker-compose.yml b/linux/discontinued/epicmorg/edge/jdk8/docker-compose.yml new file mode 100644 index 000000000..62509c1d6 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/jdk8/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:jdk8" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/main/Dockerfile b/linux/discontinued/epicmorg/edge/main/Dockerfile new file mode 100644 index 000000000..16b397180 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/main/Dockerfile @@ -0,0 +1,30 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# git-lfs official binary +################################################################## +RUN rm -rfv /etc/apt/sources.list.d/github_git-lfs.list +COPY sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list + +################################################################## +# bullseye sources list +################################################################## +RUN rm -rfv /etc/apt/sources.list +COPY sources.list.d/sources.list /etc/apt/sources.list +RUN apt update && \ + apt autoremove -y && \ + apt-get install -y libc6 libxml2-utils && \ + apt upgrade -y && \ + apt dist-upgrade -y && \ + apt autoremove -y + +################################################################## +# cleaninig up +################################################################## +RUN apt purge policykit-1 -y && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/edge/main/Makefile b/linux/discontinued/epicmorg/edge/main/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/main/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/edge/main/docker-compose.yml b/linux/discontinued/epicmorg/edge/main/docker-compose.yml new file mode 100644 index 000000000..68eb65396 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/main/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/edge:latest" + build: + context: . diff --git a/linux/discontinued/epicmorg/edge/main/sources.list.d/github_git-lfs.list b/linux/discontinued/epicmorg/edge/main/sources.list.d/github_git-lfs.list new file mode 100644 index 000000000..8cf93d426 --- /dev/null +++ b/linux/discontinued/epicmorg/edge/main/sources.list.d/github_git-lfs.list @@ -0,0 +1,2 @@ +deb https://packagecloud.io/github/git-lfs/debian/ bullseye main +deb-src https://packagecloud.io/github/git-lfs/debian/ bullseye main diff --git a/linux/discontinued/epicmorg/edge/main/sources.list.d/sources.list b/linux/discontinued/epicmorg/edge/main/sources.list.d/sources.list new file mode 100644 index 000000000..5a8c0081a --- /dev/null +++ b/linux/discontinued/epicmorg/edge/main/sources.list.d/sources.list @@ -0,0 +1,21 @@ +#main +deb http://httpredir.debian.org/debian/ bullseye main contrib non-free +deb-src http://httpredir.debian.org/debian/ bullseye main contrib non-free +deb http://httpredir.debian.org/debian/ bullseye-updates main contrib non-free +deb-src http://httpredir.debian.org/debian/ bullseye-updates main contrib non-free +deb http://httpredir.debian.org/debian/ bullseye-backports main contrib non-free +deb-src http://httpredir.debian.org/debian/ bullseye-backports main contrib non-free +deb http://httpredir.debian.org/debian/ bullseye-proposed-updates main contrib non-free +deb-src http://httpredir.debian.org/debian/ bullseye-proposed-updates main contrib non-free + +#security +deb http://httpredir.debian.org/debian-security/ bullseye-security main contrib non-free +deb-src http://httpredir.debian.org/debian-security/ bullseye-security main contrib non-free +deb http://httpredir.debian.org/debian-security/ bullseye-security/updates main contrib non-free +deb-src http://httpredir.debian.org/debian-security/ bullseye-security/updates main contrib non-free + +##multimedia +# deb http://httpredir.debian.org/debian-multimedia/ bullseye main non-free +# deb-src http://httpredir.debian.org/debian-multimedia/ bullseye main non-free +# deb http://httpredir.debian.org/debian-multimedia/ bullseye-backports main +# deb-src http://httpredir.debian.org/debian-multimedia/ bullseye-backports main diff --git a/linux/discontinued/epicmorg/prod/jdk11/Dockerfile b/linux/discontinued/epicmorg/prod/jdk11/Dockerfile new file mode 100644 index 000000000..d0f3001aa --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk11/Dockerfile @@ -0,0 +1,23 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java11 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-11-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/jre/lib + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/jdk11/Makefile b/linux/discontinued/epicmorg/prod/jdk11/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk11/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/jdk11/docker-compose.yml b/linux/discontinued/epicmorg/prod/jdk11/docker-compose.yml new file mode 100644 index 000000000..f2f42c39a --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk11/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:jdk11" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/jdk16/Dockerfile b/linux/discontinued/epicmorg/prod/jdk16/Dockerfile new file mode 100644 index 000000000..dbe7f1aaa --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk16/Dockerfile @@ -0,0 +1,23 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java16 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-16-hotspot && \ + mkdir /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/bin/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/bin && \ + ln -s /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/lib/ /usr/lib/jvm/adoptopenjdk-16-hotspot-amd64/jre/lib + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/jdk16/Makefile b/linux/discontinued/epicmorg/prod/jdk16/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk16/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/jdk16/docker-compose.yml b/linux/discontinued/epicmorg/prod/jdk16/docker-compose.yml new file mode 100644 index 000000000..4d284744c --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk16/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:jdk16" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/jdk6/Dockerfile b/linux/discontinued/epicmorg/prod/jdk6/Dockerfile new file mode 100644 index 000000000..b9f68955d --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk6/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java6 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-6 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/jdk6/Makefile b/linux/discontinued/epicmorg/prod/jdk6/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk6/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/jdk6/docker-compose.yml b/linux/discontinued/epicmorg/prod/jdk6/docker-compose.yml new file mode 100644 index 000000000..d3b32eefa --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk6/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:jdk6" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/jdk7/Dockerfile b/linux/discontinued/epicmorg/prod/jdk7/Dockerfile new file mode 100644 index 000000000..a2dfba358 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk7/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java7 +################################################################## +RUN wget -qO - http://repos.azulsystems.com/RPM-GPG-KEY-azulsystems | apt-key add - && \ + echo 'deb http://repos.azulsystems.com/debian stable main' > /etc/apt/sources.list.d/zulu.list && \ + apt-get update -y && \ + apt-get install -y --allow-unauthenticated zulu-7 && \ + java -version + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/jdk7/Makefile b/linux/discontinued/epicmorg/prod/jdk7/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk7/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/jdk7/docker-compose.yml b/linux/discontinued/epicmorg/prod/jdk7/docker-compose.yml new file mode 100644 index 000000000..552f80bde --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk7/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:jdk7" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/jdk8/Dockerfile b/linux/discontinued/epicmorg/prod/jdk8/Dockerfile new file mode 100644 index 000000000..4a9d951fd --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk8/Dockerfile @@ -0,0 +1,20 @@ +FROM epicmorg/prod +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# installing java8 +################################################################## +RUN wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | apt-key add - && \ + echo 'deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main' > /etc/apt/sources.list.d/adoptopenjdk-official.list && \ + apt-get update && \ + apt-get autoremove -y && \ + apt-get install -y --allow-unauthenticated adoptopenjdk-8-hotspot + +################################################################## +# cleaninig up +################################################################## +RUN apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/jdk8/Makefile b/linux/discontinued/epicmorg/prod/jdk8/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk8/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/jdk8/docker-compose.yml b/linux/discontinued/epicmorg/prod/jdk8/docker-compose.yml new file mode 100644 index 000000000..e1a271d98 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/jdk8/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:jdk8" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/main/Dockerfile b/linux/discontinued/epicmorg/prod/main/Dockerfile new file mode 100644 index 000000000..295a14fdd --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/Dockerfile @@ -0,0 +1,191 @@ +FROM debian:buster-slim +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# buster sources list +################################################################## +COPY trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg +COPY trusted.gpg.d/githubcli-archive-keyring.gpg /etc/apt/trusted.gpg.d/githubcli-archive-keyring.gpg + +RUN rm /etc/apt/sources.list +COPY sources.list.d/sources.list /etc/apt/sources.list + +RUN apt update && apt dist-upgrade -y + +COPY etc/locale.gen /etc/locale.gen + +RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done + +################################################################## +# perforce client binary +################################################################## +ENV P4_VERSION=r21.2 +ENV P4_DOWNLOAD_URL=https://www.perforce.com/downloads/perforce/${P4_VERSION}/bin.linux26x86_64/p4 + +################################################################## +# 7z official binary +################################################################## +ENV SZ_VERSION=7z2103 +ENV SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz + +################################################################## +# LazyGit official binary +################################################################## +ENV LZGIT_VERSION=0.31.4 +ENV LZGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LZGIT_VERSION}/lazygit_${LZGIT_VERSION}_Linux_x86_64.tar.gz + +################################################################## +# installing utils +################################################################## +RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ + apt-get update && \ + apt-get install -y --allow-unauthenticated \ + apt-transport-https \ + apt-utils \ + aptitude \ + bash \ + binutils \ + bzip2 \ + ca-certificates \ + cmatrix \ + cmatrix-xfont \ + console-cyrillic \ + cron \ + curl \ + clzip \ + dos2unix \ + ffmpeg \ + fontconfig \ + git \ + git-extras \ + git-flow \ + git-cvs \ + git-doc \ + git-email \ + git-mediawiki \ + git-crypt \ + git-lfs \ + git-ftp \ + gnupg \ + gnupg2 \ + graphicsmagick \ + gzip \ + htop \ + iftop \ + iputils-ping \ + jq \ + kmod \ + libxml2-dev \ + libxml2-utils \ + lbzip2 \ + libsvn-java \ + locales \ + lsb-release \ + lsof \ + lynx \ + lzma \ + libzip4 \ + lzip \ + lzop \ + mc \ + mercurial \ + nano \ + nload \ + nmap \ + openssl \ + perl \ + procps \ + pbzip2 \ + plzip \ + p7zip-full \ + p7zip-rar \ + python2.7 \ + python3 \ + python3-pil \ + python3-numpy \ + python3-pip \ + hugin-tools \ + rsync \ + rar \ + screenfetch \ + smbclient \ + software-properties-common \ + subversion \ + sudo \ + telnet \ + tini \ + tmux \ + tree \ + util-linux \ + uuid-runtime \ + unrar \ + xz-utils \ + wget \ + zip + +################################################################## +# git-lfs official binary +################################################################## +#RUN curl -s https://packagecloud.io/github/git-lfs/gpgkey | sudo gpg --no-default-keyring --keyring gnupg-ring:/etc/apt/trusted.gpg.d/git-lfs.gpg --import && \ +RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157 && \ + rm -rfv /etc/apt/sources.list.d/github_git-lfs.list +COPY sources.list.d/github_git-lfs.list /etc/apt/sources.list.d/github_git-lfs.list +RUN apt-get update && \ + apt-get install -y --allow-unauthenticated \ + git \ + git-lfs && \ + git --version && \ + git-lfs --version + +################################################################## +# gh official binary +################################################################## +COPY sources.list.d/github-cli.list /etc/apt/sources.list.d/github-cli.list +RUN apt-get update && \ + apt-get install -y --allow-unauthenticated \ + gh && \ + gh --version + +################################################################## +# Install p4client +################################################################## +RUN wget -nv --random-wait -c -P /usr/bin ${P4_DOWNLOAD_URL} && \ + chmod +x /usr/bin/p4 + +################################################################## +# Install 7z official binary +################################################################## +RUN wget -nv --random-wait -c -O /tmp/7z.tar.xz ${SZ_DOWNLOAD_URL} && \ + mkdir -p /tmp/7z && \ + tar -xf /tmp/7z.tar.xz -C /tmp/7z && \ + chmod +x /tmp/7z/7zz && \ + mv -fv /tmp/7z/7zz /usr/bin/ && \ + 7zz | head -4 && \ + 7z | head -4 + +################################################################## +# Install LazyGit official binary +################################################################## +RUN wget -nv --random-wait -c -O /tmp/lazygit.tar.xz ${LZGIT_DOWNLOAD_URL} && \ + mkdir -p /tmp/lazygit && \ + tar -zxvf /tmp/lazygit.tar.xz -C /tmp/lazygit && \ + chmod +x /tmp/lazygit/lazygit && \ + mv -fv /tmp/lazygit/lazygit /usr/bin/ && \ + echo "lazygit version:" && \ + lazygit --version + +################################################################## +# Generate ssl key +################################################################## +RUN openssl dhparam -out /etc/ssl/dhparam.pem 4096 + +################################################################## +# cleaninig up +################################################################## +RUN apt purge policykit-1 -y && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /tmp/* && \ + rm -rfv /var/cache/apt/archives/*.deb diff --git a/linux/discontinued/epicmorg/prod/main/Makefile b/linux/discontinued/epicmorg/prod/main/Makefile new file mode 100644 index 000000000..bad6d73b5 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/discontinued/epicmorg/prod/main/docker-compose.yml b/linux/discontinued/epicmorg/prod/main/docker-compose.yml new file mode 100644 index 000000000..0eb49ecd4 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/docker-compose.yml @@ -0,0 +1,6 @@ +version: '3.9' +services: + app: + image: "epicmorg/prod:latest" + build: + context: . diff --git a/linux/discontinued/epicmorg/prod/main/etc/locale.gen b/linux/discontinued/epicmorg/prod/main/etc/locale.gen new file mode 100644 index 000000000..02f100afa --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/etc/locale.gen @@ -0,0 +1,12 @@ +en_GB.UTF-8 UTF-8 +en_GB ISO-8859-1 +en_GB.ISO-8859-15 ISO-8859-15 +en_US.UTF-8 UTF-8 +en_US ISO-8859-1 +en_US.ISO-8859-15 ISO-8859-15 +ru_RU.UTF-8 UTF-8 +ru_RU.KOI8-R KOI8-R +ru_RU ISO-8859-5 +ru_RU.CP1251 CP1251 +ru_UA.UTF-8 UTF-8 +ru_UA KOI8-U diff --git a/linux/discontinued/epicmorg/prod/main/etc/locale.gen.full b/linux/discontinued/epicmorg/prod/main/etc/locale.gen.full new file mode 100644 index 000000000..602141659 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/etc/locale.gen.full @@ -0,0 +1,496 @@ +aa_DJ.UTF-8 UTF-8 +aa_DJ ISO-8859-1 +aa_ER UTF-8 +aa_ER@saaho UTF-8 +aa_ET UTF-8 +af_ZA.UTF-8 UTF-8 +af_ZA ISO-8859-1 +agr_PE UTF-8 +ak_GH UTF-8 +am_ET UTF-8 +an_ES.UTF-8 UTF-8 +an_ES ISO-8859-15 +anp_IN UTF-8 +ar_AE.UTF-8 UTF-8 +ar_AE ISO-8859-6 +ar_BH.UTF-8 UTF-8 +ar_BH ISO-8859-6 +ar_DZ.UTF-8 UTF-8 +ar_DZ ISO-8859-6 +ar_EG.UTF-8 UTF-8 +ar_EG ISO-8859-6 +ar_IN UTF-8 +ar_IQ.UTF-8 UTF-8 +ar_IQ ISO-8859-6 +ar_JO.UTF-8 UTF-8 +ar_JO ISO-8859-6 +ar_KW.UTF-8 UTF-8 +ar_KW ISO-8859-6 +ar_LB.UTF-8 UTF-8 +ar_LB ISO-8859-6 +ar_LY.UTF-8 UTF-8 +ar_LY ISO-8859-6 +ar_MA.UTF-8 UTF-8 +ar_MA ISO-8859-6 +ar_OM.UTF-8 UTF-8 +ar_OM ISO-8859-6 +ar_QA.UTF-8 UTF-8 +ar_QA ISO-8859-6 +ar_SA.UTF-8 UTF-8 +ar_SA ISO-8859-6 +ar_SD.UTF-8 UTF-8 +ar_SD ISO-8859-6 +ar_SS UTF-8 +ar_SY.UTF-8 UTF-8 +ar_SY ISO-8859-6 +ar_TN.UTF-8 UTF-8 +ar_TN ISO-8859-6 +ar_YE.UTF-8 UTF-8 +ar_YE ISO-8859-6 +ayc_PE UTF-8 +az_AZ UTF-8 +az_IR UTF-8 +as_IN UTF-8 +ast_ES.UTF-8 UTF-8 +ast_ES ISO-8859-15 +be_BY.UTF-8 UTF-8 +be_BY CP1251 +be_BY@latin UTF-8 +bem_ZM UTF-8 +ber_DZ UTF-8 +ber_MA UTF-8 +bg_BG.UTF-8 UTF-8 +bg_BG CP1251 +bhb_IN.UTF-8 UTF-8 +bho_IN UTF-8 +bho_NP UTF-8 +bi_VU UTF-8 +bn_BD UTF-8 +bn_IN UTF-8 +bo_CN UTF-8 +bo_IN UTF-8 +br_FR.UTF-8 UTF-8 +br_FR ISO-8859-1 +br_FR@euro ISO-8859-15 +brx_IN UTF-8 +bs_BA.UTF-8 UTF-8 +bs_BA ISO-8859-2 +byn_ER UTF-8 +ca_AD.UTF-8 UTF-8 +ca_AD ISO-8859-15 +ca_ES.UTF-8 UTF-8 +ca_ES ISO-8859-1 +ca_ES@euro ISO-8859-15 +ca_ES@valencia UTF-8 +ca_FR.UTF-8 UTF-8 +ca_FR ISO-8859-15 +ca_IT.UTF-8 UTF-8 +ca_IT ISO-8859-15 +ce_RU UTF-8 +chr_US UTF-8 +cmn_TW UTF-8 +crh_UA UTF-8 +cs_CZ.UTF-8 UTF-8 +cs_CZ ISO-8859-2 +csb_PL UTF-8 +cv_RU UTF-8 +cy_GB.UTF-8 UTF-8 +cy_GB ISO-8859-14 +da_DK.UTF-8 UTF-8 +da_DK ISO-8859-1 +de_AT.UTF-8 UTF-8 +de_AT ISO-8859-1 +de_AT@euro ISO-8859-15 +de_BE.UTF-8 UTF-8 +de_BE ISO-8859-1 +de_BE@euro ISO-8859-15 +de_CH.UTF-8 UTF-8 +de_CH ISO-8859-1 +de_DE.UTF-8 UTF-8 +de_DE ISO-8859-1 +de_DE@euro ISO-8859-15 +de_IT.UTF-8 UTF-8 +de_IT ISO-8859-1 +de_LI.UTF-8 UTF-8 +de_LU.UTF-8 UTF-8 +de_LU ISO-8859-1 +de_LU@euro ISO-8859-15 +doi_IN UTF-8 +dsb_DE UTF-8 +dv_MV UTF-8 +dz_BT UTF-8 +el_GR.UTF-8 UTF-8 +el_GR ISO-8859-7 +el_GR@euro ISO-8859-7 +el_CY.UTF-8 UTF-8 +el_CY ISO-8859-7 +en_AG UTF-8 +en_AU.UTF-8 UTF-8 +en_AU ISO-8859-1 +en_BW.UTF-8 UTF-8 +en_BW ISO-8859-1 +en_CA.UTF-8 UTF-8 +en_CA ISO-8859-1 +en_DK.UTF-8 UTF-8 +en_DK.ISO-8859-15 ISO-8859-15 +en_DK ISO-8859-1 +en_GB.UTF-8 UTF-8 +en_GB ISO-8859-1 +en_GB.ISO-8859-15 ISO-8859-15 +en_HK.UTF-8 UTF-8 +en_HK ISO-8859-1 +en_IE.UTF-8 UTF-8 +en_IE ISO-8859-1 +en_IE@euro ISO-8859-15 +en_IL UTF-8 +en_IN UTF-8 +en_NG UTF-8 +en_NZ.UTF-8 UTF-8 +en_NZ ISO-8859-1 +en_PH.UTF-8 UTF-8 +en_PH ISO-8859-1 +en_SC.UTF-8 UTF-8 +en_SG.UTF-8 UTF-8 +en_SG ISO-8859-1 +en_US.UTF-8 UTF-8 +en_US ISO-8859-1 +en_US.ISO-8859-15 ISO-8859-15 +en_ZA.UTF-8 UTF-8 +en_ZA ISO-8859-1 +en_ZM UTF-8 +en_ZW.UTF-8 UTF-8 +en_ZW ISO-8859-1 +eo UTF-8 +es_AR.UTF-8 UTF-8 +es_AR ISO-8859-1 +es_BO.UTF-8 UTF-8 +es_BO ISO-8859-1 +es_CL.UTF-8 UTF-8 +es_CL ISO-8859-1 +es_CO.UTF-8 UTF-8 +es_CO ISO-8859-1 +es_CR.UTF-8 UTF-8 +es_CR ISO-8859-1 +es_CU UTF-8 +es_DO.UTF-8 UTF-8 +es_DO ISO-8859-1 +es_EC.UTF-8 UTF-8 +es_EC ISO-8859-1 +es_ES.UTF-8 UTF-8 +es_ES ISO-8859-1 +es_ES@euro ISO-8859-15 +es_GT.UTF-8 UTF-8 +es_GT ISO-8859-1 +es_HN.UTF-8 UTF-8 +es_HN ISO-8859-1 +es_MX.UTF-8 UTF-8 +es_MX ISO-8859-1 +es_NI.UTF-8 UTF-8 +es_NI ISO-8859-1 +es_PA.UTF-8 UTF-8 +es_PA ISO-8859-1 +es_PE.UTF-8 UTF-8 +es_PE ISO-8859-1 +es_PR.UTF-8 UTF-8 +es_PR ISO-8859-1 +es_PY.UTF-8 UTF-8 +es_PY ISO-8859-1 +es_SV.UTF-8 UTF-8 +es_SV ISO-8859-1 +es_US.UTF-8 UTF-8 +es_US ISO-8859-1 +es_UY.UTF-8 UTF-8 +es_UY ISO-8859-1 +es_VE.UTF-8 UTF-8 +es_VE ISO-8859-1 +et_EE.UTF-8 UTF-8 +et_EE ISO-8859-1 +et_EE.ISO-8859-15 ISO-8859-15 +eu_ES.UTF-8 UTF-8 +eu_ES ISO-8859-1 +eu_ES@euro ISO-8859-15 +eu_FR.UTF-8 UTF-8 +eu_FR ISO-8859-1 +eu_FR@euro ISO-8859-15 +fa_IR UTF-8 +ff_SN UTF-8 +fi_FI.UTF-8 UTF-8 +fi_FI ISO-8859-1 +fi_FI@euro ISO-8859-15 +fil_PH UTF-8 +fo_FO.UTF-8 UTF-8 +fo_FO ISO-8859-1 +fr_BE.UTF-8 UTF-8 +fr_BE ISO-8859-1 +fr_BE@euro ISO-8859-15 +fr_CA.UTF-8 UTF-8 +fr_CA ISO-8859-1 +fr_CH.UTF-8 UTF-8 +fr_CH ISO-8859-1 +fr_FR.UTF-8 UTF-8 +fr_FR ISO-8859-1 +fr_FR@euro ISO-8859-15 +fr_LU.UTF-8 UTF-8 +fr_LU ISO-8859-1 +fr_LU@euro ISO-8859-15 +fur_IT UTF-8 +fy_NL UTF-8 +fy_DE UTF-8 +ga_IE.UTF-8 UTF-8 +ga_IE ISO-8859-1 +ga_IE@euro ISO-8859-15 +gd_GB.UTF-8 UTF-8 +gd_GB ISO-8859-15 +gez_ER UTF-8 +gez_ER@abegede UTF-8 +gez_ET UTF-8 +gez_ET@abegede UTF-8 +gl_ES.UTF-8 UTF-8 +gl_ES ISO-8859-1 +gl_ES@euro ISO-8859-15 +gu_IN UTF-8 +gv_GB.UTF-8 UTF-8 +gv_GB ISO-8859-1 +ha_NG UTF-8 +hak_TW UTF-8 +he_IL.UTF-8 UTF-8 +he_IL ISO-8859-8 +hi_IN UTF-8 +hif_FJ UTF-8 +hne_IN UTF-8 +hr_HR.UTF-8 UTF-8 +hr_HR ISO-8859-2 +hsb_DE.UTF-8 UTF-8 +hsb_DE ISO-8859-2 +ht_HT UTF-8 +hu_HU.UTF-8 UTF-8 +hu_HU ISO-8859-2 +hy_AM UTF-8 +hy_AM.ARMSCII-8 ARMSCII-8 +ia_FR UTF-8 +id_ID.UTF-8 UTF-8 +id_ID ISO-8859-1 +ig_NG UTF-8 +ik_CA UTF-8 +is_IS.UTF-8 UTF-8 +is_IS ISO-8859-1 +it_CH.UTF-8 UTF-8 +it_CH ISO-8859-1 +it_IT.UTF-8 UTF-8 +it_IT ISO-8859-1 +it_IT@euro ISO-8859-15 +iu_CA UTF-8 +ja_JP.UTF-8 UTF-8 +ja_JP.EUC-JP EUC-JP +ka_GE.UTF-8 UTF-8 +ka_GE GEORGIAN-PS +kab_DZ UTF-8 +kk_KZ.UTF-8 UTF-8 +kk_KZ PT154 +kk_KZ.RK1048 RK1048 +kl_GL.UTF-8 UTF-8 +kl_GL ISO-8859-1 +km_KH UTF-8 +kn_IN UTF-8 +ko_KR.UTF-8 UTF-8 +ko_KR.EUC-KR EUC-KR +kok_IN UTF-8 +ks_IN UTF-8 +ks_IN@devanagari UTF-8 +ku_TR.UTF-8 UTF-8 +ku_TR ISO-8859-9 +kw_GB.UTF-8 UTF-8 +kw_GB ISO-8859-1 +ky_KG UTF-8 +lb_LU UTF-8 +lg_UG.UTF-8 UTF-8 +lg_UG ISO-8859-10 +li_BE UTF-8 +li_NL UTF-8 +lij_IT UTF-8 +ln_CD UTF-8 +lo_LA UTF-8 +lt_LT.UTF-8 UTF-8 +lt_LT ISO-8859-13 +lv_LV.UTF-8 UTF-8 +lv_LV ISO-8859-13 +lzh_TW UTF-8 +mag_IN UTF-8 +mai_IN UTF-8 +mai_NP UTF-8 +mfe_MU UTF-8 +mg_MG.UTF-8 UTF-8 +mg_MG ISO-8859-15 +mhr_RU UTF-8 +mi_NZ.UTF-8 UTF-8 +mi_NZ ISO-8859-13 +miq_NI UTF-8 +mjw_IN UTF-8 +mk_MK.UTF-8 UTF-8 +mk_MK ISO-8859-5 +ml_IN UTF-8 +mn_MN UTF-8 +mni_IN UTF-8 +mr_IN UTF-8 +ms_MY.UTF-8 UTF-8 +ms_MY ISO-8859-1 +mt_MT.UTF-8 UTF-8 +mt_MT ISO-8859-3 +my_MM UTF-8 +nan_TW UTF-8 +nan_TW@latin UTF-8 +nb_NO.UTF-8 UTF-8 +nb_NO ISO-8859-1 +nds_DE UTF-8 +nds_NL UTF-8 +ne_NP UTF-8 +nhn_MX UTF-8 +niu_NU UTF-8 +niu_NZ UTF-8 +nl_AW UTF-8 +nl_BE.UTF-8 UTF-8 +nl_BE ISO-8859-1 +nl_BE@euro ISO-8859-15 +nl_NL.UTF-8 UTF-8 +nl_NL ISO-8859-1 +nl_NL@euro ISO-8859-15 +nn_NO.UTF-8 UTF-8 +nn_NO ISO-8859-1 +nr_ZA UTF-8 +nso_ZA UTF-8 +oc_FR.UTF-8 UTF-8 +oc_FR ISO-8859-1 +om_ET UTF-8 +om_KE.UTF-8 UTF-8 +om_KE ISO-8859-1 +or_IN UTF-8 +os_RU UTF-8 +pa_IN UTF-8 +pa_PK UTF-8 +pap_AW UTF-8 +pap_CW UTF-8 +pl_PL.UTF-8 UTF-8 +pl_PL ISO-8859-2 +ps_AF UTF-8 +pt_BR.UTF-8 UTF-8 +pt_BR ISO-8859-1 +pt_PT.UTF-8 UTF-8 +pt_PT ISO-8859-1 +pt_PT@euro ISO-8859-15 +quz_PE UTF-8 +raj_IN UTF-8 +ro_RO.UTF-8 UTF-8 +ro_RO ISO-8859-2 +ru_RU.UTF-8 UTF-8 +ru_RU.KOI8-R KOI8-R +ru_RU ISO-8859-5 +ru_RU.CP1251 CP1251 +ru_UA.UTF-8 UTF-8 +ru_UA KOI8-U +rw_RW UTF-8 +sa_IN UTF-8 +sah_RU UTF-8 +sat_IN UTF-8 +sc_IT UTF-8 +sd_IN UTF-8 +sd_IN@devanagari UTF-8 +se_NO UTF-8 +sgs_LT UTF-8 +shn_MM UTF-8 +shs_CA UTF-8 +si_LK UTF-8 +sid_ET UTF-8 +sk_SK.UTF-8 UTF-8 +sk_SK ISO-8859-2 +sl_SI.UTF-8 UTF-8 +sl_SI ISO-8859-2 +sm_WS UTF-8 +so_DJ.UTF-8 UTF-8 +so_DJ ISO-8859-1 +so_ET UTF-8 +so_KE.UTF-8 UTF-8 +so_KE ISO-8859-1 +so_SO.UTF-8 UTF-8 +so_SO ISO-8859-1 +sq_AL.UTF-8 UTF-8 +sq_AL ISO-8859-1 +sq_MK UTF-8 +sr_ME UTF-8 +sr_RS UTF-8 +sr_RS@latin UTF-8 +ss_ZA UTF-8 +st_ZA.UTF-8 UTF-8 +st_ZA ISO-8859-1 +sv_FI.UTF-8 UTF-8 +sv_FI ISO-8859-1 +sv_FI@euro ISO-8859-15 +sv_SE.UTF-8 UTF-8 +sv_SE ISO-8859-1 +sv_SE.ISO-8859-15 ISO-8859-15 +sw_KE UTF-8 +sw_TZ UTF-8 +szl_PL UTF-8 +ta_IN UTF-8 +ta_LK UTF-8 +tcy_IN.UTF-8 UTF-8 +te_IN UTF-8 +tg_TJ.UTF-8 UTF-8 +tg_TJ KOI8-T +th_TH.UTF-8 UTF-8 +th_TH TIS-620 +the_NP UTF-8 +ti_ER UTF-8 +ti_ET UTF-8 +tig_ER UTF-8 +tk_TM UTF-8 +tl_PH.UTF-8 UTF-8 +tl_PH ISO-8859-1 +tn_ZA UTF-8 +to_TO UTF-8 +tpi_PG UTF-8 +tr_CY.UTF-8 UTF-8 +tr_CY ISO-8859-9 +tr_TR.UTF-8 UTF-8 +tr_TR ISO-8859-9 +ts_ZA UTF-8 +tt_RU UTF-8 +tt_RU@iqtelif UTF-8 +ug_CN UTF-8 +uk_UA.UTF-8 UTF-8 +uk_UA KOI8-U +unm_US UTF-8 +ur_IN UTF-8 +ur_PK UTF-8 +uz_UZ.UTF-8 UTF-8 +uz_UZ ISO-8859-1 +uz_UZ@cyrillic UTF-8 +ve_ZA UTF-8 +vi_VN UTF-8 +wa_BE.UTF-8 UTF-8 +wa_BE ISO-8859-1 +wa_BE@euro ISO-8859-15 +wae_CH UTF-8 +wal_ET UTF-8 +wo_SN UTF-8 +xh_ZA.UTF-8 UTF-8 +xh_ZA ISO-8859-1 +yi_US.UTF-8 UTF-8 +yi_US CP1255 +yo_NG UTF-8 +yue_HK UTF-8 +yuw_PG UTF-8 +zh_CN.UTF-8 UTF-8 +zh_CN.GB18030 GB18030 +zh_CN.GBK GBK +zh_CN GB2312 +zh_HK.UTF-8 UTF-8 +zh_HK BIG5-HKSCS +zh_SG.UTF-8 UTF-8 +zh_SG.GBK GBK +zh_SG GB2312 +zh_TW.UTF-8 UTF-8 +zh_TW.EUC-TW EUC-TW +zh_TW BIG5 +zu_ZA.UTF-8 UTF-8 +zu_ZA ISO-8859-1 + diff --git a/linux/discontinued/epicmorg/prod/main/sources.list.d/github-cli.list b/linux/discontinued/epicmorg/prod/main/sources.list.d/github-cli.list new file mode 100644 index 000000000..4442663ff --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/sources.list.d/github-cli.list @@ -0,0 +1 @@ +deb https://cli.github.com/packages stable main diff --git a/linux/discontinued/epicmorg/prod/main/sources.list.d/github_git-lfs.list b/linux/discontinued/epicmorg/prod/main/sources.list.d/github_git-lfs.list new file mode 100644 index 000000000..867534422 --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/sources.list.d/github_git-lfs.list @@ -0,0 +1,2 @@ +deb https://packagecloud.io/github/git-lfs/debian/ buster main +deb-src https://packagecloud.io/github/git-lfs/debian/ buster main diff --git a/linux/discontinued/epicmorg/prod/main/sources.list.d/sources.list b/linux/discontinued/epicmorg/prod/main/sources.list.d/sources.list new file mode 100644 index 000000000..412c35d1a --- /dev/null +++ b/linux/discontinued/epicmorg/prod/main/sources.list.d/sources.list @@ -0,0 +1,19 @@ +#main +deb http://httpredir.debian.org/debian/ buster main contrib non-free +deb-src http://httpredir.debian.org/debian/ buster main contrib non-free +deb http://httpredir.debian.org/debian/ buster-updates main contrib non-free +deb-src http://httpredir.debian.org/debian/ buster-updates main contrib non-free +deb http://httpredir.debian.org/debian/ buster-backports main contrib non-free +deb-src http://httpredir.debian.org/debian/ buster-backports main contrib non-free +deb http://httpredir.debian.org/debian/ buster-proposed-updates main contrib non-free +deb-src http://httpredir.debian.org/debian/ buster-proposed-updates main contrib non-free + +#security +deb http://httpredir.debian.org/debian-security/ buster/updates main contrib non-free +deb-src http://httpredir.debian.org/debian-security/ buster/updates main contrib non-free + +##multimedia +#deb http://httpredir.debian.org/debian-multimedia/ buster main non-free +#deb-src http://httpredir.debian.org/debian-multimedia/ buster main non-free +#deb http://httpredir.debian.org/debian-multimedia/ buster-backports main +#deb-src http://httpredir.debian.org/debian-multimedia/ buster-backports main diff --git a/linux/discontinued/epicmorg/prod/main/trusted.gpg.d/deb-multimedia-keyring.gpg b/linux/discontinued/epicmorg/prod/main/trusted.gpg.d/deb-multimedia-keyring.gpg new file mode 100644 index 0000000000000000000000000000000000000000..a4f2b1006e8a1c556adb8801ed5ac01fc4124d96 GIT binary patch literal 7607 zcma)>RZtz;wrv*+cM0z9Zh_$L?gR<$?(PJK;I6?I?(PuW-Q6WXa9O;)&$+kWe&^%V z`YJ9cov(3>nfXGm4*fX^dXn=bkQsMB{lDKAigCaascMFgYGc@7j z#e#?THo2dU=HOE@uw&T3m9mq$bGOLT-Wd3GR!1cGb`pT#Y8<+zOnzL5!ga@4(m(h) zJjLz}o%r+uw<V;bV&7%M)n5%-)uO#14}KKSH_^owTvFQ~%l<#E0Qr znWHWqot*l;w&XMs8*u}>OE+%`^4@vHq~(#2D*h02jx$eq(eHOBwFG9gxyaxSi|>lB z#jCTmF<)m*$?socm%1Y~;rnXwK{zwhY3@7dGf#FC-IXn8!5e1GMGehRDx^n^=Vi`B zStg0?L|vKIU5~)fiVP9}Is^cskygyo*~-P$%E+En!N}Rl*4D_Cl;7@uPQs>U#(&)~ zJ2+biMgqS;eS&}kPyz`cp%LNXU?HKg5a8hup|OFG5C9-C1P~_>8mNXnR}aL403g7l z=>^6xm}vyzcs8Sc*y>aCb&HqCtBV{bL%ux5aIUR}QH;Ew@a>49@QSIFq!yGWUjK@z zv%kT|%4w00p!5qs(;(ydIH#Z2D=`T9x^MlIo*@@|(O_J4d&i@L1w{0p+BbL>Bj@^(qGl;iPmtm4!X3 zU2L0fCxqyp16j{Vg-YICOIrA;z`fxjs==|CCdWB4rk)(d<%9_4`fUZt$3&~W^X{po z#iBlX+H34lXv2*13I8iBAf=OWx=C(y(@(&|b|jT=H5|~t<7kXpu}xCcLC}0K zex3I*BO|S_;3XZ1G;=Glz!fkBVc6sL;J+;-;F68SMg_}NKQlATxf$2akL*o#A+X9L zRWi6qg?zO>t|}C>q=i0@hX3o#D4%pn!{OCwtjyud!t$_N-qfb`3&Tg*sAIqMWGU5t z8~zefXoMsb8af;R<}W~e#OD8|19n4GfJCGXmh2pmC)0dnvYf|_Us>@hl$VrH0M#h# z9*`#~Ln3k%T=M*^`;IM;O-21Z%dj;PNC<@n0sQx%?3}*`RrVgBX^iQ(dm^I&f?5LB zvQz~{8dM+5bJ~mMP$O*ul-~OM^orhz#1FJ_MCaeoZO-Sr8JY6{oVbFrM-2DNFkS?Kn@+X}&pH;~Cv_erev z-emrxpIH+(#WejcL=?w44ZBkH-Z{i4L5)3;=0MRU#6o!!;GT7A-6f?Rr05e$4NGrD zz!z@jd6nk(GLeA9Ad?E+pr@}?<7Hs5nfap+j;Da0oYe0=Xdw_HU)9| z;V52oUgM%MSoa&yjnuxC-9;rtHqi*Z+qIg0>NQ;q7j!LwxLL3BKk@KK_52%;0@3qI z9+qPgH+$3%v(AA(9Z!}6L4}n@5~=HJyhP}l!XKl1?(wG*IqT|h3Q0<0gg+>XLe??Q zb3H;gFGkfgZ2MDHN$~=ITy4>gmlK&Sl#RG1%A5J0mTc)d+^xQY4uWapefT13ompkm28gFO%sLm)^${MkdhPT7V38Pn~2C6VlsmCK^W@P!C zdz%;k`lM{Nnz@aC9OM`sF*+(|Vglk84}c3QyL(BVG=bT<8-~bljjS1xo)aPHdV(S+ z{b~|_>{fzaI`=loJRMGhl?9_Or-=HPw*+?!3laS}#Gfr<;wTQ&MOu{mnfN#ctWf~Y z9X!zOVYxa$9Z}5J&MAxtiVr3{D#tjn~Wdk}0j%|Jig@7J^>ir_C@ z>Z4Wbj(v!ShKD^#*}LTeW{LFtrrq%Cft4tR!&f})!l%M7INXbc*n^l^Rx>$X1b+fo zUL2K7x`HUyj=XVSA{k~889Z=C!KQ{{GeI@C#F%kaO1M#Uy*3ET&=YM0qJ<8oo_L;H zT^zIh9+dc-jSFvoyn$=g2-LUAh2Uji`z&hn*{<}=<@6FTmPhXd_L_~^Mtc#jd{~m@ z!_I>bq2*vHj-A4HoU}t?4|7qf8hWKnCHr!+9pFVS)?(@T&3*5sOy^w>Y)~WRgQT?k z^p6w@sqp%n4kcoE*y_$>60ZnAo{z?(_lNj1?}}J?e<0>t02!PIF(8+cmw7K_q0}eP zA%W)Er`A(fMV53)&TI`26pq$^}Z1Awro7I+92Z846%=U_{}!(;+SA2wn>+Wnkd3r~8FBs2!v#%o-PYuKr`IsdnzM5+!1+x3*}a3? zv_e$=+kA#e;F;!m&SHQdi{PEgtGFFf#In;PGh4ckk`oLE)OAkF#@hB&j_!#hX{KZ! zzomLz9o(Ftgj=ZDET(;bF*cr7=CIgx%Bm>gTw55z*c_jhIDjYV1ik)MPVXc z!@ABxh;yxrT#Jioha0^mEc%d13i>%bpsj!mK3NpZIWNlzbXRec%z^}!_Fdl*gxvYw z9=%Go5U#w2P5gp|UU<&^W*P-g31tx$(x2Qo%b?eLBIHEz=WP)2Wr)jZE7L#AC+{k0 zkBgl83HAvU5)>OSA1ev{l3V;JeAP=*TdbTxd>>Y-@1vObiYu3G8nVfW>J)1laKOh7 z*Wa|Z-3j_3XtXZPCIb&As$5f$n8*&1GG`OQ?%3Ri)b~>HEzjz<1NrnONMSs9DpcGK zpkF{x_D9`Or;#E!ShW2&y{!zg1(QP{^LA}$EdzUD!r{7n04?VUF%35q5;LhHz zQ94Qtljt;R_R9|~hw`S zkf+?tx96Ml{bTZn&+{8VvNks=518g%Fk3nH!CUH^j)iTA^*fvX8SL)w9a zHqOj~_(<*oBEkA*8BRAB!r=8;i+&f3FCNHooT(zjo0)shoaQsb1!pomvg7VT>?08p z4d~?UX0glVOO8b<+}3X32+Y6=`KQ>5*6M3w<2O%J3dkNjw_8%;W48jxbH#AX3#g0) z`T0d}v?7)~BnH>-7U?Q5ZFHPBRVB|>9oE| zv)$7P4eIl`zM!h?bSTjM!0@a?NmcgHm|N~yRMv*~xqDNc2aY5PUP~#f?V||#V7I^z zctDCnmbSRBjgB|k6%`UYwRK78X+^ibA(@aVXMqJq`!cYnL|4pL()H>IW_%0x?mRI_ zw8n_aY{lfB>90)Tr@lVHeJm&&^SXtolzI>Q z%ZPQO|HR`zY>JQ`70gi-{a8BX)mA}X@uE%%HNwmz(@m>apznf~z3qt{BbaNm>Bn%Z z&KuL-kG?uTVoUaf+HCEf$TwW$sQ2aJf!z0n=Ez=xwi{+z;Lx&WGg?k35Uk>CDEf(;E}SnivdGIQ{KUkpuHQf3#jq0~b)Y)z8G>5nd}LNk@3 z6ize+#y9!kVPJeNYA8t>M&1immIMU+%TreC)4XuLX$Aomm6)EARb0_dpeRMBTduIT zM+;NbT~ry0*ro{6NS_*eZN3RrRcP97OVQE{9k1`@P6ntHHuVeXoOB?2z=>P#s>^qF zna4AO8xy~|;Um9LC}bA^{Zj$|pUq!s_LT#(#uuku*E>E4c;_94=vB3dypoz*t7@;d z4e5nbg4z;!j)&xGoB`gZ(T*{;gkiS_cd#9_bXt%bge|zXtbZiq(#t!?3&z@{H`QX_ zaF~wRk=M^>KfNppFV$I2G=b-`Gq3nMj@HVwGpdeJVs^RmL+Y zEY^?6jv1UL$6Zz0x`EoPLXyx+z^cpz=VG5iJh`&q^ZdabmLGc+r973UI9=|Xyxnzn z*Y7Z79A(5n!*D*O(AG0M$j7IHo4EhGpE>qe>5~4yN4to2BYScTq809oA&IKx%FV-+ zsYSd{seW|TM*((aaAVEhZW z%$mx1lhzlKhNBE-Xd?3|m95((C(|zIyK98O&i*e%)U{~y{L2x}C&x4lO%x7BwR+Ne z4lT)S`~;8WW!u-d)e6NuQzNC7A+*yYOj3RLJhMQG5RiIxjrKRGWRaQ%%HAHY7ya)d z^#^U5yK2es6EzM*yeT^w^_RFDXI=UBUvS)mrFK9T#k+LWtdl!S|dbSEeH_N*3mx>sz@3l>En%9=7 zv4L5acCh>>B(dW}t8 zPPyyT1)Y{lE2&*kQ-YH$Ui)9Ncf+%hi|Lllu5wj8L;abrg6Bdf0~)zbVA&0;t>QcL zyMCKAIpsiR>{9Xgm7X<1*@KjZyi^2cI$Ha+3f5`&^i= zjb>|2$c=V^W_C8X+=WCs7oP&o0>7twZ*N_NpPKWDW(_$k zyV!*2jN6k$XRCMOmz>Avg<)TKT*{*8d4}cw>8DW#Rb9H9_>m6`g-{|7)%6Tnmi3oh z3DQKiKI{|>)NKIsRv>?FzG=FfJWO096Glr+d}NY%N4 z8Iv&+@F*58?aoSxJf-xH6pF)${+o_8bgXFx973N{;YdWLHDXJ4&i_;ate zF#a<@E@SzlCBu1Yxn`z%yn0U_O(QF8NF(cimG-|Dp-gsewysuoW~Np~|FaPNzy996 zi1q*J@9w2&fClMl0okVUv*#PT)YSJ`MQYJ7_eG5WzL|g#p#I>mks)KzI(_TT zsv_;HEnZ>zm?Jiuutgo!?>#}04BGgsGO_DQ*6AcUs>H}OiBjgxFA2x;T$cq+cs2fp zIO_BWFibnmQ0NrDr9kZrSX84q(MPiqo-<$jvMGz|h#bmd6ZVIBS}?arSD@OKwV)z+ zM*<&NVyFD7qBj>lb<7Y*$8e%wXoCpOq?ePBzSEPs6$+T#-c{u7a{dy5rqrE;ABRNg zF%PEI^qa}HC^cSgvM&Nf3~9^yVbp=-d5Va*`L)hJqxiel#>SW4J~%6Su=g1wI;42G zyua);(T?NnXj>YYYu(7?CiqRVu=?yNVXnv6+n%OhxH*W7`@VW_H&h!xc4uaz1vt3P#w!$>$c-}=8L764p?`)%z_hkA?2;F+1@woX_!|l4FMGxAt zFG0-*wVkhFs55_&k{T@OmBk>%e+A)bqNBaW@xCix3pp|y%BK@nII-UYiAx15$52fb zq7+i+C~3P%bGYCuHYA)Bzd@PDW1`X*9;h>UL-_#JxeR690Lm~Dklmq%44uc5!5?9Q z_y`YdP~Am=WMCR|AQQ8xu@l%k9~}NHfE!ClOs{{y7L&)^@&|ptPwNa%vADJ-J0=rp z=iU~R`(so#Z#UsI?24FOW(e7*vAr%gn*E20FH9bWM7{ zItk6WHs<;38my@cX5!!lUfD37Y%i-lumoMBpnZ)3Ebmu%i;l2+&*$luB>*Peh-q64D;1K&?ok>kj3R=Bf^i-UCI;Lu7G%45-NCr=^FW`$Hj_IZ@*ENgbz8Fri*e*%sB$?Dt6PE;fjH=M&)Ze#C9 zF01qt8}?8li%>#Rf3|9I_7bWsH3z7 zqlOZ7rOv9fvQ?$D>Pk_=#936awmY-)?0(z#+xtBK|EKr;6$7(`Juma3fiS>F=0B+g z#hV3_n(<*^16_mv)cl#~TF&L2+JQsNKXAkjoTqbl8Ep_>IM|UGh6$dOe zs8X8C6f>(B@joB@wYMxp&%nB$+UVc9-+d12e`#Qrg#R={cq!Xe5Py+bCM8KsjQ;Od*#=@cD%yz zy<3A&?X$TH)|2DKKmQ0EoPHs@i}cw#_2t=xm}rT;qP=+D$k52)Na}65OQ9~72f1V$ zQ~kiwEzXC&)vFR)-9~;EiW%8p|)+T3D+3t?*?6?Y( z&9SZFA6|Vd@_UJny3D67i|Ul$lp&Fz@>TZ2lvo&SOv_vYur2Wp@N3bNGtqiX&jj3S ztb2#XqlDG8{ zMf+&_hKCaV69@enPX~?(O9P<*0#Zp>qe{_Lph#;&o7cSHmLO)@qlp_}(7#U&LJ5H( zLVbY%usB3a6eRLDC`3#gB#ZQMe)M%*xMEnYu`DEYU zIJrHenavHkE>k^#%p&YKUhH%5Xhb?1aiyD?DOt(uS)e^29K;MIG>)6?9!rDB z0k_L(gS* z1$(RxJN-opM5h60BRF9rIgjNUjEjgX8+ z5rELQp8&M~*D5ZxC?`CZ=3l50kPQ3JRQbY_-TDEuJFn2dVN!*X}u!d-+kx&{<4 zRu?l=KO1Lj3=+zx1DuM??nilqU&7zbs{X-;tQR@Ggu3DgtsN;g$Ur*uC8XL@ID+}( zv*$P+^8IL(%^4Tgq+Uf6tRd+U!*Gb-X#|lnLJOD_$e$p#c^=!bm=wYllqT5zPNSormx@KK=EZ_^gZ2CoQ{Vd&sPMz zs%66l-1>wLd4Z!Jx#p$lwe#t)iOA%0E9^Q$;a;f;7*c9>U=;rh7d0fc|F*9o1sz79 z%*GcmPF7|e|D6z|cK;@)13}}@IhbymVUXfUh`vMHNQp_ciw6XI$KVgV<8*gs%W_b2g3a*&HD4 z#OI@bl%D44^0b1Ci%H{^d6CkEz-atgoo9J}SWO3Z3Cn!rhWS6-V1IJ^Usjig#g84X z>O>@oZW|b_f(Z(iX@1ZX8}io=+;wE1#%31%)O1+9O{}$W8%8kaB_7O z43n{Et;=6`eI??HLleB7R7ZYRyZ|xd?f|V$ciFXnaXlt_q)Nym)$s{h6!o6RS@QYj z;6Z=|av(rJ_SoKXV7RU|A4yw*^fkqeFk^0~mMs%V(>IcH%xal3#$-ZN-Mr0(Fd}!o z>o$T#^r3|GrG4;LNme3#!vjU zzhngXYGSS*jo0MWduji!Eh0B*!U;Bz2c;}6-*@?HtLmp4`({dxS#u{L{f$#bD(Kyo zYP*0sH_Di|%+$P*3v#+;_g?0HdA^@6nvDd-d*+XO2Go|g297Co9ILKimLaYcr1Tu) zqap~epiuf3s&}e*Yq?vBinIx>K~lnMRIfgHkgXJF-P?OK5|i95IHg2uJ*n%+&O1x@ Vq3;xM{p)VR8fciw*Mont`WIgEFnRz0 literal 0 HcmV?d00001 diff --git a/linux/discontinued/staytus/Dockerfile b/linux/discontinued/staytus/Dockerfile new file mode 100644 index 000000000..6cfdc523c --- /dev/null +++ b/linux/discontinued/staytus/Dockerfile @@ -0,0 +1,30 @@ +FROM ruby:buster +LABEL maintainer="Tim Perry ; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +USER root + +COPY --from=epicmorg/prod /etc/locale.gen /etc/locale.gen +COPY --from=epicmorg/prod /etc/apt/sources.list /etc/apt/sources.list +COPY --from=epicmorg/prod /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg /etc/apt/trusted.gpg.d/deb-multimedia-keyring.gpg +COPY entrypoint.sh /entrypoint.sh + +RUN apt update && \ + apt dist-upgrade -y && \ + # node as the JS engine for uglifier + apt-get install -y nodejs git && \ + gem install bundler && \ + rm -rfv /var/lib/apt/lists/* /tmp/* /var/tmp/* + +RUN cd /opt && \ + git clone https://github.com/adamcooke/staytus.git staytus && \ + cd /opt/staytus && \ + bundle install --deployment --without development:test + +# Persists copies of other relevant files (DB config, custom themes). Contents of this are copied +# to the relevant places each time the container is started +VOLUME /opt/staytus/persisted + +EXPOSE 5000 + +ENTRYPOINT /entrypoint.sh \ No newline at end of file diff --git a/linux/discontinued/staytus/Makefile b/linux/discontinued/staytus/Makefile new file mode 100644 index 000000000..cb4650ff7 --- /dev/null +++ b/linux/discontinued/staytus/Makefile @@ -0,0 +1,4 @@ +all: st + +st: + docker build --compress -t epicmorg/staytus:latest . diff --git a/linux/discontinued/staytus/README.md b/linux/discontinued/staytus/README.md new file mode 100644 index 000000000..4f64ed297 --- /dev/null +++ b/linux/discontinued/staytus/README.md @@ -0,0 +1,37 @@ +## Info +This is a custom improved image from this [original repository](https://github.com/adamcooke/staytus). + +## How to +* Install databese and setup user +* Install container and connect to database +* dont forget about static files! `/opt/staytus/public/assets` + +## Compose example + +```yml +version: '3.7' +services: + mysql: + container_name: mysql + image: mysql:5.7 + restart: always + staytus: + container_name: staytus + image: epicmorg/staytus + restart: always + ports: + - "5000:5000" + volumes: + - staytus-persisted:/opt/staytus/persisted + environment: + - DB_USER=root + - DB_PASSWORD=password + - DB_HOST=mysql #(dns or ip) + depends_on: + - mysql + tmpfs: + - /tmp +volumes: + staytus-persisted: + external: true +``` diff --git a/linux/discontinued/staytus/entrypoint.sh b/linux/discontinued/staytus/entrypoint.sh new file mode 100755 index 000000000..9325bdbdb --- /dev/null +++ b/linux/discontinued/staytus/entrypoint.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +: ${DB_USER:=root} +: ${DB_PASSWORD:=root} +: ${DB_DATABSE:=staytus} +: ${DB_HOST:=127.0.0.1} +#: ${DB_PORT:=3306} + +cd /opt/staytus + +# Configure DB with random password, if not already configured +if [ ! -f /opt/staytus/persisted/config/database.yml ]; then + export DB_PASSWORD=${DB_PASSWORD} + + mysqladmin -u root -ptemp-password password ${DB_PASSWORD} + echo "CREATE DATABASE staytus CHARSET utf8 COLLATE utf8_unicode_ci" | mysql -u root -p${DB_PASSWORD} + + cp config/database.example.yml config/database.yml + sed -i "s/username:.*/username: ${DB_USER}/" config/database.yml + sed -i "s|password:.*|password: ${DB_PASSWORD}|" config/database.yml + sed -i "s|host:.*|host: ${DB_HOST}|" config/database.yml + sed -i "s|database:.*|database: ${DB_DATABSE}|" config/database.yml + + # Copy the config to persist it, and later copy back on each start, to persist this config file + # without persisting all of /config (which is mostly app code) + mkdir /opt/staytus/persisted/config + cp config/database.yml /opt/staytus/persisted/config/database.yml + + bundle exec rake staytus:build staytus:install +else + # Use the previously saved config from the persisted volume + cp /opt/staytus/persisted/config/database.yml config/database.yml + # TODO also copy themes back and forth too + + # If already configured, check if there are any migrations to run + bundle exec rake staytus:build staytus:upgrade +fi + +bundle exec foreman start \ No newline at end of file diff --git a/linux/discontinued/syspass/LICENSE b/linux/discontinued/syspass/LICENSE new file mode 100644 index 000000000..9cecc1d46 --- /dev/null +++ b/linux/discontinued/syspass/LICENSE @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + {one line to give the program's name and a brief idea of what it does.} + Copyright (C) {year} {name of author} + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + {project} Copyright (C) {year} {fullname} + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/linux/discontinued/syspass/README.md b/linux/discontinued/syspass/README.md new file mode 100644 index 000000000..7cbc703f3 --- /dev/null +++ b/linux/discontinued/syspass/README.md @@ -0,0 +1,41 @@ +# About + +**sysPass** is a powerful GPLv3 web password manager for business and personal use. + +See more at https://syspass.org + +**No compilation stuff done** + +## 3.1 release + +These images are based on Debian 9 (Stretch), Apache 2.4 webserver with PHP 7.[1-3] module and MariaDB 10.2 + +--- + +### Production + +The best way to get it running is by installing through docker-compose. You will get a fully working sysPass environment with its database. + +``` +$ wget https://raw.githubusercontent.com/nuxsmin/docker-syspass/master/docker-compose.yml +$ docker-compose -p syspass up -d +``` + +Please be aware that you will need to setup a database if you choose to build the sysPass-only container. + +### Development + +If you want to test/develop the current release, please deploy it from https://github.com/nuxsmin/docker-syspass/tree/master/sysPass-dev through docker-compose: + +``` +$ wget https://raw.githubusercontent.com/nuxsmin/docker-syspass/master/sysPass-dev/docker-compose.yml +$ docker-compose -p syspassdev up -d +``` + +or pull it: + +``` +$ docker run --name sysPass-app-devel syspass/syspass:3.1.x-dev +``` + +Please be aware that you will need to setup a database if you choose to build the sysPass-only container. diff --git a/linux/discontinued/syspass/sysPass/Dockerfile b/linux/discontinued/syspass/sysPass/Dockerfile new file mode 100644 index 000000000..53d8166a5 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/Dockerfile @@ -0,0 +1,169 @@ +# +# https://syspass.org +# https://doc.syspass.org +# + +FROM composer:2.0 as bootstrap + +ENV SYSPASS_BRANCH="3.2.0" + +RUN git clone --depth 1 --branch ${SYSPASS_BRANCH} https://github.com/nuxsmin/sysPass.git \ + && composer install \ + --ignore-platform-reqs \ + --no-interaction \ + --no-plugins \ + --no-scripts \ + --prefer-dist \ + --optimize-autoloader \ + --working-dir /app/sysPass + +FROM php:7.4-apache-buster as app + +LABEL maintainer=nuxsmin@syspass.org version=3.2.0 php=7.4 + + +RUN rm -rfv /etc/locale.gen +COPY locale.gen /etc/locale.gen +RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done + + +################################################################## +# adding normal sources list +################################################################## +RUN rm /etc/apt/sources.list +COPY sources.list /etc/apt/sources.list + +################################################################## +# installing utils +################################################################## +RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \ + apt-get update && \ + apt-get install -y --allow-unauthenticated \ + apt-transport-https \ + apt-utils \ + bash \ + binutils \ + ca-certificates \ + cmatrix \ + cmatrix-xfont \ + console-cyrillic \ + cron \ + curl \ + fontconfig \ + git \ + gnupg \ + gnupg2 \ + graphicsmagick \ + htop \ + iftop \ + iputils-ping \ + jq \ + kmod \ + libsvn-java \ + libzip4 \ + locales \ + lsb-release \ + lsof \ + lynx \ + mc \ + mercurial \ + nano \ + nload \ + nmap \ + openssl \ + perl \ + procps \ + rsync \ + screenfetch \ + smbclient \ + software-properties-common \ + subversion \ + sudo \ + telnet \ + tini \ + tmux \ + tree \ + ttf-dejavu \ + util-linux \ + uuid-runtime \ + wget \ + zip + +################################################################## +# installing php repo + smbclient +################################################################## +RUN wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg +RUN sh -c 'echo "deb https://packages.sury.org/php/ buster main" > /etc/apt/sources.list.d/php.list' +RUN apt update -y && apt install -y --allow-unauthenticated smbclient libsmbclient libsmbclient-dev +RUN pecl install smbclient +RUN docker-php-ext-enable smbclient + +################################################################## +# smb fix +################################################################## +RUN rm -frv /etc/samba/smb.conf /usr/share/samba/smb.conf +ADD smb.conf /etc/samba/ +ADD smb.conf /usr/share/samba/ + +RUN apt-get update \ + && apt-get install -y \ + locales \ + locales-all \ + git \ + gosu \ + libicu-dev \ + libldb-dev \ + libldap2-dev \ + libfreetype6-dev \ + libjpeg62-turbo-dev \ + libpng-dev \ + unzip \ + ssl-cert \ + && apt-get clean \ + && rm -r /var/lib/apt/lists/* + +RUN pecl install xdebug-2.9.8 \ + && docker-php-ext-configure gd --with-freetype --with-jpeg \ + && docker-php-ext-install -j$(nproc) ldap intl gettext pdo_mysql opcache gd \ + && docker-php-ext-enable ldap xdebug intl pdo_mysql + +ENV APACHE_RUN_USER="www-data" \ + SYSPASS_DIR="/var/www/html/sysPass" \ + SYSPASS_UID=9001 \ + SYSPASS_DEV=0 + +WORKDIR /var/www/html + +LABEL build=20122001 + +# Custom sysPass Apache config with SSL by default +COPY ["syspass.conf", "/etc/apache2/sites-available/"] + +# Xdebug module config +COPY xdebug.ini /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini + +# Custom entrypoint +COPY entrypoint.sh common_fn.sh /usr/local/sbin/ + +RUN chmod 755 /usr/local/sbin/entrypoint.sh \ + && a2dissite 000-default default-ssl \ + && a2ensite syspass \ + && a2enmod proxy_fcgi setenvif ssl rewrite \ + && ln -sf /dev/stdout ${APACHE_LOG_DIR}/access.log \ + && ln -sf /dev/stderr ${APACHE_LOG_DIR}/error.log + +# sysPass dependencies +COPY --from=bootstrap /app/sysPass/ ${SYSPASS_DIR}/ + +# Composer binary +COPY --from=bootstrap /usr/bin/composer /usr/bin/ + +RUN cd ${SYSPASS_DIR} && \ + composer u && \ + composer require syspass/plugin-authenticator + +EXPOSE 80 443 + +ENTRYPOINT ["/usr/local/sbin/entrypoint.sh"] + +CMD ["apache"] diff --git a/linux/discontinued/syspass/sysPass/Makefile b/linux/discontinued/syspass/sysPass/Makefile new file mode 100644 index 000000000..62f03b179 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/Makefile @@ -0,0 +1,5 @@ +all: spphp +spphp: + + docker build --compress -t epicmorg/syspass:latest . + docker push epicmorg/syspass:latest diff --git a/linux/discontinued/syspass/sysPass/common_fn.sh b/linux/discontinued/syspass/sysPass/common_fn.sh new file mode 100644 index 000000000..ab6e7287f --- /dev/null +++ b/linux/discontinued/syspass/sysPass/common_fn.sh @@ -0,0 +1,122 @@ +: ${XDEBUG_REMOTE_HOST:="172.17.0.1"} +: ${XDEBUG_IDE_KEY:="ide"} +: ${SYSPASS_DEV:=0} +: ${PHP_XDEBUG_FILE:="/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini"} +: ${SYSPASS_LOCALES:="es_ES en_US en_GB de_DE ca_ES fr_FR ru_RU pl_PL nl_NL pt_BR da_DK it_IT fo_FO ja_JP"} +: ${COMPOSER_EXTENSIONS:=} +: ${DEBUG:=0} + +if [ ${DEBUG} -eq 1 ]; then + set -x +fi + +COMPOSER_OPTIONS="--working-dir ${SYSPASS_DIR} --classmap-authoritative" +GOSU="gosu ${SYSPASS_UID}" + +COLOR_NC='\033[0m' +COLOR_YELLOW='\033[0;33m' +COLOR_RED='\033[0;31m' +COLOR_GREEN='\033[0;32m' + +if [ ${SYSPASS_DEV} -eq 1 ]; then + COMPOSER_OPTIONS="--working-dir ${SYSPASS_DIR} --optimize-autoloader --dev" +fi + +setup_apache () { + if [ ${SYSPASS_DEV} -eq 0 ]; then + return 0 + fi + + echo -e "${COLOR_YELLOW}setup_apache: Setting up xdebug variables${COLOR_NC}" + + sed -i 's/__XDEBUG_REMOTE_HOST__/'"$XDEBUG_REMOTE_HOST"'/; + s/__XDEBUG_IDE_KEY__/'"$XDEBUG_IDE_KEY"'/' \ + ${PHP_XDEBUG_FILE} +} + +run_apache () { + : ${PHP_INI_DIR:=} + + if [ -z "${PHP_INI_DIR}" ]; then + echo -e "${COLOR_YELLOW}run_apache: Starting Apache${COLOR_NC}" + + # Apache gets grumpy about PID files pre-existing + rm -f ${APACHE_PID_FILE} + + exec /usr/sbin/apache2ctl -DFOREGROUND + else + echo -e "${COLOR_YELLOW}run_apache: Starting Apache (PHP)${COLOR_NC}" + + apache2-foreground + fi +} + +setup_app () { + if [ -e "${SYSPASS_DIR}/index.php" ]; then + echo -e "${COLOR_YELLOW}setup_app: Setting up permissions${COLOR_NC}" + + RW_DIRS="${SYSPASS_DIR}/app/config \ + ${SYSPASS_DIR}/app/backup \ + ${SYSPASS_DIR}/app/cache \ + ${SYSPASS_DIR}/app/resources \ + ${SYSPASS_DIR}/app/temp" + + chown ${APACHE_RUN_USER}:${SYSPASS_UID} -R ${RW_DIRS} + + chmod 750 ${RW_DIRS} + + chown ${SYSPASS_UID}:${SYSPASS_UID} -R \ + ${SYSPASS_DIR}/app/modules/*/plugins \ + ${SYSPASS_DIR}/composer.json \ + ${SYSPASS_DIR}/composer.lock \ + ${SYSPASS_DIR}/vendor + fi +} + +setup_locales() { + if [ ! -e ".setup" ]; then + LOCALE_GEN="/etc/locale.gen" + + echo -e "${COLOR_YELLOW}setup_locales: Setting up locales${COLOR_NC}" + + echo -e "\n### sysPass locales" >> $LOCALE_GEN + + for LOCALE in ${SYSPASS_LOCALES}; do + echo "${LOCALE}.UTF-8 UTF-8" >> $LOCALE_GEN + done + + echo 'LANG="en_US.UTF-8"' > /etc/default/locale + + dpkg-reconfigure --frontend=noninteractive locales + + update-locale LANG=en_US.UTF-8 + + export LANG=en_US.UTF-8 + + echo "1" > .setup + else + echo -e "${COLOR_YELLOW}setup_locales: Locales already set up${COLOR_NC}" + fi +} + +run_composer () { + pushd ${SYSPASS_DIR} + + if [ -e "./composer.lock" -a -e "composer.json" ]; then + echo -e "${COLOR_YELLOW}run_composer: Running composer${COLOR_NC}" + + ${GOSU} composer "$@" ${COMPOSER_OPTIONS} + else + echo -e "${COLOR_RED}run_composer: Error, composer not set up${COLOR_NC}" + fi + + popd +} + +setup_composer_extensions () { + if [ -n "${COMPOSER_EXTENSIONS}" ]; then + echo -e "${COLOR_YELLOW}setup_composer_extensions: ${COMPOSER_EXTENSIONS}${COLOR_NC}" + + run_composer require ${COMPOSER_EXTENSIONS} --update-no-dev + fi +} diff --git a/linux/discontinued/syspass/sysPass/docker-compose.yml b/linux/discontinued/syspass/sysPass/docker-compose.yml new file mode 100644 index 000000000..985ca762a --- /dev/null +++ b/linux/discontinued/syspass/sysPass/docker-compose.yml @@ -0,0 +1,24 @@ +version: '2' +services: + app: + container_name: syspass-app + image: syspass/syspass:3.2.0-php7.4 + restart: always + ports: + - "80" + - "443" + links: + - db + volumes: + - /var/www/html/sysPass/app/config + - /var/www/html/sysPass/app/backup + db: + container_name: syspass-db + restart: always + image: mariadb:10.2 + environment: + - MYSQL_ROOT_PASSWORD=syspass + ports: + - "3306" + volumes: + - /var/lib/mysql diff --git a/linux/discontinued/syspass/sysPass/entrypoint.sh b/linux/discontinued/syspass/sysPass/entrypoint.sh new file mode 100755 index 000000000..2dd6df3a6 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/entrypoint.sh @@ -0,0 +1,55 @@ +#!/usr/bin/env bash + +set -euo pipefail + +COMMON_FN="common_fn.sh" + +source ${COMMON_FN} + +echo -e "${COLOR_YELLOW}entrypoint: Starting with UID : ${SYSPASS_UID}${COLOR_NC}" + +id ${SYSPASS_UID} > /dev/null 2>&1 \ + || useradd --shell /bin/bash -u ${SYSPASS_UID} -o -c "" -m user + +export HOME=${SYSPASS_DIR} + +setup_app + +case "$1" in + "apache") + setup_composer_extensions + setup_locales + setup_apache + + SELF_IP_ADDRESS=$(grep $HOSTNAME /etc/hosts | cut -f1) + + echo -e "${COLOR_GREEN}######" + echo -e "sysPass environment installed and configured. Please point your browser to https://${SELF_IP_ADDRESS} to start the installation." + echo -e "######${COLOR_NC}" + echo -e "${COLOR_YELLOW}entrypoint: Starting Apache${COLOR_NC}" + + run_apache + ;; + "update") + echo -e "${COLOR_YELLOW}######" + echo -e "Please, only run this command for debuging purposes." + echo -e "In order to update the dependencies, please, download and updated image" + echo -e "######${COLOR_NC}" + + run_composer update + ;; + "composer") + shift + + echo -e "${COLOR_YELLOW}######" + echo -e "Please, only run this command for debuging purposes." + echo -e "In order to update the dependencies, please, download and updated image" + echo -e "######${COLOR_NC}" + + run_composer "$@" + ;; + *) + echo -e "${COLOR_YELLOW}entrypoint: Starting $@${COLOR_NC}" + exec ${GOSU} "$@" + ;; +esac diff --git a/linux/discontinued/syspass/sysPass/init-functions b/linux/discontinued/syspass/sysPass/init-functions new file mode 100644 index 000000000..e34a182ca --- /dev/null +++ b/linux/discontinued/syspass/sysPass/init-functions @@ -0,0 +1,17 @@ +if [ ${SYSPASS_DEV} -eq 1 ]; then + COMPOSER_OPTIONS="--working-dir ${SYSPASS_DIR} --optimize-autoloader --dev" +fi + +setup_apache () { + if [ ${SYSPASS_DEV} -eq 0 ]; then + return 0 + fi + + echo -e "${COLOR_YELLOW}setup_apache: Setting up xdebug variables${COLOR_NC}" + sed -i 's/__XDEBUG_REMOTE_HOST__/'"$XDEBUG_REMOTE_HOST"'/' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini + sed -i 's/__XDEBUG_IDE_KEY__/'"$XDEBUG_IDE_KEY"'/' /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini +} + +run_apache () { + apache2-foreground +} diff --git a/linux/discontinued/syspass/sysPass/locale.gen b/linux/discontinued/syspass/sysPass/locale.gen new file mode 100644 index 000000000..07d312aa8 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/locale.gen @@ -0,0 +1,25 @@ +es_ES.UTF-8 UTF-8 +es_ES ISO-8859-1 +es_ES.ISO-8859-15 ISO-8859-15 +en_GB.UTF-8 UTF-8 +en_GB ISO-8859-1 +en_GB.ISO-8859-15 ISO-8859-15 +en_US.UTF-8 UTF-8 +en_US ISO-8859-1 +en_US.ISO-8859-15 ISO-8859-15 +de_DE.UTF-8 UTF-8 +ca_ES.UTF-8 UTF-8 +fr_FR.UTF-8 UTF-8 +ru_RU.UTF-8 UTF-8 +ru_RU.KOI8-R KOI8-R +ru_RU ISO-8859-5 +ru_RU.CP1251 CP1251 +ru_UA.UTF-8 UTF-8 +ru_UA KOI8-U +pl_PL.UTF-8 UTF-8 +nl_NL.UTF-8 UTF-8 +pt_BR.UTF-8 UTF-8 +da_DK.UTF-8 UTF-8 +it_IT.UTF-8 UTF-8 +fo_FO.UTF-8 UTF-8 +ja_JP.UTF-8 UTF-8 diff --git a/linux/discontinued/syspass/sysPass/locale.gen.full b/linux/discontinued/syspass/sysPass/locale.gen.full new file mode 100644 index 000000000..602141659 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/locale.gen.full @@ -0,0 +1,496 @@ +aa_DJ.UTF-8 UTF-8 +aa_DJ ISO-8859-1 +aa_ER UTF-8 +aa_ER@saaho UTF-8 +aa_ET UTF-8 +af_ZA.UTF-8 UTF-8 +af_ZA ISO-8859-1 +agr_PE UTF-8 +ak_GH UTF-8 +am_ET UTF-8 +an_ES.UTF-8 UTF-8 +an_ES ISO-8859-15 +anp_IN UTF-8 +ar_AE.UTF-8 UTF-8 +ar_AE ISO-8859-6 +ar_BH.UTF-8 UTF-8 +ar_BH ISO-8859-6 +ar_DZ.UTF-8 UTF-8 +ar_DZ ISO-8859-6 +ar_EG.UTF-8 UTF-8 +ar_EG ISO-8859-6 +ar_IN UTF-8 +ar_IQ.UTF-8 UTF-8 +ar_IQ ISO-8859-6 +ar_JO.UTF-8 UTF-8 +ar_JO ISO-8859-6 +ar_KW.UTF-8 UTF-8 +ar_KW ISO-8859-6 +ar_LB.UTF-8 UTF-8 +ar_LB ISO-8859-6 +ar_LY.UTF-8 UTF-8 +ar_LY ISO-8859-6 +ar_MA.UTF-8 UTF-8 +ar_MA ISO-8859-6 +ar_OM.UTF-8 UTF-8 +ar_OM ISO-8859-6 +ar_QA.UTF-8 UTF-8 +ar_QA ISO-8859-6 +ar_SA.UTF-8 UTF-8 +ar_SA ISO-8859-6 +ar_SD.UTF-8 UTF-8 +ar_SD ISO-8859-6 +ar_SS UTF-8 +ar_SY.UTF-8 UTF-8 +ar_SY ISO-8859-6 +ar_TN.UTF-8 UTF-8 +ar_TN ISO-8859-6 +ar_YE.UTF-8 UTF-8 +ar_YE ISO-8859-6 +ayc_PE UTF-8 +az_AZ UTF-8 +az_IR UTF-8 +as_IN UTF-8 +ast_ES.UTF-8 UTF-8 +ast_ES ISO-8859-15 +be_BY.UTF-8 UTF-8 +be_BY CP1251 +be_BY@latin UTF-8 +bem_ZM UTF-8 +ber_DZ UTF-8 +ber_MA UTF-8 +bg_BG.UTF-8 UTF-8 +bg_BG CP1251 +bhb_IN.UTF-8 UTF-8 +bho_IN UTF-8 +bho_NP UTF-8 +bi_VU UTF-8 +bn_BD UTF-8 +bn_IN UTF-8 +bo_CN UTF-8 +bo_IN UTF-8 +br_FR.UTF-8 UTF-8 +br_FR ISO-8859-1 +br_FR@euro ISO-8859-15 +brx_IN UTF-8 +bs_BA.UTF-8 UTF-8 +bs_BA ISO-8859-2 +byn_ER UTF-8 +ca_AD.UTF-8 UTF-8 +ca_AD ISO-8859-15 +ca_ES.UTF-8 UTF-8 +ca_ES ISO-8859-1 +ca_ES@euro ISO-8859-15 +ca_ES@valencia UTF-8 +ca_FR.UTF-8 UTF-8 +ca_FR ISO-8859-15 +ca_IT.UTF-8 UTF-8 +ca_IT ISO-8859-15 +ce_RU UTF-8 +chr_US UTF-8 +cmn_TW UTF-8 +crh_UA UTF-8 +cs_CZ.UTF-8 UTF-8 +cs_CZ ISO-8859-2 +csb_PL UTF-8 +cv_RU UTF-8 +cy_GB.UTF-8 UTF-8 +cy_GB ISO-8859-14 +da_DK.UTF-8 UTF-8 +da_DK ISO-8859-1 +de_AT.UTF-8 UTF-8 +de_AT ISO-8859-1 +de_AT@euro ISO-8859-15 +de_BE.UTF-8 UTF-8 +de_BE ISO-8859-1 +de_BE@euro ISO-8859-15 +de_CH.UTF-8 UTF-8 +de_CH ISO-8859-1 +de_DE.UTF-8 UTF-8 +de_DE ISO-8859-1 +de_DE@euro ISO-8859-15 +de_IT.UTF-8 UTF-8 +de_IT ISO-8859-1 +de_LI.UTF-8 UTF-8 +de_LU.UTF-8 UTF-8 +de_LU ISO-8859-1 +de_LU@euro ISO-8859-15 +doi_IN UTF-8 +dsb_DE UTF-8 +dv_MV UTF-8 +dz_BT UTF-8 +el_GR.UTF-8 UTF-8 +el_GR ISO-8859-7 +el_GR@euro ISO-8859-7 +el_CY.UTF-8 UTF-8 +el_CY ISO-8859-7 +en_AG UTF-8 +en_AU.UTF-8 UTF-8 +en_AU ISO-8859-1 +en_BW.UTF-8 UTF-8 +en_BW ISO-8859-1 +en_CA.UTF-8 UTF-8 +en_CA ISO-8859-1 +en_DK.UTF-8 UTF-8 +en_DK.ISO-8859-15 ISO-8859-15 +en_DK ISO-8859-1 +en_GB.UTF-8 UTF-8 +en_GB ISO-8859-1 +en_GB.ISO-8859-15 ISO-8859-15 +en_HK.UTF-8 UTF-8 +en_HK ISO-8859-1 +en_IE.UTF-8 UTF-8 +en_IE ISO-8859-1 +en_IE@euro ISO-8859-15 +en_IL UTF-8 +en_IN UTF-8 +en_NG UTF-8 +en_NZ.UTF-8 UTF-8 +en_NZ ISO-8859-1 +en_PH.UTF-8 UTF-8 +en_PH ISO-8859-1 +en_SC.UTF-8 UTF-8 +en_SG.UTF-8 UTF-8 +en_SG ISO-8859-1 +en_US.UTF-8 UTF-8 +en_US ISO-8859-1 +en_US.ISO-8859-15 ISO-8859-15 +en_ZA.UTF-8 UTF-8 +en_ZA ISO-8859-1 +en_ZM UTF-8 +en_ZW.UTF-8 UTF-8 +en_ZW ISO-8859-1 +eo UTF-8 +es_AR.UTF-8 UTF-8 +es_AR ISO-8859-1 +es_BO.UTF-8 UTF-8 +es_BO ISO-8859-1 +es_CL.UTF-8 UTF-8 +es_CL ISO-8859-1 +es_CO.UTF-8 UTF-8 +es_CO ISO-8859-1 +es_CR.UTF-8 UTF-8 +es_CR ISO-8859-1 +es_CU UTF-8 +es_DO.UTF-8 UTF-8 +es_DO ISO-8859-1 +es_EC.UTF-8 UTF-8 +es_EC ISO-8859-1 +es_ES.UTF-8 UTF-8 +es_ES ISO-8859-1 +es_ES@euro ISO-8859-15 +es_GT.UTF-8 UTF-8 +es_GT ISO-8859-1 +es_HN.UTF-8 UTF-8 +es_HN ISO-8859-1 +es_MX.UTF-8 UTF-8 +es_MX ISO-8859-1 +es_NI.UTF-8 UTF-8 +es_NI ISO-8859-1 +es_PA.UTF-8 UTF-8 +es_PA ISO-8859-1 +es_PE.UTF-8 UTF-8 +es_PE ISO-8859-1 +es_PR.UTF-8 UTF-8 +es_PR ISO-8859-1 +es_PY.UTF-8 UTF-8 +es_PY ISO-8859-1 +es_SV.UTF-8 UTF-8 +es_SV ISO-8859-1 +es_US.UTF-8 UTF-8 +es_US ISO-8859-1 +es_UY.UTF-8 UTF-8 +es_UY ISO-8859-1 +es_VE.UTF-8 UTF-8 +es_VE ISO-8859-1 +et_EE.UTF-8 UTF-8 +et_EE ISO-8859-1 +et_EE.ISO-8859-15 ISO-8859-15 +eu_ES.UTF-8 UTF-8 +eu_ES ISO-8859-1 +eu_ES@euro ISO-8859-15 +eu_FR.UTF-8 UTF-8 +eu_FR ISO-8859-1 +eu_FR@euro ISO-8859-15 +fa_IR UTF-8 +ff_SN UTF-8 +fi_FI.UTF-8 UTF-8 +fi_FI ISO-8859-1 +fi_FI@euro ISO-8859-15 +fil_PH UTF-8 +fo_FO.UTF-8 UTF-8 +fo_FO ISO-8859-1 +fr_BE.UTF-8 UTF-8 +fr_BE ISO-8859-1 +fr_BE@euro ISO-8859-15 +fr_CA.UTF-8 UTF-8 +fr_CA ISO-8859-1 +fr_CH.UTF-8 UTF-8 +fr_CH ISO-8859-1 +fr_FR.UTF-8 UTF-8 +fr_FR ISO-8859-1 +fr_FR@euro ISO-8859-15 +fr_LU.UTF-8 UTF-8 +fr_LU ISO-8859-1 +fr_LU@euro ISO-8859-15 +fur_IT UTF-8 +fy_NL UTF-8 +fy_DE UTF-8 +ga_IE.UTF-8 UTF-8 +ga_IE ISO-8859-1 +ga_IE@euro ISO-8859-15 +gd_GB.UTF-8 UTF-8 +gd_GB ISO-8859-15 +gez_ER UTF-8 +gez_ER@abegede UTF-8 +gez_ET UTF-8 +gez_ET@abegede UTF-8 +gl_ES.UTF-8 UTF-8 +gl_ES ISO-8859-1 +gl_ES@euro ISO-8859-15 +gu_IN UTF-8 +gv_GB.UTF-8 UTF-8 +gv_GB ISO-8859-1 +ha_NG UTF-8 +hak_TW UTF-8 +he_IL.UTF-8 UTF-8 +he_IL ISO-8859-8 +hi_IN UTF-8 +hif_FJ UTF-8 +hne_IN UTF-8 +hr_HR.UTF-8 UTF-8 +hr_HR ISO-8859-2 +hsb_DE.UTF-8 UTF-8 +hsb_DE ISO-8859-2 +ht_HT UTF-8 +hu_HU.UTF-8 UTF-8 +hu_HU ISO-8859-2 +hy_AM UTF-8 +hy_AM.ARMSCII-8 ARMSCII-8 +ia_FR UTF-8 +id_ID.UTF-8 UTF-8 +id_ID ISO-8859-1 +ig_NG UTF-8 +ik_CA UTF-8 +is_IS.UTF-8 UTF-8 +is_IS ISO-8859-1 +it_CH.UTF-8 UTF-8 +it_CH ISO-8859-1 +it_IT.UTF-8 UTF-8 +it_IT ISO-8859-1 +it_IT@euro ISO-8859-15 +iu_CA UTF-8 +ja_JP.UTF-8 UTF-8 +ja_JP.EUC-JP EUC-JP +ka_GE.UTF-8 UTF-8 +ka_GE GEORGIAN-PS +kab_DZ UTF-8 +kk_KZ.UTF-8 UTF-8 +kk_KZ PT154 +kk_KZ.RK1048 RK1048 +kl_GL.UTF-8 UTF-8 +kl_GL ISO-8859-1 +km_KH UTF-8 +kn_IN UTF-8 +ko_KR.UTF-8 UTF-8 +ko_KR.EUC-KR EUC-KR +kok_IN UTF-8 +ks_IN UTF-8 +ks_IN@devanagari UTF-8 +ku_TR.UTF-8 UTF-8 +ku_TR ISO-8859-9 +kw_GB.UTF-8 UTF-8 +kw_GB ISO-8859-1 +ky_KG UTF-8 +lb_LU UTF-8 +lg_UG.UTF-8 UTF-8 +lg_UG ISO-8859-10 +li_BE UTF-8 +li_NL UTF-8 +lij_IT UTF-8 +ln_CD UTF-8 +lo_LA UTF-8 +lt_LT.UTF-8 UTF-8 +lt_LT ISO-8859-13 +lv_LV.UTF-8 UTF-8 +lv_LV ISO-8859-13 +lzh_TW UTF-8 +mag_IN UTF-8 +mai_IN UTF-8 +mai_NP UTF-8 +mfe_MU UTF-8 +mg_MG.UTF-8 UTF-8 +mg_MG ISO-8859-15 +mhr_RU UTF-8 +mi_NZ.UTF-8 UTF-8 +mi_NZ ISO-8859-13 +miq_NI UTF-8 +mjw_IN UTF-8 +mk_MK.UTF-8 UTF-8 +mk_MK ISO-8859-5 +ml_IN UTF-8 +mn_MN UTF-8 +mni_IN UTF-8 +mr_IN UTF-8 +ms_MY.UTF-8 UTF-8 +ms_MY ISO-8859-1 +mt_MT.UTF-8 UTF-8 +mt_MT ISO-8859-3 +my_MM UTF-8 +nan_TW UTF-8 +nan_TW@latin UTF-8 +nb_NO.UTF-8 UTF-8 +nb_NO ISO-8859-1 +nds_DE UTF-8 +nds_NL UTF-8 +ne_NP UTF-8 +nhn_MX UTF-8 +niu_NU UTF-8 +niu_NZ UTF-8 +nl_AW UTF-8 +nl_BE.UTF-8 UTF-8 +nl_BE ISO-8859-1 +nl_BE@euro ISO-8859-15 +nl_NL.UTF-8 UTF-8 +nl_NL ISO-8859-1 +nl_NL@euro ISO-8859-15 +nn_NO.UTF-8 UTF-8 +nn_NO ISO-8859-1 +nr_ZA UTF-8 +nso_ZA UTF-8 +oc_FR.UTF-8 UTF-8 +oc_FR ISO-8859-1 +om_ET UTF-8 +om_KE.UTF-8 UTF-8 +om_KE ISO-8859-1 +or_IN UTF-8 +os_RU UTF-8 +pa_IN UTF-8 +pa_PK UTF-8 +pap_AW UTF-8 +pap_CW UTF-8 +pl_PL.UTF-8 UTF-8 +pl_PL ISO-8859-2 +ps_AF UTF-8 +pt_BR.UTF-8 UTF-8 +pt_BR ISO-8859-1 +pt_PT.UTF-8 UTF-8 +pt_PT ISO-8859-1 +pt_PT@euro ISO-8859-15 +quz_PE UTF-8 +raj_IN UTF-8 +ro_RO.UTF-8 UTF-8 +ro_RO ISO-8859-2 +ru_RU.UTF-8 UTF-8 +ru_RU.KOI8-R KOI8-R +ru_RU ISO-8859-5 +ru_RU.CP1251 CP1251 +ru_UA.UTF-8 UTF-8 +ru_UA KOI8-U +rw_RW UTF-8 +sa_IN UTF-8 +sah_RU UTF-8 +sat_IN UTF-8 +sc_IT UTF-8 +sd_IN UTF-8 +sd_IN@devanagari UTF-8 +se_NO UTF-8 +sgs_LT UTF-8 +shn_MM UTF-8 +shs_CA UTF-8 +si_LK UTF-8 +sid_ET UTF-8 +sk_SK.UTF-8 UTF-8 +sk_SK ISO-8859-2 +sl_SI.UTF-8 UTF-8 +sl_SI ISO-8859-2 +sm_WS UTF-8 +so_DJ.UTF-8 UTF-8 +so_DJ ISO-8859-1 +so_ET UTF-8 +so_KE.UTF-8 UTF-8 +so_KE ISO-8859-1 +so_SO.UTF-8 UTF-8 +so_SO ISO-8859-1 +sq_AL.UTF-8 UTF-8 +sq_AL ISO-8859-1 +sq_MK UTF-8 +sr_ME UTF-8 +sr_RS UTF-8 +sr_RS@latin UTF-8 +ss_ZA UTF-8 +st_ZA.UTF-8 UTF-8 +st_ZA ISO-8859-1 +sv_FI.UTF-8 UTF-8 +sv_FI ISO-8859-1 +sv_FI@euro ISO-8859-15 +sv_SE.UTF-8 UTF-8 +sv_SE ISO-8859-1 +sv_SE.ISO-8859-15 ISO-8859-15 +sw_KE UTF-8 +sw_TZ UTF-8 +szl_PL UTF-8 +ta_IN UTF-8 +ta_LK UTF-8 +tcy_IN.UTF-8 UTF-8 +te_IN UTF-8 +tg_TJ.UTF-8 UTF-8 +tg_TJ KOI8-T +th_TH.UTF-8 UTF-8 +th_TH TIS-620 +the_NP UTF-8 +ti_ER UTF-8 +ti_ET UTF-8 +tig_ER UTF-8 +tk_TM UTF-8 +tl_PH.UTF-8 UTF-8 +tl_PH ISO-8859-1 +tn_ZA UTF-8 +to_TO UTF-8 +tpi_PG UTF-8 +tr_CY.UTF-8 UTF-8 +tr_CY ISO-8859-9 +tr_TR.UTF-8 UTF-8 +tr_TR ISO-8859-9 +ts_ZA UTF-8 +tt_RU UTF-8 +tt_RU@iqtelif UTF-8 +ug_CN UTF-8 +uk_UA.UTF-8 UTF-8 +uk_UA KOI8-U +unm_US UTF-8 +ur_IN UTF-8 +ur_PK UTF-8 +uz_UZ.UTF-8 UTF-8 +uz_UZ ISO-8859-1 +uz_UZ@cyrillic UTF-8 +ve_ZA UTF-8 +vi_VN UTF-8 +wa_BE.UTF-8 UTF-8 +wa_BE ISO-8859-1 +wa_BE@euro ISO-8859-15 +wae_CH UTF-8 +wal_ET UTF-8 +wo_SN UTF-8 +xh_ZA.UTF-8 UTF-8 +xh_ZA ISO-8859-1 +yi_US.UTF-8 UTF-8 +yi_US CP1255 +yo_NG UTF-8 +yue_HK UTF-8 +yuw_PG UTF-8 +zh_CN.UTF-8 UTF-8 +zh_CN.GB18030 GB18030 +zh_CN.GBK GBK +zh_CN GB2312 +zh_HK.UTF-8 UTF-8 +zh_HK BIG5-HKSCS +zh_SG.UTF-8 UTF-8 +zh_SG.GBK GBK +zh_SG GB2312 +zh_TW.UTF-8 UTF-8 +zh_TW.EUC-TW EUC-TW +zh_TW BIG5 +zu_ZA.UTF-8 UTF-8 +zu_ZA ISO-8859-1 + diff --git a/linux/discontinued/syspass/sysPass/smb.conf b/linux/discontinued/syspass/sysPass/smb.conf new file mode 100644 index 000000000..9346a22f4 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/smb.conf @@ -0,0 +1,239 @@ +# +# Sample configuration file for the Samba suite for Debian GNU/Linux. +# +# +# This is the main Samba configuration file. You should read the +# smb.conf(5) manual page in order to understand the options listed +# here. Samba has a huge number of configurable options most of which +# are not shown in this example +# +# Some options that are often worth tuning have been included as +# commented-out examples in this file. +# - When such options are commented with ";", the proposed setting +# differs from the default Samba behaviour +# - When commented with "#", the proposed setting is the default +# behaviour of Samba but the option is considered important +# enough to be mentioned here +# +# NOTE: Whenever you modify this file you should run the command +# "testparm" to check that you have not made any basic syntactic +# errors. + +#======================= Global Settings ======================= + +[global] +client min protocol = SMB2 +client max protocol = SMB3 + + +## Browsing/Identification ### + +# Change this to the workgroup/NT-domain name your Samba server will part of + workgroup = WORKGROUP + +#### Networking #### + +# The specific set of interfaces / networks to bind to +# This can be either the interface name or an IP address/netmask; +# interface names are normally preferred +; interfaces = 127.0.0.0/8 eth0 + +# Only bind to the named interfaces and/or networks; you must use the +# 'interfaces' option above to use this. +# It is recommended that you enable this feature if your Samba machine is +# not protected by a firewall or is a firewall itself. However, this +# option cannot handle dynamic or non-broadcast interfaces correctly. +; bind interfaces only = yes + + + +#### Debugging/Accounting #### + +# This tells Samba to use a separate log file for each machine +# that connects + log file = /var/log/samba/log.%m + +# Cap the size of the individual log files (in KiB). + max log size = 1000 + +# We want Samba to only log to /var/log/samba/log.{smbd,nmbd}. +# Append syslog@1 if you want important messages to be sent to syslog too. + logging = file + +# Do something sensible when Samba crashes: mail the admin a backtrace + panic action = /usr/share/samba/panic-action %d + + +####### Authentication ####### + +# Server role. Defines in which mode Samba will operate. Possible +# values are "standalone server", "member server", "classic primary +# domain controller", "classic backup domain controller", "active +# directory domain controller". +# +# Most people will want "standalone server" or "member server". +# Running as "active directory domain controller" will require first +# running "samba-tool domain provision" to wipe databases and create a +# new domain. + server role = standalone server + + obey pam restrictions = yes + +# This boolean parameter controls whether Samba attempts to sync the Unix +# password with the SMB password when the encrypted SMB password in the +# passdb is changed. + unix password sync = yes + +# For Unix password sync to work on a Debian GNU/Linux system, the following +# parameters must be set (thanks to Ian Kahan < for +# sending the correct chat script for the passwd program in Debian Sarge). + passwd program = /usr/bin/passwd %u + passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* . + +# This boolean controls whether PAM will be used for password changes +# when requested by an SMB client instead of the program listed in +# 'passwd program'. The default is 'no'. + pam password change = yes + +# This option controls how unsuccessful authentication attempts are mapped +# to anonymous connections + map to guest = bad user + +########## Domains ########### + +# +# The following settings only takes effect if 'server role = primary +# classic domain controller', 'server role = backup domain controller' +# or 'domain logons' is set +# + +# It specifies the location of the user's +# profile directory from the client point of view) The following +# required a [profiles] share to be setup on the samba server (see +# below) +; logon path = \\%N\profiles\%U +# Another common choice is storing the profile in the user's home directory +# (this is Samba's default) +# logon path = \\%N\%U\profile + +# The following setting only takes effect if 'domain logons' is set +# It specifies the location of a user's home directory (from the client +# point of view) +; logon drive = H: +# logon home = \\%N\%U + +# The following setting only takes effect if 'domain logons' is set +# It specifies the script to run during logon. The script must be stored +# in the [netlogon] share +# NOTE: Must be store in 'DOS' file format convention +; logon script = logon.cmd + +# This allows Unix users to be created on the domain controller via the SAMR +# RPC pipe. The example command creates a user account with a disabled Unix +# password; please adapt to your needs +; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u + +# This allows machine accounts to be created on the domain controller via the +# SAMR RPC pipe. +# The following assumes a "machines" group exists on the system +; add machine script = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u + +# This allows Unix groups to be created on the domain controller via the SAMR +# RPC pipe. +; add group script = /usr/sbin/addgroup --force-badname %g + +############ Misc ############ + +# Using the following line enables you to customise your configuration +# on a per machine basis. The %m gets replaced with the netbios name +# of the machine that is connecting +; include = /home/samba/etc/smb.conf.%m + +# Some defaults for winbind (make sure you're not using the ranges +# for something else.) +; idmap config * : backend = tdb +; idmap config * : range = 3000-7999 +; idmap config YOURDOMAINHERE : backend = tdb +; idmap config YOURDOMAINHERE : range = 100000-999999 +; template shell = /bin/bash + +# Setup usershare options to enable non-root users to share folders +# with the net usershare command. + +# Maximum number of usershare. 0 means that usershare is disabled. +# usershare max shares = 100 + +# Allow users who've been granted usershare privileges to create +# public shares, not just authenticated ones + usershare allow guests = yes + +#======================= Share Definitions ======================= + +[homes] + comment = Home Directories + browseable = no + +# By default, the home directories are exported read-only. Change the +# next parameter to 'no' if you want to be able to write to them. + read only = yes + +# File creation mask is set to 0700 for security reasons. If you want to +# create files with group=rw permissions, set next parameter to 0775. + create mask = 0700 + +# Directory creation mask is set to 0700 for security reasons. If you want to +# create dirs. with group=rw permissions, set next parameter to 0775. + directory mask = 0700 + +# By default, \\server\username shares can be connected to by anyone +# with access to the samba server. +# The following parameter makes sure that only "username" can connect +# to \\server\username +# This might need tweaking when using external authentication schemes + valid users = %S + +# Un-comment the following and create the netlogon directory for Domain Logons +# (you need to configure Samba to act as a domain controller too.) +;[netlogon] +; comment = Network Logon Service +; path = /home/samba/netlogon +; guest ok = yes +; read only = yes + +# Un-comment the following and create the profiles directory to store +# users profiles (see the "logon path" option above) +# (you need to configure Samba to act as a domain controller too.) +# The path below should be writable by all users so that their +# profile directory may be created the first time they log on +;[profiles] +; comment = Users profiles +; path = /home/samba/profiles +; guest ok = no +; browseable = no +; create mask = 0600 +; directory mask = 0700 + +[printers] + comment = All Printers + browseable = no + path = /var/spool/samba + printable = yes + guest ok = no + read only = yes + create mask = 0700 + +# Windows clients look for this share name as a source of downloadable +# printer drivers +[print$] + comment = Printer Drivers + path = /var/lib/samba/printers + browseable = yes + read only = yes + guest ok = no +# Uncomment to allow remote administration of Windows print drivers. +# You may need to replace 'lpadmin' with the name of the group your +# admin users are members of. +# Please note that you also need to set appropriate Unix permissions +# to the drivers directory for these users to have write rights in it +; write list = root, @lpadmin + diff --git a/linux/discontinued/syspass/sysPass/sources.list b/linux/discontinued/syspass/sysPass/sources.list new file mode 100644 index 000000000..fd3092816 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/sources.list @@ -0,0 +1,19 @@ +#main +deb http://ftp.ru.debian.org/debian/ buster main contrib non-free +deb-src http://ftp.ru.debian.org/debian/ buster main contrib non-free +deb http://ftp.ru.debian.org/debian/ buster-updates main contrib non-free +deb-src http://ftp.ru.debian.org/debian/ buster-updates main contrib non-free +deb http://ftp.ru.debian.org/debian/ buster-backports main contrib non-free +deb-src http://ftp.ru.debian.org/debian/ buster-backports main contrib non-free +deb http://ftp.ru.debian.org/debian/ buster-proposed-updates main contrib non-free +deb-src http://ftp.ru.debian.org/debian/ buster-proposed-updates main contrib non-free + +#security +deb http://ftp.ru.debian.org/debian-security/ buster/updates main contrib non-free +deb-src http://ftp.ru.debian.org/debian-security/ buster/updates main contrib non-free + +##multimedia +#deb http://ftp.ru.debian.org/debian-multimedia/ buster main non-free +#deb-src http://ftp.ru.debian.org/debian-multimedia/ buster main non-free +#deb http://ftp.ru.debian.org/debian-multimedia/ buster-backports main +#deb-src http://ftp.ru.debian.org/debian-multimedia/ buster-backports main diff --git a/linux/discontinued/syspass/sysPass/syspass.conf b/linux/discontinued/syspass/sysPass/syspass.conf new file mode 100644 index 000000000..2988abfd2 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/syspass.conf @@ -0,0 +1,184 @@ +RedirectMatch "^/$" "/index.php" + + + DirectoryIndex index.php + Options -Indexes -FollowSymLinks -Includes -ExecCGI + + + Require expr "%{REQUEST_URI} =~ m#.*/index\.php(\?r=)?#" + Require expr "%{REQUEST_URI} =~ m#.*/api\.php$#" + Require expr "%{REQUEST_URI} =~ m#^$#" + + + +# +# Require all granted +# + + + Require all granted + + + + # the server uses to identify itself. This is used when creating + # redirection URLs. In the context of virtual hosts, the ServerName + # specifies what hostname must appear in the request's Host: header to + # match this virtual host. For the default virtual host (this file) this + # value is not decisive as it is used as a last resort host regardless. + # However, you must set it for any further virtual host explicitly. + #ServerName www.example.com + + ServerAdmin webmaster@localhost + DocumentRoot /var/www/html/sysPass + + # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, + # error, crit, alert, emerg. + # It is also possible to configure the loglevel for particular + # modules, e.g. + #LogLevel info ssl:warn + + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + + RewriteEngine On + RewriteCond %{HTTPS} !=on + RewriteCond %{ENV:USE_SSL} "=yes" + RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] + + + + + + ServerAdmin webmaster@localhost + DocumentRoot /var/www/html/sysPass + + # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, + # error, crit, alert, emerg. + # It is also possible to configure the loglevel for particular + # modules, e.g. + #LogLevel info ssl:warn + + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + # For most configuration files from conf-available/, which are + # enabled or disabled at a global level, it is possible to + # include a line for only one particular virtual host. For example the + # following line enables the CGI configuration for this host only + # after it has been globally disabled with "a2disconf". + #Include conf-available/serve-cgi-bin.conf + + # SSL Engine Switch: + # Enable/Disable SSL for this virtual host. + SSLEngine on + + # A self-signed (snakeoil) certificate can be created by installing + # the ssl-cert package. See + # /usr/share/doc/apache2/README.Debian.gz for more info. + # If both key and certificate are stored in the same file, only the + # SSLCertificateFile directive is needed. + SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem + SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key + + # Server Certificate Chain: + # Point SSLCertificateChainFile at a file containing the + # concatenation of PEM encoded CA certificates which form the + # certificate chain for the server certificate. Alternatively + # the referenced file can be the same as SSLCertificateFile + # when the CA certificates are directly appended to the server + # certificate for convinience. + #SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca.crt + + # Certificate Authority (CA): + # Set the CA certificate verification path where to find CA + # certificates for client authentication or alternatively one + # huge file containing all of them (file must be PEM encoded) + # Note: Inside SSLCACertificatePath you need hash symlinks + # to point to the certificate files. Use the provided + # Makefile to update the hash symlinks after changes. + #SSLCACertificatePath /etc/ssl/certs/ + #SSLCACertificateFile /etc/apache2/ssl.crt/ca-bundle.crt + + # Certificate Revocation Lists (CRL): + # Set the CA revocation path where to find CA CRLs for client + # authentication or alternatively one huge file containing all + # of them (file must be PEM encoded) + # Note: Inside SSLCARevocationPath you need hash symlinks + # to point to the certificate files. Use the provided + # Makefile to update the hash symlinks after changes. + #SSLCARevocationPath /etc/apache2/ssl.crl/ + #SSLCARevocationFile /etc/apache2/ssl.crl/ca-bundle.crl + + # Client Authentication (Type): + # Client certificate verification type and depth. Types are + # none, optional, require and optional_no_ca. Depth is a + # number which specifies how deeply to verify the certificate + # issuer chain before deciding the certificate is not valid. + #SSLVerifyClient require + #SSLVerifyDepth 10 + + # SSL Engine Options: + # Set various options for the SSL engine. + # o FakeBasicAuth: + # Translate the client X.509 into a Basic Authorisation. This means that + # the standard Auth/DBMAuth methods can be used for access control. The + # user name is the `one line' version of the client's X.509 certificate. + # Note that no password is obtained from the user. Every entry in the user + # file needs this password: `xxj31ZMTZzkVA'. + # o ExportCertData: + # This exports two additional environment variables: SSL_CLIENT_CERT and + # SSL_SERVER_CERT. These contain the PEM-encoded certificates of the + # server (always existing) and the client (only existing when client + # authentication is used). This can be used to import the certificates + # into CGI scripts. + # o StdEnvVars: + # This exports the standard SSL/TLS related `SSL_*' environment variables. + # Per default this exportation is switched off for performance reasons, + # because the extraction step is an expensive operation and is usually + # useless for serving static content. So one usually enables the + # exportation for CGI and SSI requests only. + # o OptRenegotiate: + # This enables optimized SSL connection renegotiation handling when SSL + # directives are used in per-directory context. + #SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire + + SSLOptions +StdEnvVars + + + SSLOptions +StdEnvVars + + + # SSL Protocol Adjustments: + # The safe and default but still SSL/TLS standard compliant shutdown + # approach is that mod_ssl sends the close notify alert but doesn't wait for + # the close notify alert from client. When you need a different shutdown + # approach you can use one of the following variables: + # o ssl-unclean-shutdown: + # This forces an unclean shutdown when the connection is closed, i.e. no + # SSL close notify alert is send or allowed to received. This violates + # the SSL/TLS standard but is needed for some brain-dead browsers. Use + # this when you receive I/O errors because of the standard approach where + # mod_ssl sends the close notify alert. + # o ssl-accurate-shutdown: + # This forces an accurate shutdown when the connection is closed, i.e. a + # SSL close notify alert is send and mod_ssl waits for the close notify + # alert of the client. This is 100% SSL/TLS standard compliant, but in + # practice often causes hanging connections with brain-dead browsers. Use + # this only for browsers where you know that their SSL implementation + # works correctly. + # Notice: Most problems of broken clients are also related to the HTTP + # keep-alive facility, so you usually additionally want to disable + # keep-alive for those clients, too. Use variable "nokeepalive" for this. + # Similarly, one has to force some clients to use HTTP/1.0 to workaround + # their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and + # "force-response-1.0" for this. + BrowserMatch "MSIE [2-6]" \ + nokeepalive ssl-unclean-shutdown \ + downgrade-1.0 force-response-1.0 + # MSIE 7 and newer should be able to use keepalive + BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown + + + +# vim: syntax=apache ts=2 sw=2 sts=2 sr noet diff --git a/linux/discontinued/syspass/sysPass/xdebug.ini b/linux/discontinued/syspass/sysPass/xdebug.ini new file mode 100644 index 000000000..f05728687 --- /dev/null +++ b/linux/discontinued/syspass/sysPass/xdebug.ini @@ -0,0 +1,43 @@ +zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20190902/xdebug.so + +[debug] +; Remote settings +xdebug.remote_autostart=off +xdebug.remote_enable=on +xdebug.remote_handler=dbgp +xdebug.remote_mode=req +xdebug.remote_host=__XDEBUG_REMOTE_HOST__ +xdebug.remote_port=9000 +;xdebug.remote_log=/tmp/xdebug.log + +; General +xdebug.auto_trace=off +xdebug.collect_includes=on +xdebug.collect_params=off +xdebug.collect_return=off +xdebug.default_enable=on +xdebug.extended_info=1 +xdebug.manual_url=http://www.php.net +xdebug.show_local_vars=0 +xdebug.show_mem_delta=1 +xdebug.max_nesting_level=100 +xdebug.idekey=__XDEBUG_IDE_KEY__ +xdebug.force_display_errors=1 + +; Trace options +xdebug.trace_format=0 +xdebug.trace_output_dir=/tmp +xdebug.trace_options=0 +xdebug.trace_output_name=crc32 + +; Profiling +xdebug.profiler_append=1 +xdebug.profiler_enable=0 +xdebug.profiler_enable_trigger=1 +xdebug.profiler_output_dir=/tmp +xdebug.profiler_output_name=cachegring.out.%t +;xdebug.profiler_output_name=cachegring.out.%p +;xdebug.profiler_output_name=cachegring.out +;xdebug.profiler_output_name=cachegring.out.%R.%t + +xdebug.var_display_max_depth=5 diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile new file mode 100644 index 000000000..974a7f4cf --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile @@ -0,0 +1,47 @@ +FROM epicmorg/debian:bullseye-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG BITBUCKET_VERSION=8.17.0 +ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/BitbucketServer/Bitbucket+Server+home+directory +ENV BITBUCKET_HOME /var/atlassian/application-data/bitbucket +ENV BITBUCKET_INSTALL_DIR /opt/atlassian/bitbucket + +VOLUME ["${BITBUCKET_HOME}"] +WORKDIR $BITBUCKET_HOME + +# Expose HTTP and SSH ports +EXPOSE 7990 +EXPOSE 7999 + +################################################################## +# Installing +################################################################## +RUN apt update && \ + apt install -y --allow-downgrades git/bullseye-backports + +RUN mkdir -p ${BITBUCKET_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "${BITBUCKET_INSTALL_DIR}" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${BITBUCKET_INSTALL_DIR}/ \ + && sed -i -e 's/^# umask/umask/' ${BITBUCKET_INSTALL_DIR}/bin/_start-webapp.sh && \ + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk11 b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk11 new file mode 100644 index 000000000..d1b1c5254 --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk11 @@ -0,0 +1,48 @@ +FROM epicmorg/debian:bullseye-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG BITBUCKET_VERSION=8.17.0 +ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/BitbucketServer/Bitbucket+Server+home+directory +ENV BITBUCKET_HOME /var/atlassian/application-data/bitbucket +ENV BITBUCKET_INSTALL_DIR /opt/atlassian/bitbucket + +VOLUME ["${BITBUCKET_HOME}"] +WORKDIR $BITBUCKET_HOME + +# Expose HTTP and SSH ports +EXPOSE 7990 +EXPOSE 7999 + +################################################################## +# Installing +################################################################## +RUN apt update && \ + apt install -y --allow-downgrades git/bullseye-backports + +RUN mkdir -p ${BITBUCKET_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "${BITBUCKET_INSTALL_DIR}" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${BITBUCKET_INSTALL_DIR}/ \ + && sed -i -e 's/^# umask/umask/' ${BITBUCKET_INSTALL_DIR}/bin/_start-webapp.sh && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk17 b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk17 new file mode 100644 index 000000000..2a43e253c --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Dockerfile.jdk17 @@ -0,0 +1,48 @@ +FROM epicmorg/debian:bullseye-jdk17 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG BITBUCKET_VERSION=8.17.0 +ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/BitbucketServer/Bitbucket+Server+home+directory +ENV BITBUCKET_HOME /var/atlassian/application-data/bitbucket +ENV BITBUCKET_INSTALL_DIR /opt/atlassian/bitbucket + +VOLUME ["${BITBUCKET_HOME}"] +WORKDIR $BITBUCKET_HOME + +# Expose HTTP and SSH ports +EXPOSE 7990 +EXPOSE 7999 + +################################################################## +# Installing +################################################################## +RUN apt update && \ + apt install -y --allow-downgrades git/bullseye-backports + +RUN mkdir -p ${BITBUCKET_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "${BITBUCKET_INSTALL_DIR}" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${BITBUCKET_INSTALL_DIR}/ \ + && sed -i -e 's/^# umask/umask/' ${BITBUCKET_INSTALL_DIR}/bin/_start-webapp.sh && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Makefile b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/README.md b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/README.md new file mode 100644 index 000000000..b60c42068 --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/README.md @@ -0,0 +1,216 @@ +![Atlassian Bitbucket Server](https://www.atlassian.com/dam/wac/legacy/bitbucket_logo_landing.png) + +Bitbucket Server is an on-premises source code management solution for Git that's secure, fast, and enterprise grade. Create and manage repositories, set up fine-grained permissions, and collaborate on code - all with the flexibility of your servers. + +Learn more about Bitbucket Server: + +# Overview + +This Docker container makes it easy to get an instance of Bitbucket up and running. + +** We strongly recommend you run this image using a specific version tag instead of latest. This is because the image referenced by the latest tag changes often and we cannot guarantee that it will be backwards compatible. ** + +# Quick Start + +For the `BITBUCKET_HOME` directory that is used to store the repository data +(amongst other things) we recommend mounting a host directory as a [data volume](https://docs.docker.com/engine/tutorials/dockervolumes/#/data-volumes), or via a named volume if using a docker version >= 1.9. + +Volume permission is managed by entry scripts. To get started you can use a data volume, or named volumes. In this example we'll use named volumes. + + $> docker volume create --name bitbucketVolume + $> docker run -v bitbucketVolume:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 atlassian/bitbucket-server + +Note that this command can substitute folder paths with named volumes. + +Start Atlassian Bitbucket Server: + + $> docker run -v /data/bitbucket:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 atlassian/bitbucket-server + +**Success**. Bitbucket is now available on [http://localhost:7990](http://localhost:7990)* + +Please ensure your container has the necessary resources allocated to it. +We recommend 2GiB of memory allocated to accommodate both the application server +and the git processes. +See [Supported Platforms](https://confluence.atlassian.com/display/BitbucketServer/Supported+platforms) for further information. + + +_* Note: If you are using `docker-machine` on Mac OS X, please use `open http://$(docker-machine ip default):7990` instead._ + +## Reverse Proxy Settings + +If Bitbucket is run behind a reverse proxy server as [described here](https://confluence.atlassian.com/bitbucketserver/proxying-and-securing-bitbucket-server-776640099.html), +then you need to specify extra options to make bitbucket aware of the setup. They can be controlled via the below +environment variables. + +### Bitbucket Server 5.0 + + +Due to the migration to Spring Boot in 5.0, there are changes to how you set up Bitbucket to run behind a reverse proxy. + +In this example, we'll use an environment file. You can also do this via [specifying each environment variable](https://docs.docker.com/engine/reference/run/#env-environment-variables) via the `-e` argument in `docker run`. + +#### secure-bitbucket.env +``` +SERVER_SECURE=true +SERVER_SCHEME=https +SERVER_PROXY_PORT=443 +SERVER_PROXY_NAME= +``` + +Then you run Bitbucket as usual + +`docker run -v bitbucketVolume:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 --env-file=/path/to/env/file/secure-bitbucket.env atlassian/bitbucket-server:5.0` + +### Bitbucket Server < 5.0 + +To set the reverse proxy arguments, you specify the following as environment variables in the `docker run` command + +* `CATALINA_CONNECTOR_PROXYNAME` (default: NONE) + + The reverse proxy's fully qualified hostname. + +* `CATALINA_CONNECTOR_PROXYPORT` (default: NONE) + + The reverse proxy's port number via which bitbucket is accessed. + +* `CATALINA_CONNECTOR_SCHEME` (default: http) + + The protocol via which bitbucket is accessed. + +* `CATALINA_CONNECTOR_SECURE` (default: false) + + Set 'true' if CATALINA\_CONNECTOR\_SCHEME is 'https'. + +## JVM Configuration (Bitbucket Server 5.0 + only) + +If you need to override Bitbucket Server's default memory configuration or pass additional JVM arguments, use the environment variables below + +* `JVM_MINIMUM_MEMORY` (default: 512m) + + The minimum heap size of the JVM + +* `JVM_MAXIMUM_MEMORY` (default: 1024m) + + The maximum heap size of the JVM + +* `JVM_SUPPORT_RECOMMENDED_ARGS` (default: NONE) + + Additional JVM arguments for Bitbucket Server, such as a custom Java Trust Store + +## Application Mode Settings (Bitbucket Server 5.0 + only) + +This docker image can be run as a [Smart Mirror](https://confluence.atlassian.com/bitbucketserver/smart-mirroring-776640046.html) or as part of a [Data Center](https://confluence.atlassian.com/enterprise/bitbucket-data-center-668468332.html) cluster. +You can specify the following properties to start Bitbucket as a mirror or as a Data Center node: + +* `ELASTICSEARCH_ENABLED` (default: true) + + Set 'false' to prevent Elasticsearch from starting in the container. This should be used if Elasticsearch is running remotely, e.g. for if Bitbucket is running in a Data Center cluster + +* `APPLICATION_MODE` (default: default) + + The mode Bitbucket will run in. This can be set to 'mirror' to start Bitbucket as a Smart Mirror. This will also disable Elasticsearch even if `ELASTICSEARCH_ENABLED` has not been set to 'false'. + +* `HAZELCAST_NETWORK_MULTICAST` (default: false) + + Data Center: Set 'true' to enable Bitbucket to find new Data Center cluster members via multicast. `HAZELCAST_NETWORK_TCPIP` should not be specified when using this setting. + +* `HAZELCAST_NETWORK_TCPIP` (default: false) + + Data Center: Set 'true' to enable Bitbucket to find new Data Center cluster members via TCPIP. This setting requires `HAZELCAST_NETWORK_TCPIP_MEMBERS` to be specified. `HAZELCAST_NETWORK_MULTICAST` should not be specified when using this setting. + +* `HAZELCAST_NETWORK_TCPIP_MEMBERS` + + Data Center: List of members that Hazelcast nodes should connect to when HAZELCAST_NETWORK_TCPIP is 'true' + +* `HAZELCAST_GROUP_NAME` + + Data Center: Specifies the cluster group the instance should join. + +* `HAZELCAST_GROUP_PASSWORD` + + Data Center: The password required to join the specified cluster group. + +To run Bitbucket as part of a Data Center cluster, create a Docker network and assign the Bitbucket container a static IP. + +Note: Docker networks may support multicast, however the below example shows configuration using TCPIP. + + $> docker network create --driver bridge --subnet=172.18.0.0/16 myBitbucketNetwork + $> docker run --network=myBitbucketNetwork --ip=172.18.1.1 -e ELASTICSEARCH_ENABLED=false \ + -e HAZELCAST_NETWORK_TCPIP=true -e HAZELCAST_NETWORK_TCPIP_MEMBERS=172.18.1.1:5701,172.18.1.2:5701,172.18.1.3:5701 \ + -e HAZELCAST_GROUP_NAME=bitbucket -e HAZELCAST_GROUP_PASSWORD=mysecretpassword \ + -v /data/bitbucket-shared:/var/atlassian/application-data/bitbucket/shared --name="bitbucket" -d -p 7990:7990 -p 7999:7999 atlassian/bitbucket-server + +## JMX Monitoring (Bitbucket Server 5.0 + only) + +Bitbucket Server supports detailed JMX monitoring. To enable and configure JMX, use the environment variables below. For further information on JMX configuration, see [Enabling JMX counters for performance monitoring](https://confluence.atlassian.com/bitbucketserver/enabling-jmx-counters-for-performance-monitoring-776640189.html) + +* `JMX_ENABLED` (default: false) + + Enable Bitbucket to publish JMX data + +* `JMX_REMOTE_AUTH` (default: NONE) + + Set the authentication to use for remote JMX access. This value is required: anything other than "password" or "ssl" will cause remote JMX access to be disabled + +* `JMX_REMOTE_PORT` (default: 3333) + + The port used to negotiate a JMX connection. Note: this port is only used during the initial authorization, after which a different RMI port used for data transfer + +* `JMX_REMOTE_RMI_PORT` (default: ) + + The port used for all subsequent JMX-RMI data transfer. If desired, the RMI data port can be set to the same value as `JMX_REMOTE_PORT` to allow a single port to be used for both JMX authorization and data transfer + +* `RMI_SERVER_HOSTNAME` (default: NONE) + + The hostname or IP address that clients will use to connect to the application for JMX monitoring. This must be resolvable by both clients and from the JVM host machine. + +* `JMX_PASSWORD_FILE` (default: NONE) + + The full path to the JMX username/password file used to authenticate remote JMX clients. This is required when `JMX_REMOTE_AUTH` is set to "password" + + $> docker run -e JMX_ENABLED=true -e JMX_REMOTE_AUTH=password -e JMX_REMOTE_RMI_PORT=3333 -e RMI_SERVER_HOSTNAME=bitbucket \ + -e JMX_PASSWORD_FILE=/data/bitbucket:/var/atlassian/application-data/bitbucket/jmx.access \ + -v /data/bitbucket:/var/atlassian/application-data/bitbucket --name="bitbucket" -d -p 7990:7990 -p 7999:7999 -p 3333:3333 atlassian/bitbucket-server + +# Upgrade + +To upgrade to a more recent version of Bitbucket Server you can simply stop the `bitbucket` +container and start a new one based on a more recent image: + + $> docker stop bitbucket + $> docker rm bitbucket + $> docker pull atlassian/bitbucket-server: + $> docker run ... (See above) + +As your data is stored in the data volume directory on the host it will still +be available after the upgrade. + +_Note: Please make sure that you **don't** accidentally remove the `bitbucket` +container and its volumes using the `-v` option._ + +# Backup + +For evaluations you can use the built-in database that will store its files in the Bitbucket Server home directory. In that case it is sufficient to create a backup archive of the directory on the host that is used as a volume (`/data/bitbucket` in the example above). + +The [Bitbucket Server Backup Client](https://confluence.atlassian.com/display/BitbucketServer/Data+recovery+and+backups) is currently not supported in the Docker setup. You can however use the [Bitbucket Server DIY Backup](https://confluence.atlassian.com/display/BitbucketServer/Using+Bitbucket+Server+DIY+Backup) approach in case you decided to use an external database. + +Read more about data recovery and backups: [https://confluence.atlassian.com/display/BitbucketServer/Data+recovery+and+backups](https://confluence.atlassian.com/display/BitbucketServer/Data+recovery+and+backups) + +# Versioning + +The `latest` tag matches the most recent version of this repository. Thus using `atlassian/bitbucket:latest` or `atlassian/bitbucket` will ensure you are running the most up to date version of this image. + +However, we ** strongly recommend ** that for non-eval workloads you select a specific version in order to prevent breaking changes from impacting your setup. +You can use a specific minor version of Bitbucket Server by using a version number +tag: `atlassian/bitbucket-server:4.14`. This will install the latest `4.14.x` version that +is available. + + +# Issue tracker + +Please raise an [issue](https://bitbucket.org/atlassian/docker-atlassian-bitbucket-server/issues) if you encounter any problems with this Dockerfile. + +# Support + +For product support, go to [support.atlassian.com](https://support.atlassian.com/) +Octotree is enabled on this page. Click this button or press cmd shift s (or ctrl shift s) to show it. +Support us • Feedback? diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/docker-compose.yml b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/docker-compose.yml new file mode 100644 index 000000000..ba8de981a --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/docker-compose.yml @@ -0,0 +1,16 @@ +version: '3.9' +services: + app: + image: "epicmorg/bitbucket:8.17.0" + build: + context: . + app-jdk11: + image: "epicmorg/bitbucket:8.17.0-jdk11" + build: + context: . + dockerfile: ./Dockerfile.jdk11 + app-jdk17: + image: "epicmorg/bitbucket:8.17.0-jdk17" + build: + context: . + dockerfile: ./Dockerfile.jdk17 diff --git a/linux/ecosystem/atlassian/bitbucket/8/8.17.0/entrypoint.sh b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/entrypoint.sh new file mode 100755 index 000000000..842224a8c --- /dev/null +++ b/linux/ecosystem/atlassian/bitbucket/8/8.17.0/entrypoint.sh @@ -0,0 +1,57 @@ +#!/bin/bash +set -euo pipefail + +# Set recommended umask of "u=,g=w,o=rwx" (0027) +umask 0027 + +export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") +export JRE_HOME="$JAVA_HOME/jre" +export JAVA_BINARY="$JRE_HOME/bin/java" +export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') + +#export PATH=$JAVA_HOME/bin:$PATH + + +# Setup Catalina Opts +: ${CATALINA_CONNECTOR_PROXYNAME:=} +: ${CATALINA_CONNECTOR_PROXYPORT:=} +: ${CATALINA_CONNECTOR_SCHEME:=http} +: ${CATALINA_CONNECTOR_SECURE:=false} + +: ${CATALINA_OPTS:=} + +: ${JAVA_OPTS:=} + +: ${ELASTICSEARCH_ENABLED:=true} +: ${APPLICATION_MODE:=} + +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" + +JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" + +ARGS="$@" + +# Start Bitbucket without Elasticsearch +if [ "${ELASTICSEARCH_ENABLED}" == "false" ] || [ "${APPLICATION_MODE}" == "mirror" ]; then + ARGS="--no-search ${ARGS}" +fi + +# Start Bitbucket as the correct user. +if [ "${UID}" -eq 0 ]; then + echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" + PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${BITBUCKET_HOME}") + EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 + if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then + echo "Updating permissions for BITBUCKET_HOME" + mkdir -p "${BITBUCKET_HOME}/lib" && + chmod -R 700 "${BITBUCKET_HOME}" && + chown -R "${RUN_USER}:${RUN_GROUP}" "${BITBUCKET_HOME}" + fi + # Now drop privileges + exec su -s /bin/bash "${RUN_USER}" -c "${BITBUCKET_INSTALL_DIR}/bin/start-bitbucket.sh ${ARGS}" +else + exec "${BITBUCKET_INSTALL_DIR}/bin/start-bitbucket.sh" ${ARGS} +fi diff --git a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile index 1b041953d..9695a483a 100644 --- a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile +++ b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile @@ -1,11 +1,11 @@ -FROM epicmorg/debian:bullseye-jdk11 +FROM epicmorg/debian:bullseye-jdk17 LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG BITBUCKET_VERSION=8.12.0 +ARG BITBUCKET_VERSION=8.17.0 ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk11 b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk11 index 1603d03b6..6d91a1923 100644 --- a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk11 +++ b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk11 @@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG BITBUCKET_VERSION=8.12.0 +ARG BITBUCKET_VERSION=8.17.0 ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk17 b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk17 index af5ee4162..3e1ce5643 100644 --- a/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk17 +++ b/linux/ecosystem/atlassian/bitbucket/latest/Dockerfile.jdk17 @@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG BITBUCKET_VERSION=8.12.0 +ARG BITBUCKET_VERSION=8.17.0 ARG DOWNLOAD_URL=https://product-downloads.atlassian.com/software/stash/downloads/atlassian-bitbucket-${BITBUCKET_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile b/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile new file mode 100644 index 000000000..6f2f95b2e --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile @@ -0,0 +1,46 @@ +FROM epicmorg/debian:bullseye-jdk8 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG CONFLUENCE_VERSION=7.19.18 +ARG DOWNLOAD_URL=http://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] +WORKDIR $CONFLUENCE_HOME + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile.jdk11 b/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile.jdk11 new file mode 100644 index 000000000..0be2c5898 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/7/7.19.18/Dockerfile.jdk11 @@ -0,0 +1,46 @@ +FROM epicmorg/debian:bullseye-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG CONFLUENCE_VERSION=7.19.18 +ARG DOWNLOAD_URL=http://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] +WORKDIR $CONFLUENCE_HOME + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/confluence/7/7.19.18/Makefile b/linux/ecosystem/atlassian/confluence/7/7.19.18/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/7/7.19.18/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/atlassian/confluence/7/7.19.18/docker-compose.yml b/linux/ecosystem/atlassian/confluence/7/7.19.18/docker-compose.yml new file mode 100644 index 000000000..a00a0960a --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/7/7.19.18/docker-compose.yml @@ -0,0 +1,11 @@ +version: '3.9' +services: + app: + image: "epicmorg/confluence:7.19.18" + build: + context: . + app-jdk11: + image: "epicmorg/confluence:7.19.18-jdk11" + build: + context: . + dockerfile: Dockerfile.jdk11 diff --git a/linux/ecosystem/atlassian/confluence/7/7.19.18/entrypoint.sh b/linux/ecosystem/atlassian/confluence/7/7.19.18/entrypoint.sh new file mode 100755 index 000000000..250fc031a --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/7/7.19.18/entrypoint.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -euo pipefail + +export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") +export JRE_HOME="$JAVA_HOME/jre" +export JAVA_BINARY="$JRE_HOME/bin/java" +export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') + + +# Setup Catalina Opts +: ${CATALINA_CONNECTOR_PROXYNAME:=} +: ${CATALINA_CONNECTOR_PROXYPORT:=} +: ${CATALINA_CONNECTOR_SCHEME:=http} +: ${CATALINA_CONNECTOR_SECURE:=false} + +: ${CATALINA_OPTS:=} + +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" + +export CATALINA_OPTS + + +# Start Confluence as the correct user +if [ "${UID}" -eq 0 ]; then + echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" + PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${CONFLUENCE_HOME}") + EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 + if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then + chmod -R 700 "${CONFLUENCE_HOME}" && + chown -R "${RUN_USER}:${RUN_GROUP}" "${CONFLUENCE_HOME}" + fi + # Now drop privileges + exec su -s /bin/bash "${RUN_USER}" -c "$CONFLUENCE_INSTALL_DIR/bin/start-confluence.sh $@" +else + exec "$CONFLUENCE_INSTALL_DIR/bin/start-confluence.sh" "$@" +fi diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/.env b/linux/ecosystem/atlassian/confluence/8/8.7.2/.env new file mode 100644 index 000000000..2b8bcc5c6 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/.env @@ -0,0 +1,2 @@ +RELEASE=8.7.2 +DOWNLOAD_URL=http://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${RELEASE}.tar.gz diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile new file mode 100644 index 000000000..7612b3f12 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile @@ -0,0 +1,45 @@ +FROM epicmorg/debian:bullseye-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] +WORKDIR $CONFLUENCE_HOME + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml && \ + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk11 b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk11 new file mode 100644 index 000000000..1a2cd4210 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk11 @@ -0,0 +1,46 @@ +FROM epicmorg/debian:bullseye-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] +WORKDIR $CONFLUENCE_HOME + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk17 b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk17 new file mode 100644 index 000000000..f362b2321 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/Dockerfile.jdk17 @@ -0,0 +1,46 @@ +FROM epicmorg/debian:bullseye-jdk17 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/doc/confluence-home-and-other-important-directories-590259707.html +ENV CONFLUENCE_HOME /var/atlassian/application-data/confluence +ENV CONFLUENCE_INSTALL_DIR /opt/atlassian/confluence + +VOLUME ["${CONFLUENCE_HOME}"] +WORKDIR $CONFLUENCE_HOME + +# Expose HTTP and Synchrony ports +EXPOSE 8090 +EXPOSE 8091 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${CONFLUENCE_INSTALL_DIR} \ + && curl -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$CONFLUENCE_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${CONFLUENCE_INSTALL_DIR}/ \ + && sed -i -e 's/-Xms\([0-9]\+[kmg]\) -Xmx\([0-9]\+[kmg]\)/-Xms\${JVM_MINIMUM_MEMORY:=\1} -Xmx\${JVM_MAXIMUM_MEMORY:=\2} \${JVM_SUPPORT_RECOMMENDED_ARGS} -Dconfluence.home=\${CONFLUENCE_HOME}/g' ${CONFLUENCE_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/port="8090"/port="8090" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${CONFLUENCE_INSTALL_DIR}/conf/server.xml && \ + + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +COPY entrypoint.sh /entrypoint.sh +COPY . /tmp diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/Makefile b/linux/ecosystem/atlassian/confluence/8/8.7.2/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/docker-compose.yml b/linux/ecosystem/atlassian/confluence/8/8.7.2/docker-compose.yml new file mode 100644 index 000000000..732168c9a --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/docker-compose.yml @@ -0,0 +1,25 @@ +version: '3.9' +services: + app: + image: "epicmorg/confluence:${RELEASE}" + build: + context: . + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} + app-jdk11: + image: "epicmorg/confluence:${RELEASE}-jdk11" + build: + context: . + dockerfile: Dockerfile.jdk11 + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} + app-jdk17: + image: "epicmorg/confluence:${RELEASE}-jdk17" + build: + context: . + dockerfile: Dockerfile.jdk17 + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} diff --git a/linux/ecosystem/atlassian/confluence/8/8.7.2/entrypoint.sh b/linux/ecosystem/atlassian/confluence/8/8.7.2/entrypoint.sh new file mode 100755 index 000000000..250fc031a --- /dev/null +++ b/linux/ecosystem/atlassian/confluence/8/8.7.2/entrypoint.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -euo pipefail + +export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") +export JRE_HOME="$JAVA_HOME/jre" +export JAVA_BINARY="$JRE_HOME/bin/java" +export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') + + +# Setup Catalina Opts +: ${CATALINA_CONNECTOR_PROXYNAME:=} +: ${CATALINA_CONNECTOR_PROXYPORT:=} +: ${CATALINA_CONNECTOR_SCHEME:=http} +: ${CATALINA_CONNECTOR_SECURE:=false} + +: ${CATALINA_OPTS:=} + +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" + +export CATALINA_OPTS + + +# Start Confluence as the correct user +if [ "${UID}" -eq 0 ]; then + echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" + PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${CONFLUENCE_HOME}") + EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 + if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then + chmod -R 700 "${CONFLUENCE_HOME}" && + chown -R "${RUN_USER}:${RUN_GROUP}" "${CONFLUENCE_HOME}" + fi + # Now drop privileges + exec su -s /bin/bash "${RUN_USER}" -c "$CONFLUENCE_INSTALL_DIR/bin/start-confluence.sh $@" +else + exec "$CONFLUENCE_INSTALL_DIR/bin/start-confluence.sh" "$@" +fi diff --git a/linux/ecosystem/atlassian/confluence/latest/Dockerfile b/linux/ecosystem/atlassian/confluence/latest/Dockerfile index 2d5bb0ef6..559ea8fa8 100644 --- a/linux/ecosystem/atlassian/confluence/latest/Dockerfile +++ b/linux/ecosystem/atlassian/confluence/latest/Dockerfile @@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG CONFLUENCE_VERSION=8.6.1 +ARG CONFLUENCE_VERSION=8.7.2 ARG DOWNLOAD_URL=https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk11 b/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk11 index 70cc1030c..aaca5d364 100644 --- a/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk11 +++ b/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk11 @@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG CONFLUENCE_VERSION=8.6.1 +ARG CONFLUENCE_VERSION=8.7.2 ARG DOWNLOAD_URL=https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk17 b/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk17 index fb9ef2c38..18ce6a2db 100644 --- a/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk17 +++ b/linux/ecosystem/atlassian/confluence/latest/Dockerfile.jdk17 @@ -5,7 +5,7 @@ ARG DEBIAN_FRONTEND=noninteractive ################################################################## # ARGuments ################################################################## -ARG CONFLUENCE_VERSION=8.6.1 +ARG CONFLUENCE_VERSION=8.7.2 ARG DOWNLOAD_URL=https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-${CONFLUENCE_VERSION}.tar.gz ################################################################## diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/.env b/linux/ecosystem/atlassian/jira/9/9.12.2/.env new file mode 100644 index 000000000..ba7f96020 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/.env @@ -0,0 +1,2 @@ +RELEASE=9.12.2 +DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${RELEASE}.tar.gz \ No newline at end of file diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile new file mode 100644 index 000000000..61ef4a144 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile @@ -0,0 +1,52 @@ +FROM epicmorg/debian:bookworm-jdk8 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## + +#configured by dockerfile / .ENV +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files +ENV JIRA_HOME /var/atlassian/application-data/jira +ENV JIRA_INSTALL_DIR /opt/atlassian/jira + +VOLUME ["${JIRA_HOME}"] +WORKDIR $JIRA_HOME + +# Expose HTTP port +EXPOSE 8080 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${JIRA_INSTALL_DIR} \ + && curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ + && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ + && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + + +COPY entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +#COPY . /tmp diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk11 b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk11 new file mode 100644 index 000000000..00fe636f5 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk11 @@ -0,0 +1,51 @@ +FROM epicmorg/debian:bookworm-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## + +#configured by dockerfile / .ENV +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files +ENV JIRA_HOME /var/atlassian/application-data/jira +ENV JIRA_INSTALL_DIR /opt/atlassian/jira + +VOLUME ["${JIRA_HOME}"] +WORKDIR $JIRA_HOME + +# Expose HTTP port +EXPOSE 8080 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${JIRA_INSTALL_DIR} \ + && curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ + && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ + && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +COPY entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +#COPY . /tmp diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk17 b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk17 new file mode 100644 index 000000000..00fe636f5 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/Dockerfile.jdk17 @@ -0,0 +1,51 @@ +FROM epicmorg/debian:bookworm-jdk11 +LABEL maintainer="Atlassian Jira Server Team; EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +################################################################## +# ARGuments +################################################################## + +#configured by dockerfile / .ENV +ARG RELEASE +ARG DOWNLOAD_URL + +################################################################## +# Setup +################################################################## +ENV RUN_USER daemon +ENV RUN_GROUP daemon + +# https://confluence.atlassian.com/display/JSERVERM/Important+directories+and+files +ENV JIRA_HOME /var/atlassian/application-data/jira +ENV JIRA_INSTALL_DIR /opt/atlassian/jira + +VOLUME ["${JIRA_HOME}"] +WORKDIR $JIRA_HOME + +# Expose HTTP port +EXPOSE 8080 + +################################################################## +# Installing +################################################################## +RUN mkdir -p ${JIRA_INSTALL_DIR} \ + && curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" -L ${DOWNLOAD_URL} | tar -xz --strip-components=1 -C "$JIRA_INSTALL_DIR" \ + && chown -R ${RUN_USER}:${RUN_GROUP} ${JIRA_INSTALL_DIR}/ \ + && sed -i -e 's/^JVM_SUPPORT_RECOMMENDED_ARGS=""$/: \${JVM_SUPPORT_RECOMMENDED_ARGS:=""}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/^JVM_\(.*\)_MEMORY="\(.*\)"$/: \${JVM_\1_MEMORY:=\2}/g' ${JIRA_INSTALL_DIR}/bin/setenv.sh \ + && sed -i -e 's/grep "java version"/grep -E "(openjdk|java) version"/g' ${JIRA_INSTALL_DIR}/bin/check-java.sh \ + && sed -i -e 's/port="8080"/port="8080" secure="${catalinaConnectorSecure}" scheme="${catalinaConnectorScheme}" proxyName="${catalinaConnectorProxyName}" proxyPort="${catalinaConnectorProxyPort}"/' ${JIRA_INSTALL_DIR}/conf/server.xml && \ + update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \ + apt clean -y && \ + apt autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +COPY entrypoint.sh /entrypoint.sh +RUN chmod +x /entrypoint.sh + +CMD ["/entrypoint.sh", "-fg"] +ENTRYPOINT ["/usr/bin/tini", "--"] +#COPY . /tmp diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/Makefile b/linux/ecosystem/atlassian/jira/9/9.12.2/Makefile new file mode 100644 index 000000000..9ef622aa9 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/Makefile @@ -0,0 +1,19 @@ +all: app + +app: + make build + make deploy + make clean + +build: + docker-compose build --compress --parallel --progress plain + +deploy: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/docker-compose.yml b/linux/ecosystem/atlassian/jira/9/9.12.2/docker-compose.yml new file mode 100644 index 000000000..a08cce169 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/docker-compose.yml @@ -0,0 +1,25 @@ +version: '3.9' +services: + app: + image: "epicmorg/jira:${RELEASE}" + build: + context: . + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} + app-jdk11: + image: "epicmorg/jira:${RELEASE}-jdk11" + build: + context: . + dockerfile: Dockerfile.jdk11 + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} + app-jdk17: + image: "epicmorg/jira:${RELEASE}-jdk17" + build: + context: . + dockerfile: Dockerfile.jdk17 + args: + RELEASE: ${RELEASE} + DOWNLOAD_URL: ${DOWNLOAD_URL} diff --git a/linux/ecosystem/atlassian/jira/9/9.12.2/entrypoint.sh b/linux/ecosystem/atlassian/jira/9/9.12.2/entrypoint.sh new file mode 100755 index 000000000..50ee4ecd1 --- /dev/null +++ b/linux/ecosystem/atlassian/jira/9/9.12.2/entrypoint.sh @@ -0,0 +1,89 @@ +#!/bin/bash +set -euo pipefail + +export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::") +export JRE_HOME="$JAVA_HOME/jre" +export JAVA_BINARY="$JRE_HOME/bin/java" +export JAVA_VERSION=$("$JAVA_BINARY" -version 2>&1 | awk -F '"' '/version/ {print $2}') + +# Setup Catalina Opts +: ${CATALINA_CONNECTOR_PROXYNAME:=} +: ${CATALINA_CONNECTOR_PROXYPORT:=} +: ${CATALINA_CONNECTOR_SCHEME:=http} +: ${CATALINA_CONNECTOR_SECURE:=false} + +: ${CATALINA_OPTS:=} + +: ${JAVA_OPTS:=} + +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyName=${CATALINA_CONNECTOR_PROXYNAME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorProxyPort=${CATALINA_CONNECTOR_PROXYPORT}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorScheme=${CATALINA_CONNECTOR_SCHEME}" +CATALINA_OPTS="${CATALINA_OPTS} -DcatalinaConnectorSecure=${CATALINA_CONNECTOR_SECURE}" + +export JAVA_OPTS="${JAVA_OPTS} ${CATALINA_OPTS}" + +# Setup Data Center configuration +if [ ! -f "/etc/container_id" ]; then + uuidgen > /etc/container_id +fi +CONTAINER_ID=$(cat /etc/container_id) +CONTAINER_SHORT_ID=${CONTAINER_ID::8} + +: ${CLUSTERED:=false} +: ${JIRA_NODE_ID:=jira_node_${CONTAINER_SHORT_ID}} +: ${JIRA_SHARED_HOME:=${JIRA_HOME}/shared} +: ${EHCACHE_PEER_DISCOVERY:=} +: ${EHCACHE_LISTENER_HOSTNAME:=} +: ${EHCACHE_LISTENER_PORT:=} +: ${EHCACHE_LISTENER_SOCKETTIMEOUTMILLIS:=} +: ${EHCACHE_MULTICAST_ADDRESS:=} +: ${EHCACHE_MULTICAST_PORT:=} +: ${EHCACHE_MULTICAST_TIMETOLIVE:=} +: ${EHCACHE_MULTICAST_HOSTNAME:=} + +# Cleanly set/unset values in cluster.properties +function set_cluster_property { + if [ -z $2 ]; then + if [ -f "${JIRA_HOME}/cluster.properties" ]; then + sed -i -e "/^${1}/d" "${JIRA_HOME}/cluster.properties" + fi + return + fi + if [ ! -f "${JIRA_HOME}/cluster.properties" ]; then + echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" + elif grep "^${1}" "${JIRA_HOME}/cluster.properties"; then + sed -i -e "s#^${1}=.*#${1}=${2}#g" "${JIRA_HOME}/cluster.properties" + else + echo "${1}=${2}" >> "${JIRA_HOME}/cluster.properties" + fi +} + +if [ "${CLUSTERED}" == "true" ]; then + set_cluster_property "jira.node.id" "${JIRA_NODE_ID}" + set_cluster_property "jira.shared.home" "${JIRA_SHARED_HOME}" + set_cluster_property "ehcache.peer.discovery" "${EHCACHE_PEER_DISCOVERY}" + set_cluster_property "ehcache.listener.hostName" "${EHCACHE_LISTENER_HOSTNAME}" + set_cluster_property "ehcache.listener.port" "${EHCACHE_LISTENER_PORT}" + set_cluster_property "ehcache.listener.socketTimeoutMillis" "${EHCACHE_LISTENER_PORT}" + set_cluster_property "ehcache.multicast.address" "${EHCACHE_MULTICAST_ADDRESS}" + set_cluster_property "ehcache.multicast.port" "${EHCACHE_MULTICAST_PORT}" + set_cluster_property "ehcache.multicast.timeToLive" "${EHCACHE_MULTICAST_TIMETOLIVE}" + set_cluster_property "ehcache.multicast.hostName" "${EHCACHE_MULTICAST_HOSTNAME}" +fi + + +# Start Jira as the correct user +if [ "${UID}" -eq 0 ]; then + echo "User is currently root. Will change directory ownership to ${RUN_USER}:${RUN_GROUP}, then downgrade permission to ${RUN_USER}" + PERMISSIONS_SIGNATURE=$(stat -c "%u:%U:%a" "${JIRA_HOME}") + EXPECTED_PERMISSIONS=$(id -u ${RUN_USER}):${RUN_USER}:700 + if [ "${PERMISSIONS_SIGNATURE}" != "${EXPECTED_PERMISSIONS}" ]; then + chmod -R 700 "${JIRA_HOME}" && + chown -R "${RUN_USER}:${RUN_GROUP}" "${JIRA_HOME}" + fi + # Now drop privileges + exec su -s /bin/bash "${RUN_USER}" -c "$JIRA_INSTALL_DIR/bin/start-jira.sh $@" +else + exec "$JIRA_INSTALL_DIR/bin/start-jira.sh" "$@" +fi diff --git a/linux/ecosystem/atlassian/jira/latest/.env b/linux/ecosystem/atlassian/jira/latest/.env index 89951be8e..7cf8fb455 100644 --- a/linux/ecosystem/atlassian/jira/latest/.env +++ b/linux/ecosystem/atlassian/jira/latest/.env @@ -1,2 +1,2 @@ -RELEASE=9.10.0 +RELEASE=9.12.2 DOWNLOAD_URL=https://www.atlassian.com/software/jira/downloads/binary/atlassian-jira-software-${RELEASE}.tar.gz