vscode rework + bugfixes sync

This commit is contained in:
STAM 2024-08-25 21:24:53 +03:00
commit 907c072298
No known key found for this signature in database
GPG Key ID: 711526C6938897F1
577 changed files with 3738 additions and 13223 deletions

View File

@ -5,12 +5,12 @@ on:
# branches:
# - 'master'
schedule:
- cron: '0 0 * * 2,4,6'
- cron: '0 02 * * 2,4,6'
jobs:
build-images:
name: Build EpicMorg Advanced Images
name: EpicMorg Advanced Images
runs-on: ubuntu-24.04
steps:
@ -24,21 +24,15 @@ jobs:
- name: Install requirements.txt
run: make pip
##################################################################################
- name: "Build and Deploy Advanced Mattermost Images:"
run: cd linux/advanced/mattermost && pwd && make build && make deploy
- name: "Build and Deploy Advanced Teamcity Server Image:"
run: cd linux/advanced/teamcity/server && pwd && make build && make deploy
- name: "Build and Deploy Advanced Sentry Image:"
run: cd linux/advanced/sentry/latest && pwd && make build && make deploy
# - name: "Build and Deploy Advanced Redash Images:"
# run: cd linux/advanced/redash && pwd && make sync && make patch && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################

View File

@ -38,21 +38,29 @@ jobs:
- name: "Build and Deploy Advanced Vscode Server Android Images:"
run: cd linux/advanced/vscode-server/android && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Advanced Vscode Server NodeJS Images:"
run: cd linux/advanced/vscode-server/nodejs && pwd && make build && make deploy
- name: "Build and Deploy Advanced Vscode Server CPP Images:"
run: cd linux/advanced/vscode-server/cpp && pwd && make build && make deploy
- name: "Build and Deploy Advanced Vscode Server DevOps Images:"
run: cd linux/advanced/vscode-server/devops && pwd && make build && make deploy
- name: "Build and Deploy Advanced Vscode Server Docker Images:"
run: cd linux/advanced/vscode-server/docker && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Advanced Vscode Server dotnet Images:"
run: cd linux/advanced/vscode-server/dotnet && pwd && make build && make deploy
@ -67,3 +75,4 @@ jobs:
- name: Cleanup
run: make docker-clean
##################################################################################

View File

@ -91,30 +91,6 @@ jobs:
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 6 jdk20 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 jdk21 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 jdk22 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 6 NodeJS LTS Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/lts && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS Current Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/current && pwd && make build && make deploy
##################################################################################
- name: "Build and Deploy Debian 6 NodeJS 0.12 Image:"
@ -136,7 +112,7 @@ jobs:
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node8 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 9 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node8 && pwd && make build && make deploy
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node9 && pwd && make build && make deploy
##################################################################################
@ -151,51 +127,9 @@ jobs:
- name: "Build and Deploy Debian 6 NodeJS 11 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node11 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 12 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node12 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 13 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node13 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 14 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node14 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 15 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node15 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 6 NodeJS 16 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node16 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 17 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node17 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 18 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node18 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 19 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node19 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 20 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 21 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 6 NodeJS 22 Image:"
run: cd linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################

View File

@ -90,35 +90,6 @@ jobs:
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 7 jdk20 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 jdk21 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 jdk22 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 7 NodeJS LTS Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/lts && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS Current Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/current && pwd && make build && make deploy
##################################################################################
- name: "Build and Deploy Debian 7 NodeJS 0.12 Image:"
@ -155,51 +126,9 @@ jobs:
- name: "Build and Deploy Debian 7 NodeJS 11 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node11 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 12 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node12 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 13 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node13 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 14 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node14 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 15 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node15 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 7 NodeJS 16 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node16 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 17 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node17 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 18 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node18 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 19 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node19 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 20 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 21 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 7 NodeJS 22 Image:"
run: cd linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################

View File

@ -106,14 +106,6 @@ jobs:
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 8 NodeJS LTS Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/lts && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS Current Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/current && pwd && make build && make deploy
##################################################################################
- name: "Build and Deploy Debian 8 NodeJS 0.12 Image:"
@ -175,21 +167,6 @@ jobs:
- name: "Build and Deploy Debian 8 NodeJS 17 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node17 && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS 18 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node18 && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS 19 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node19 && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS 20 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS 21 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 8 NodeJS 22 Image:"
run: cd linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup

View File

@ -104,14 +104,6 @@ jobs:
- name: Cleanup
run: make docker-clean
##################################################################################
- name: "Build and Deploy Debian 9 NodeJS LTS Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/lts && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS Current Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/current && pwd && make build && make deploy
##################################################################################
- name: "Build and Deploy Debian 9 NodeJS 0.12 Image:"
@ -173,25 +165,9 @@ jobs:
- name: "Build and Deploy Debian 9 NodeJS 17 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node17 && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS 18 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node18 && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS 19 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node19 && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS 20 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node20 && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS 21 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node21 && pwd && make build && make deploy
- name: "Build and Deploy Debian 9 NodeJS 22 Image:"
run: cd linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node22 && pwd && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################

View File

@ -0,0 +1,38 @@
name: EpicMorg experimental Images
on:
# push:
# branches:
# - 'master'
schedule:
- cron: '0 01 * * 2,4,6'
jobs:
build-images:
name: EpicMorg Advanced Images
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Log into registry
run: echo "${{ secrets.DOCKER_SERVER_KEY }}" | docker login -u "${{ secrets.DOCKER_SERVER_LOGIN }}" --password-stdin
- name: Test Make
run: make
- name: Install requirements.txt
run: make pip
- name: "Build and Deploy Advanced Sentry Image:"
run: cd linux/experimental/sentry/latest && pwd && make build && make deploy
- name: "Build and Deploy Advanced Redash Images:"
run: cd linux/experimental/redash && pwd && make sync && make patch && make build && make deploy
##################################################################################
- name: Cleanup
run: make docker-clean
##################################################################################

4
.gitmodules vendored
View File

@ -1,3 +1,3 @@
[submodule "linux/advanced/redash/redash-repo"]
path = linux/advanced/redash/redash-repo
[submodule "linux/experimental/redash/redash-repo"]
path = linux/experimental/redash/redash-repo
url = https://github.com/getredash/redash.git

View File

@ -1,6 +1,10 @@
# Changelog
## 2024
* `aug`
* `sentry` and `redash` was set to `experimental` status bacause `ci` is not stable yet.
* reworked `teamcity:server` image.
* reworked `vscode` image.
* updated `monerod` and `p2pool` images to latest versions.
* updated `nodejs` and `jdk` images to latest versions.
* added extended `nodejs` and `jdk` base images support.
* added `dotnet` base images support.

View File

@ -1,4 +1,4 @@
VERSION = "2024.08.18"
VERSION = "2024.08.25"
AUTHOR = "EpicMorg"
MODIFIED = "STAM"
DOCKER_SCAN_SUGGEST = false
@ -22,6 +22,7 @@ help:
@echo "make chmod - find and fix chmod of '*.sh' and '*.py' files."
@echo "make advanced-images - build only advanced images."
@echo "make ecosystem-images - build ecosystem images."
@echo "make experimental-images - build experimental images."
@echo "make images - build all images."
ansible.gen.jira:
@ -74,6 +75,7 @@ docker-clean:
images:
make advanced-images
make ecosystem-images
make experimental-images
# make docker-clean
# make docker-clean
@ -81,38 +83,48 @@ advanced-images:
@echo "======================================="
@echo "===== Building third-party images ====="
@echo "======================================="
make advanced-redash-images
make advanced-mattermost-images
make advanced-nextcloud-latest-images
make advanced-teamcity-server-images
make advanced-nextcloud-all-images
make advanced-zabbix-images
make advanced-nextcloud-images
make advanced-nextcloud-patched-images
advanced-mattermost-images:
cd `pwd`/linux/advanced/mattermost && pwd && make build && make deploy
advanced-nextcloud-all-images:
make advanced-nextcloud-images
make advanced-nextcloud-patched-images
make advanced-nextcloud-latest-images
make advanced-nextcloud-patched-images
advanced-nextcloud-latest-images:
cd `pwd`/linux/advanced/nextcloud/pure/latest && pwd && make build && make deploy
advanced-nextcloud-patched-images:
cd `pwd`/linux/advanced/nextcloud/patched/latest && pwd && make build && make deploy
advanced-teamcity-server-images:
cd `pwd`/linux/advanced/teamcity/server && pwd && make build && make deploy
advanced-redash-images:
cd `pwd`/linux/advanced/redash && pwd && make sync && make patch && make build && make deploy
####################################################################################################################
advanced-sentry-images:
cd `pwd`/linux/advanced/sentry/latest && pwd && make sync && make patch && make build && make deploy
experimental-images:
@echo "======================================="
@echo "===== Building experimental images ====="
@echo "======================================="
make experimental-redash-images
make experimental-sentry-images
experimental-redash-images:
cd `pwd`/linux/experimental/redash && pwd && make sync && make patch && make build && make deploy
experimental-sentry-images:
cd `pwd`/linux/experimental/sentry/latest && pwd && make sync && make patch && make build && make deploy
####################################################################################################################
advanced-zabbix-images:
@echo "======================================="
@echo "===== Building Zabbix images ====="
@echo "======================================="
make advanced-zabbix-latest-images
make advanced-zabbix-30-images
make advanced-zabbix-40-images
@ -347,13 +359,8 @@ ecosystem-debian-squeeze-jdk-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/jdk/jdk22 && pwd && make build && make deploy
ecosystem-debian-wheezy-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/current && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/lts && pwd && make build && make deploy
ecosystem-debian-squeeze-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node0.12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node4 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node5 && pwd && make build && make deploy
@ -363,17 +370,6 @@ ecosystem-debian-wheezy-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node9 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node10 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node11 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node13 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node14 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node15 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node16 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/06-squeeze/nodejs/node22 && pwd && make build && make deploy
####################################################################################################################
@ -396,13 +392,8 @@ ecosystem-debian-wheezy-jdk-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/jdk/jdk22 && pwd && make build && make deploy
ecosystem-debian-wheezy-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/current && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/lts && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node0.12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node4 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node5 && pwd && make build && make deploy
@ -412,17 +403,6 @@ ecosystem-debian-wheezy-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node9 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node10 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node11 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node13 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node14 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node15 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node16 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/07-wheezy/nodejs/node22 && pwd && make build && make deploy
####################################################################################################################
@ -450,8 +430,6 @@ ecosystem-debian-jessie-jdk-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/jdk/jdk22 && pwd && make build && make deploy
ecosystem-debian-jessie-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/current && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/lts && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node0.12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node4 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node5 && pwd && make build && make deploy
@ -467,11 +445,6 @@ ecosystem-debian-jessie-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node15 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node16 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/08-jessie/nodejs/node22 && pwd && make build && make deploy
####################################################################################################################
@ -498,9 +471,7 @@ ecosystem-debian-stretch-jdk-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/jdk/jdk21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/jdk/jdk22 && pwd && make build && make deploy
ecosystem-debian-buster-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/current && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/lts && pwd && make build && make deploy
ecosystem-debian-stretch-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node0.12 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node4 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node5 && pwd && make build && make deploy
@ -516,11 +487,6 @@ ecosystem-debian-buster-nodejs-images:
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node15 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node16 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node17 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node18 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node19 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node20 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node21 && pwd && make build && make deploy
cd `pwd`/linux/ecosystem/epicmorg/debian/09-stretch/nodejs/node22 && pwd && make build && make deploy
####################################################################################################################
@ -1169,14 +1135,13 @@ ecosystem-nginx-images:
ecosystem-vscode-server-images:
cd `pwd`/linux/advanced/vscode-server/latest && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/devops && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/amxx/1.9 && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/amxx/1.10 && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/android && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/cpp && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/docker && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/dotnet-full && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/dotnet && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/dotnet-full && pwd && make build && make deploy
cd `pwd`/linux/advanced/vscode-server/mono && pwd && make build && make deploy
ecosystem-perforce-base-images:

View File

@ -41,7 +41,7 @@ A collection of docker images for production use. This repo contains 2 types of
| `Advanced` | `EcoSystem` |
|:-------------|:-------------|
| [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.advanced.vscode.images.yml?label=EpicMorg%20Advanced%20Images&logo=EpicMorg%20Advanced%20Images&style=flat-square)](https://github.com/EpicMorg/docker/blob/master/.github/workflows/epicmorg.advanced.images.yml) | [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.base.images.postgresql.yml?label=PostgreSQL%20Images&logo=PostgreSQL%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.base.images.postgresql.yml)
| [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.advanced.images.yml?label=EpicMorg%20Advanced%20Images&logo=EpicMorg%20Advanced%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.advanced.images.yml) | [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.base.images.postgresql.yml?label=PostgreSQL%20Images&logo=PostgreSQL%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.base.images.postgresql.yml)
| [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.advanced.nextcloud.images.yml?label=Nextcloud%20Images&logo=Nextcloud%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.advanced.nextcloud.images.yml) | [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.base.images.web.yml?label=Web%20Images&logo=Web%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.base.images.web.yml)
| [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.advanced.zabbix.images.yml?label=Zabbix%20Images&logo=Zabbix%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.advanced.zabbix.images.yml) | [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.base.images.testrail.yml?label=Testrail%20Images&logo=Testrail%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.base.images.testrail.yml)
| [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.advanced.vscode.images.yml?label=Vscode%20Server%20Images&logo=Vscode%20Server%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.advanced.vscode.images.yml) | [![GHA](https://img.shields.io/github/actions/workflow/status/EpicMorg/docker/epicmorg.base.images.teamcity.agents.yml?label=TeamCity%20Agents%20Images&logo=TeamCity%20Agents%20Images&style=flat-square)](https://github.com/EpicMorg/docker/actions/workflows/epicmorg.base.images.teamcity.agents.yml)

View File

@ -15,35 +15,132 @@ LABEL donate.crypto.RVN="R9t2LKeLhDSZBKNgUzSDZAossA3UqNvbV3"
LABEL donate.crypto.ZEC="t1KRMMmwMSZth8vJcd2ZHtPEFKTQ74yVixE"
LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4wQxoVfEJoW7LBhdQMP9cFhZQpJr6xvg7esHLdCbb1"
ARG DEBIAN_FRONTEND=noninteractive
##################################################################
# Set temp user for advanced setup
#################################################################
USER root
##################################################################
# editing sources list
# Create Base directory for various soft
##################################################################
COPY sources.list /etc/apt/sources.list
COPY locale.gen /etc/locale.gen
ENV EMG_LOCAL_BASE_DIR=/usr/local/share/epicmorg
RUN mkdir -p ${EMG_LOCAL_BASE_DIR}
COPY usr/local/epicmorg ${EMG_LOCAL_BASE_DIR}
##################################################################
# 7z official binary
# prepare system
##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
##################################################################
# ARGuments
##################################################################
ARG P4_VERSION=r24.1
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
ARG SZ_VERSION=7z2407
ARG SZ_BIN_DIR=${EMG_LOCAL_BASE_DIR}/7z/${SZ_VERSION}/bin
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
ARG SZ_TEMP=/tmp/${SZ_VERSION}-linux-x64.tar.xz
ARG LAZYGIT_VERSION=0.42.0
ARG LAZYGIT_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazygit/${LAZYGIT_VERSION}/bin
ARG LAZYGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LAZYGIT_VERSION}/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz
ARG LAZYGIT_TEMP=/tmp/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz
ARG LAZYCLI_VERSION=0.1.15
ARG LAZYCLI_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazycli/${LAZYCLI_VERSION}/bin
ARG LAZYCLI_DOWNLOAD_URL=https://github.com/jesseduffield/lazycli/releases/download/v${LAZYCLI_VERSION}/lazycli-linux-x64.tar.gz
ARG LAZYCLI_TEMP=/tmp/lazycli-linux-x64.tar.gz
ARG LAZYNPM_VERSION=0.1.4
ARG LAZYNPM_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazynpm/${LAZYNPM_VERSION}/bin
ARG LAZYNPM_DOWNLOAD_URL=https://github.com/jesseduffield/lazynpm/releases/download/v${LAZYNPM_VERSION}/lazynpm_${LAZYNPM_VERSION}_Linux_x86_64.tar.gz
ARG LAZYNPM_TEMP=/tmp/lazynpm_${LAZYNPM_VERSION}_Linux_x86_64.tar.gz
ARG LAZYDOCKER_VERSION=0.23.3
ARG LAZYDOCKER_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazydocker/${LAZYDOCKER_VERSION}/bin
ARG LAZYDOCKER_DOWNLOAD_URL=https://github.com/jesseduffield/lazydocker/releases/download/v${LAZYDOCKER_VERSION}/lazydocker_${LAZYDOCKER_VERSION}_Linux_x86_64.tar.gz
ARG LAZYDOCKER_TEMP=/tmp/lazydocker_${LAZYDOCKER_VERSION}_Linux_x86_64.tar.gz
ARG DUMB_INIT_VERSION=1.2.5
ARG DUMB_INIT_BIN_DIR=${EMG_LOCAL_BASE_DIR}/dumb-init/${DUMB_INIT_VERSION}/bin
ARG DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
ARG GOSU_VERSION=1.17
ARG GOSU_BIN_DIR=${EMG_LOCAL_BASE_DIR}/gosu/${GOSU_VERSION}/bin
ARG GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-amd64
##################################################################
# perforce client binary
# Additional settings
##################################################################
ARG P4_VERSION=r21.2
ARG P4_DOWNLOAD_URL=http://www.perforce.com/downloads/perforce/${P4_VERSION}/bin.linux26x86_64/p4
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# update lists
##################################################################
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get update
##################################################################
# sources list
##################################################################
RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/apt/sources.list.d/*.sources
RUN rm -rfv /etc/locale.gen
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen
COPY usr/local/share/ca-certificates /usr/local/share/ca-certificates
RUN apt-get update && \
apt-get upgrade -y && \
apt-get dist-upgrade -y
##################################################################
# installing utils
##################################################################
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
apt-transport-https \
apt-utils \
aptitude \
bash \
binutils \
ca-certificates \
@ -54,6 +151,7 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
curl \
git \
gnupg \
gnupg1 \
gnupg2 \
htop \
iftop \
@ -61,6 +159,7 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
jq \
kmod \
locales \
locate \
lsb-release \
lsof \
lynx \
@ -72,6 +171,7 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
openssl \
perl \
procps \
rar \
rsync \
screenfetch \
smbclient \
@ -82,56 +182,143 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
tini \
tmux \
tree \
unrar \
unrar-free \
unzip \
util-linux \
uuid-runtime \
wget \
zip
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN update-ca-certificates --fresh
##################################################################
# update locales
##################################################################
RUN locale-gen
##################################################################
# Install p4client
##################################################################
RUN mkdir -p ${P4_BIN_DIR}
ADD ${P4_DOWNLOAD_URL} ${P4_BIN_DIR}
RUN chmod +x ${P4_BIN_DIR}/p4
ENV PATH="${P4_BIN_DIR}:${PATH}"
##################################################################
# Install 7z official binary
##################################################################
RUN mkdir -p ${SZ_BIN_DIR}
ADD ${SZ_DOWNLOAD_URL} /tmp
RUN mkdir -p /usr/local/7z-${SZ_VERSION} && \
tar -xf ${SZ_TEMP} --directory /usr/local/7z-${SZ_VERSION} && \
chmod +x -R /usr/local/7z-${SZ_VERSION}&& \
ln -sfv /usr/local/7z-${SZ_VERSION}/7zz /usr/local/bin/7zz && \
ln -sfv /usr/local/7z-${SZ_VERSION}/7zzs /usr/local/bin/7zzs && \
7zz | head -4 && \
7z | head -4
RUN tar -xf ${SZ_TEMP} --directory ${SZ_BIN_DIR} && \
chmod +x ${SZ_BIN_DIR}/7zz && \
chmod +x ${SZ_BIN_DIR}/7zzs && \
find ${SZ_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name '7zz' ! -name '7zzs' -exec mv {} ${SZ_BIN_DIR}/.. \;
ENV PATH="${SZ_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
##################################################################
# Additional settings
# Install LazyGit official binary
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
RUN mkdir -p ${LAZYGIT_BIN_DIR}
ADD ${LAZYGIT_DOWNLOAD_URL} /tmp
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
RUN tar -xzf ${LAZYGIT_TEMP} --directory ${LAZYGIT_BIN_DIR} && \
chmod +x ${LAZYGIT_BIN_DIR}/lazygit && \
find ${LAZYGIT_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazygit' -exec mv {} ${LAZYGIT_BIN_DIR}/.. \;
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV PATH="${LAZYGIT_BIN_DIR}:${PATH}"
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Install LazyCLI official binary
##################################################################
RUN mkdir -p ${LAZYCLI_BIN_DIR}
ADD ${LAZYCLI_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYCLI_TEMP} --directory ${LAZYCLI_BIN_DIR} && \
chmod +x ${LAZYCLI_BIN_DIR}/lazycli && \
find ${LAZYCLI_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazycli' -exec mv {} ${LAZYCLI_BIN_DIR}/.. \;
ENV PATH="${LAZYCLI_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazycli $(lazycli --version) && \
echo "============================================="
##################################################################
# Install LazyNPM official binary
##################################################################
RUN mkdir -p ${LAZYNPM_BIN_DIR}
ADD ${LAZYNPM_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYNPM_TEMP} --directory ${LAZYNPM_BIN_DIR} && \
chmod +x ${LAZYNPM_BIN_DIR}/lazynpm && \
find ${LAZYNPM_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazynpm' -exec mv {} ${LAZYNPM_BIN_DIR}/.. \;
ENV PATH="${LAZYNPM_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazynpm $(lazynpm --version) && \
echo "============================================="
##################################################################
# Install LazyDocker official binary
##################################################################
RUN mkdir -p ${LAZYDOCKER_BIN_DIR}
ADD ${LAZYDOCKER_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYDOCKER_TEMP} --directory ${LAZYDOCKER_BIN_DIR} && \
chmod +x -R ${LAZYDOCKER_BIN_DIR}/lazydocker && \
find ${LAZYDOCKER_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazydocker' -exec mv {} ${LAZYDOCKER_BIN_DIR}/.. \;
ENV PATH="${LAZYDOCKER_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazydocker $(lazydocker --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN mkdir -p ${DUMB_INIT_BIN_DIR}
ADD ${DUMB_INIT_DOWNLOAD_URL} ${DUMB_INIT_BIN_DIR}
RUN mv -fv ${DUMB_INIT_BIN_DIR}/dumb-init_${DUMB_INIT_VERSION}_x86_64 ${DUMB_INIT_BIN_DIR}/dumb-init && \
chmod +x ${DUMB_INIT_BIN_DIR}/dumb-init
ENV PATH="${DUMB_INIT_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN mkdir -p ${GOSU_BIN_DIR}
ADD ${GOSU_DOWNLOAD_URL} ${GOSU_BIN_DIR}
RUN mv -fv ${GOSU_BIN_DIR}/gosu-amd64 ${GOSU_BIN_DIR}/gosu && \
chmod +x -R ${GOSU_BIN_DIR}/gosu
ENV PATH="${GOSU_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# Maven
@ -168,7 +355,70 @@ RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# Install p4client
# git fresh binary
##################################################################
ADD ${P4_DOWNLOAD_URL} /usr/local/bin
RUN chmod +x /usr/local/bin/p4
RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
git
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
##################################################################
# git-lfs official binary
##################################################################
RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/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 --no-install-recommends --no-install-suggests \
git \
git-lfs && \
git-lfs install --skip-repo
RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
##################################################################
# gh official binary
##################################################################
RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
gh
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
##################################################################
# update file db
##################################################################
RUN updatedb
##################################################################
# Set original user back
#################################################################
# tcuser 1000
#USER 1000

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -0,0 +1,19 @@
#------------------------------------------------------------------------------#
# OFFICIAL UBUNTU REPOS #
#------------------------------------------------------------------------------#
###### Ubuntu Main Repos
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal main multiverse restricted universe
###### Ubuntu Update Repos
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-backports main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-proposed main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-security main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-updates main multiverse restricted universe
###### Ubuntu Sorurce Repos
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-backports main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-proposed main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-security main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ focal-updates main multiverse restricted universe

View File

@ -0,0 +1,2 @@
deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/ubuntu/ focal main
deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/ubuntu/ focal main

View File

@ -0,0 +1,5 @@
# mainline
deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main
deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu focal main

View File

@ -0,0 +1,3 @@
# stable
deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main
deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu focal main

View File

@ -399,7 +399,7 @@ sgs_LT UTF-8
shn_MM UTF-8
shs_CA UTF-8
si_LK UTF-8
sid_ET UTF-8
trixie_ET UTF-8
sk_SK.UTF-8 UTF-8
sk_SK ISO-8859-2
sl_SI.UTF-8 UTF-8
@ -493,4 +493,3 @@ zh_TW.EUC-TW EUC-TW
zh_TW BIG5
zu_ZA.UTF-8 UTF-8
zu_ZA ISO-8859-1

View File

@ -1,17 +0,0 @@
#------------------------------------------------------------------------------#
# OFFICIAL UBUNTU REPOS #
#------------------------------------------------------------------------------#
###### Ubuntu Main Repos
deb [trusted=yes] http://mirror.yandex.ru/ubuntu/ focal main restricted universe multiverse
deb-src [trusted=yes] http://mirror.yandex.ru/ubuntu/ focal main restricted universe multiverse
###### Ubuntu Update Repos
deb [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
deb [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-proposed main restricted universe multiverse
deb [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
deb-src [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src [trusted=yes] http://ru.archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse

View File

@ -0,0 +1,48 @@
# About
Hello. This folder contains sub-folders with custom tools such as `gosu`, `dumb-init` and etc.
Some child images could install to this folder custom compilled products. Example: `nginx`, `php`, etc.
All directories that contains binaryes (`<bin\sbin>`) will be added to `$PATH`.
# Structure
pattern: `/usr/local/epicmorg/<program-name>/<version>/<..some data and files..>`
example:
```
/usr/local/epicmorg/
|-- 7z
| `-- 7z2407
| |-- History.txt
| |-- License.txt
| |-- MANUAL
| |-- bin
| `-- readme.txt
|-- dumb-init
| `-- 1.2.5
| `-- bin
|-- gosu
| `-- 1.17
| `-- bin
|-- lazycli
| `-- 0.1.15
| `-- bin
|-- lazydocker
| `-- 0.23.3
| |-- LICENSE
| |-- README.md
| `-- bin
|-- lazygit
| `-- 0.42.0
| |-- LICENSE
| |-- README.md
| `-- bin
|-- lazynpm
| `-- 0.1.4
| |-- LICENSE
| |-- README.md
| `-- bin
`-- p4
`-- r23.2
`-- bin
```

View File

@ -0,0 +1,33 @@
-----BEGIN CERTIFICATE-----
MIIFwjCCA6qgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwcDELMAkGA1UEBhMCUlUx
PzA9BgNVBAoMNlRoZSBNaW5pc3RyeSBvZiBEaWdpdGFsIERldmVsb3BtZW50IGFu
ZCBDb21tdW5pY2F0aW9uczEgMB4GA1UEAwwXUnVzc2lhbiBUcnVzdGVkIFJvb3Qg
Q0EwHhcNMjIwMzAxMjEwNDE1WhcNMzIwMjI3MjEwNDE1WjBwMQswCQYDVQQGEwJS
VTE/MD0GA1UECgw2VGhlIE1pbmlzdHJ5IG9mIERpZ2l0YWwgRGV2ZWxvcG1lbnQg
YW5kIENvbW11bmljYXRpb25zMSAwHgYDVQQDDBdSdXNzaWFuIFRydXN0ZWQgUm9v
dCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMfFOZ8pUAL3+r2n
qqE0Zp52selXsKGFYoG0GM5bwz1bSFtCt+AZQMhkWQheI3poZAToYJu69pHLKS6Q
XBiwBC1cvzYmUYKMYZC7jE5YhEU2bSL0mX7NaMxMDmH2/NwuOVRj8OImVa5s1F4U
zn4Kv3PFlDBjjSjXKVY9kmjUBsXQrIHeaqmUIsPIlNWUnimXS0I0abExqkbdrXbX
YwCOXhOO2pDUx3ckmJlCMUGacUTnylyQW2VsJIyIGA8V0xzdaeUXg0VZ6ZmNUr5Y
Ber/EAOLPb8NYpsAhJe2mXjMB/J9HNsoFMBFJ0lLOT/+dQvjbdRZoOT8eqJpWnVD
U+QL/qEZnz57N88OWM3rabJkRNdU/Z7x5SFIM9FrqtN8xewsiBWBI0K6XFuOBOTD
4V08o4TzJ8+Ccq5XlCUW2L48pZNCYuBDfBh7FxkB7qDgGDiaftEkZZfApRg2E+M9
G8wkNKTPLDc4wH0FDTijhgxR3Y4PiS1HL2Zhw7bD3CbslmEGgfnnZojNkJtcLeBH
BLa52/dSwNU4WWLubaYSiAmA9IUMX1/RpfpxOxd4Ykmhz97oFbUaDJFipIggx5sX
ePAlkTdWnv+RWBxlJwMQ25oEHmRguNYf4Zr/Rxr9cS93Y+mdXIZaBEE0KS2iLRqa
OiWBki9IMQU4phqPOBAaG7A+eP8PAgMBAAGjZjBkMB0GA1UdDgQWBBTh0YHlzlpf
BKrS6badZrHF+qwshzAfBgNVHSMEGDAWgBTh0YHlzlpfBKrS6badZrHF+qwshzAS
BgNVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsF
AAOCAgEAALIY1wkilt/urfEVM5vKzr6utOeDWCUczmWX/RX4ljpRdgF+5fAIS4vH
tmXkqpSCOVeWUrJV9QvZn6L227ZwuE15cWi8DCDal3Ue90WgAJJZMfTshN4OI8cq
W9E4EG9wglbEtMnObHlms8F3CHmrw3k6KmUkWGoa+/ENmcVl68u/cMRl1JbW2bM+
/3A+SAg2c6iPDlehczKx2oa95QW0SkPPWGuNA/CE8CpyANIhu9XFrj3RQ3EqeRcS
AQQod1RNuHpfETLU/A2gMmvn/w/sx7TB3W5BPs6rprOA37tutPq9u6FTZOcG1Oqj
C/B7yTqgI7rbyvox7DEXoX7rIiEqyNNUguTk/u3SZ4VXE2kmxdmSh3TQvybfbnXV
4JbCZVaqiZraqc7oZMnRoWrXRG3ztbnbes/9qhRGI7PqXqeKJBztxRTEVj8ONs1d
WN5szTwaPIvhkhO3CO5ErU2rVdUr89wKpNXbBODFKRtgxUT70YpmJ46VVaqdAhOZ
D9EUUn4YaeLaS8AjSF/h7UkjOibNc4qVDiPP+rkehFWM66PVnP1Msh93tc+taIfC
EYVMxjh8zNbFuoc7fzvvrFILLe7ifvEIUqSVIC/AzplM/Jxw7buXFeGP1qVCBEHq
391d/9RAfaZ12zkwFsl+IKwE/OZxW8AHa9i1p4GO0YSNuczzEm4=
-----END CERTIFICATE-----

View File

@ -0,0 +1,41 @@
-----BEGIN CERTIFICATE-----
MIIHQjCCBSqgAwIBAgICEAIwDQYJKoZIhvcNAQELBQAwcDELMAkGA1UEBhMCUlUx
PzA9BgNVBAoMNlRoZSBNaW5pc3RyeSBvZiBEaWdpdGFsIERldmVsb3BtZW50IGFu
ZCBDb21tdW5pY2F0aW9uczEgMB4GA1UEAwwXUnVzc2lhbiBUcnVzdGVkIFJvb3Qg
Q0EwHhcNMjIwMzAyMTEyNTE5WhcNMjcwMzA2MTEyNTE5WjBvMQswCQYDVQQGEwJS
VTE/MD0GA1UECgw2VGhlIE1pbmlzdHJ5IG9mIERpZ2l0YWwgRGV2ZWxvcG1lbnQg
YW5kIENvbW11bmljYXRpb25zMR8wHQYDVQQDDBZSdXNzaWFuIFRydXN0ZWQgU3Vi
IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA9YPqBKOk19NFymrE
wehzrhBEgT2atLezpduB24mQ7CiOa/HVpFCDRZzdxqlh8drku408/tTmWzlNH/br
HuQhZ/miWKOf35lpKzjyBd6TPM23uAfJvEOQ2/dnKGGJbsUo1/udKSvxQwVHpVv3
S80OlluKfhWPDEXQpgyFqIzPoxIQTLZ0deirZwMVHarZ5u8HqHetRuAtmO2ZDGQn
vVOJYAjls+Hiueq7Lj7Oce7CQsTwVZeP+XQx28PAaEZ3y6sQEt6rL06ddpSdoTMp
BnCqTbxW+eWMyjkIn6t9GBtUV45yB1EkHNnj2Ex4GwCiN9T84QQjKSr+8f0psGrZ
vPbCbQAwNFJjisLixnjlGPLKa5vOmNwIh/LAyUW5DjpkCx004LPDuqPpFsKXNKpa
L2Dm6uc0x4Jo5m+gUTVORB6hOSzWnWDj2GWfomLzzyjG81DRGFBpco/O93zecsIN
3SL2Ysjpq1zdoS01CMYxie//9zWvYwzI25/OZigtnpCIrcd2j1Y6dMUFQAzAtHE+
qsXflSL8HIS+IJEFIQobLlYhHkoE3avgNx5jlu+OLYe0dF0Ykx1PGNjbwqvTX37R
Cn32NMjlotW2QcGEZhDKj+3urZizp5xdTPZitA+aEjZM/Ni71VOdiOP0igbw6asZ
2fxdozZ1TnSSYNYvNATwthNmZysCAwEAAaOCAeUwggHhMBIGA1UdEwEB/wQIMAYB
Af8CAQAwDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBTR4XENCy2BTm6KSo9MI7NM
XqtpCzAfBgNVHSMEGDAWgBTh0YHlzlpfBKrS6badZrHF+qwshzCBxwYIKwYBBQUH
AQEEgbowgbcwOwYIKwYBBQUHMAKGL2h0dHA6Ly9yb3N0ZWxlY29tLnJ1L2NkcC9y
b290Y2Ffc3NsX3JzYTIwMjIuY3J0MDsGCCsGAQUFBzAChi9odHRwOi8vY29tcGFu
eS5ydC5ydS9jZHAvcm9vdGNhX3NzbF9yc2EyMDIyLmNydDA7BggrBgEFBQcwAoYv
aHR0cDovL3JlZXN0ci1wa2kucnUvY2RwL3Jvb3RjYV9zc2xfcnNhMjAyMi5jcnQw
gbAGA1UdHwSBqDCBpTA1oDOgMYYvaHR0cDovL3Jvc3RlbGVjb20ucnUvY2RwL3Jv
b3RjYV9zc2xfcnNhMjAyMi5jcmwwNaAzoDGGL2h0dHA6Ly9jb21wYW55LnJ0LnJ1
L2NkcC9yb290Y2Ffc3NsX3JzYTIwMjIuY3JsMDWgM6Axhi9odHRwOi8vcmVlc3Ry
LXBraS5ydS9jZHAvcm9vdGNhX3NzbF9yc2EyMDIyLmNybDANBgkqhkiG9w0BAQsF
AAOCAgEARBVzZls79AdiSCpar15dA5Hr/rrT4WbrOfzlpI+xrLeRPrUG6eUWIW4v
Sui1yx3iqGLCjPcKb+HOTwoRMbI6ytP/ndp3TlYua2advYBEhSvjs+4vDZNwXr/D
anbwIWdurZmViQRBDFebpkvnIvru/RpWud/5r624Wp8voZMRtj/cm6aI9LtvBfT9
cfzhOaexI/99c14dyiuk1+6QhdwKaCRTc1mdfNQmnfWNRbfWhWBlK3h4GGE9JK33
Gk8ZS8DMrkdAh0xby4xAQ/mSWAfWrBmfzlOqGyoB1U47WTOeqNbWkkoAP2ys94+s
Jg4NTkiDVtXRF6nr6fYi0bSOvOFg0IQrMXO2Y8gyg9ARdPJwKtvWX8VPADCYMiWH
h4n8bZokIrImVKLDQKHY4jCsND2HHdJfnrdL2YJw1qFskNO4cSNmZydw0Wkgjv9k
F+KxqrDKlB8MZu2Hclph6v/CZ0fQ9YuE8/lsHZ0Qc2HyiSMnvjgK5fDc3TD4fa8F
E8gMNurM+kV8PT8LNIM+4Zs+LKEV8nqRWBaxkIVJGekkVKO8xDBOG/aN62AZKHOe
GcyIdu7yNMMRihGVZCYr8rYiJoKiOzDqOkPkLOPdhtVlgnhowzHDxMHND/E2WA5p
ZHuNM/m0TXt2wTTPL7JH2YC0gPz/BvvSzjksgzU5rLbRyUKQkgU=
-----END CERTIFICATE-----

View File

@ -17,14 +17,23 @@ ENV ANDROID_SDK_ROOT=/usr/lib/android-sdk
##################################################################
# installing java11
##################################################################
RUN wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | apt-key add - && \
echo 'deb https://packages.adoptium.net/artifactory/deb focal main' > /etc/apt/sources.list.d/temurin-official.list && \
apt-get update && \
apt-get autoremove -y && \
apt-get install -y --allow-unauthenticated temurin-11-jdk && \
mkdir /usr/lib/jvm/temurin-11-jdk-amd64/jre && \
ln -s /usr/lib/jvm/temurin-11-jdk-amd64/bin/ /usr/lib/jvm/temurin-11-jdk-amd64/jre/bin && \
ln -s /usr/lib/jvm/temurin-11-jdk-amd64/lib/ /usr/lib/jvm/temurin-11-jdk-amd64/jre/lib && \
ARG K_JDK_MAJOR_VERSION=11
ARG K_JDK_FULL_VERSION=jdk-11.0.24
ARG K_JDK_VERSION=11.0.24
ARG K_JDK_BUILD_VERSION=8
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV JRE_HOME=${JAVA_HOME}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java11
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
ln -sfv ${JAVA_HOME} /usr/jre && \
java -version
##################################################################
@ -32,14 +41,14 @@ RUN wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | a
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -47,14 +56,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
@ -106,21 +115,22 @@ RUN apt-get update && \
android-sdk-platform-tools \
adb fastboot f2fs-tools e2fsprogs libsqlite3-0 sqlite3
# Activate android sdk
##################################################################
# Activate Android SDK
##################################################################
RUN echo "24333f8a63b6825ea9c5514f83c2829b004d1fee" > /usr/lib/android-sdk/licenses/android-sdk-license
##################################################################
# cleaninig up
# cleanup
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
##################################################################
# update file db
##################################################################
RUN updatedb

View File

@ -1,22 +1,39 @@
FROM epicmorg/debian:squeeze
################################################################################
# https://github.com/linuxserver/docker-code-server/pkgs/container/code-server
################################################################################
FROM epicmorg/vscode-server:latest
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=20
ARG K_JDK_FULL_VERSION=jdk-20.0.2
ARG K_JDK_VERSION=20.0.2
##################################################################
# ARGuments
##################################################################
ENV BuildDocker true
ENV ANDROID_HOME=/usr/lib/android-sdk
ENV ANDROID_SDK_ROOT=/usr/lib/android-sdk
##################################################################
# installing java17
##################################################################
ARG K_JDK_MAJOR_VERSION=17
ARG K_JDK_FULL_VERSION=jdk-17.0.11
ARG K_JDK_VERSION=17.0.11
ARG K_JDK_BUILD_VERSION=9
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV JRE_HOME=${JAVA_HOME}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java20
# installing java17
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
ln -sfv ${JAVA_HOME} /usr/jre && \
java -version
##################################################################
@ -24,14 +41,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +56,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
@ -60,7 +77,7 @@ ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
@ -68,7 +85,7 @@ RUN mvn -v
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
@ -76,7 +93,7 @@ RUN gradle -v
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
@ -87,6 +104,22 @@ ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# Android SDK
##################################################################
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
android-sdk \
android-sdk-build-tools \
android-sdk-platform-tools-common \
android-sdk-platform-tools \
adb fastboot f2fs-tools e2fsprogs libsqlite3-0 sqlite3
##################################################################
# Activate Android SDK
##################################################################
RUN echo "24333f8a63b6825ea9c5514f83c2829b004d1fee" > /usr/lib/android-sdk/licenses/android-sdk-license
##################################################################
# cleanup
##################################################################
@ -97,4 +130,7 @@ RUN echo "clean up" && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
##################################################################
# update file db
##################################################################
RUN updatedb

View File

@ -1,22 +1,39 @@
FROM epicmorg/debian:squeeze-develop
################################################################################
# https://github.com/linuxserver/docker-code-server/pkgs/container/code-server
################################################################################
FROM epicmorg/vscode-server:latest
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=21
ARG K_JDK_FULL_VERSION=jdk-21.0.4
ARG K_JDK_VERSION=21.0.4
ARG K_JDK_BUILD_VERSION=7
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
##################################################################
# ARGuments
##################################################################
ENV BuildDocker true
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV ANDROID_HOME=/usr/lib/android-sdk
ENV ANDROID_SDK_ROOT=/usr/lib/android-sdk
##################################################################
# installing java8
##################################################################
ARG K_JDK_MAJOR_VERSION=8
ARG K_JDK_FULL_VERSION=jdk8u422
ARG K_JDK_VERSION=8u422
ARG K_JDK_BUILD_VERSION=b05
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}-${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}-${K_JDK_BUILD_VERSION}
ENV JRE_HOME=${JAVA_HOME}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java21
# installing java8
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
ln -sfv ${JAVA_HOME} /usr/jre && \
java -version
##################################################################
@ -24,14 +41,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +56,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
@ -60,7 +77,7 @@ ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
@ -68,7 +85,7 @@ RUN mvn -v
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
@ -76,7 +93,7 @@ RUN gradle -v
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
@ -87,6 +104,22 @@ ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# Android SDK
##################################################################
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
android-sdk \
android-sdk-build-tools \
android-sdk-platform-tools-common \
android-sdk-platform-tools \
adb fastboot f2fs-tools e2fsprogs libsqlite3-0 sqlite3
##################################################################
# Activate Android SDK
##################################################################
RUN echo "24333f8a63b6825ea9c5514f83c2829b004d1fee" > /usr/lib/android-sdk/licenses/android-sdk-license
##################################################################
# cleanup
##################################################################
@ -97,4 +130,7 @@ RUN echo "clean up" && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
##################################################################
# update file db
##################################################################
RUN updatedb

View File

@ -4,3 +4,18 @@ services:
image: "epicmorg/vscode-server:android"
build:
context: .
app-jdk11:
image: "epicmorg/vscode-server:android-jdk11"
build:
context: .
app-jdk8:
image: "epicmorg/vscode-server:android-jdk8"
build:
context: .
dockerfile: ./Dockerfile.jdk8
app-jdk17:
image: "epicmorg/debian:bookworm-develop-jdk17"
build:
context: .
dockerfile: ./Dockerfile.jdk17

View File

@ -1,312 +0,0 @@
#!/bin/bash
#
# Copyright 2017 Marco Vermeulen
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# install:- channel: stable; cliVersion: 5.15.0; cliNativeVersion: NA; api: https://api.sdkman.io/2
# Global variables
SDKMAN_SERVICE="https://api.sdkman.io/2"
SDKMAN_VERSION="5.15.0"
SDKMAN_PLATFORM=$(uname)
if [ -z "$SDKMAN_DIR" ]; then
SDKMAN_DIR="$HOME/.sdkman"
SDKMAN_DIR_RAW='$HOME/.sdkman'
else
SDKMAN_DIR_RAW="$SDKMAN_DIR"
fi
# Local variables
sdkman_tmp_folder="${SDKMAN_DIR}/tmp"
sdkman_zip_file="${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}.zip"
sdkman_zip_base_folder="${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}"
sdkman_ext_folder="${SDKMAN_DIR}/ext"
sdkman_etc_folder="${SDKMAN_DIR}/etc"
sdkman_var_folder="${SDKMAN_DIR}/var"
sdkman_archives_folder="${SDKMAN_DIR}/archives"
sdkman_candidates_folder="${SDKMAN_DIR}/candidates"
sdkman_config_file="${sdkman_etc_folder}/config"
sdkman_bash_profile="${HOME}/.bash_profile"
sdkman_profile="${HOME}/.profile"
sdkman_bashrc="${HOME}/.bashrc"
sdkman_zshrc="${ZDOTDIR:-${HOME}}/.zshrc"
sdkman_init_snippet=$( cat << EOF
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="$SDKMAN_DIR_RAW"
[[ -s "${SDKMAN_DIR_RAW}/bin/sdkman-init.sh" ]] && source "${SDKMAN_DIR_RAW}/bin/sdkman-init.sh"
EOF
)
# OS specific support (must be 'true' or 'false').
cygwin=false;
darwin=false;
solaris=false;
freebsd=false;
case "$(uname)" in
CYGWIN*)
cygwin=true
;;
Darwin*)
darwin=true
;;
SunOS*)
solaris=true
;;
FreeBSD*)
freebsd=true
esac
echo ''
echo ' -+syyyyyyys:'
echo ' `/yho:` -yd.'
echo ' `/yh/` +m.'
echo ' .oho. hy .`'
echo ' .sh/` :N` `-/o` `+dyyo:.'
echo ' .yh:` `M- `-/osysoym :hs` `-+sys: hhyssssssssy+'
echo ' .sh:` `N: ms/-`` yy.yh- -hy. `.N-````````+N.'
echo ' `od/` `N- -/oM- ddd+` `sd: hNNm -N:'
echo ' :do` .M. dMMM- `ms. /d+` `NMMs `do'
echo ' .yy- :N` ```mMMM. - -hy. /MMM: yh'
echo ' `+d+` `:/oo/` `-/osyh/ossssssdNMM` .sh: yMMN` /m.'
echo ' -dh- :ymNMMMMy `-/shmNm-`:N/-.`` `.sN /N- `NMMy .m/'
echo ' `oNs` -hysosmMMMMydmNmds+-.:ohm : sd` :MMM/ yy'
echo ' .hN+ /d: -MMMmhs/-.` .MMMh .ss+- `yy` sMMN` :N.'
echo ' :mN/ `N/ `o/-` :MMMo +MMMN- .` `ds mMMh do'
echo ' /NN/ `N+....--:/+oooosooo+:sMMM: hMMMM: `my .m+ -MMM+ :N.'
echo ' /NMo -+ooooo+/:-....`...:+hNMN. `NMMMd` .MM/ -m: oMMN. hs'
echo ' -NMd` :mm -MMMm- .s/ -MMm. /m- mMMd -N.'
echo ' `mMM/ .- /MMh. -dMo -MMMy od. .MMMs..---yh'
echo ' +MMM. sNo`.sNMM+ :MMMM/ sh`+MMMNmNm+++-'
echo ' mMMM- /--ohmMMM+ :MMMMm. `hyymmmdddo'
echo ' MMMMh. ```` `-+yy/`yMMM/ :MMMMMy -sm:.``..-:-.`'
echo ' dMMMMmo-.``````..-:/osyhddddho. `+shdh+. hMMM: :MmMMMM/ ./yy/` `:sys+/+sh/'
echo ' .dMMMMMMmdddddmmNMMMNNNNNMMMMMs sNdo- dMMM- `-/yd/MMMMm-:sy+. :hs- /N`'
echo ' `/ymNNNNNNNmmdys+/::----/dMMm: +m- mMMM+ohmo/.` sMMMMdo- .om: `sh'
echo ' `.-----+/.` `.-+hh/` `od. NMMNmds/ `mmy:` +mMy `:yy.'
echo ' /moyso+//+ossso:. .yy` `dy+:` .. :MMMN+---/oys:'
echo ' /+m: `.-:::-` /d+ +MMMMMMMNh:`'
echo ' +MN/ -yh. `+hddhy+.'
echo ' /MM+ .sh:'
echo ' :NMo -sh/'
echo ' -NMs `/yy:'
echo ' .NMy `:sh+.'
echo ' `mMm` ./yds-'
echo ' `dMMMmyo:-.````.-:oymNy:`'
echo ' +NMMMMMMMMMMMMMMMMms:`'
echo ' -+shmNMMMNmdy+:`'
echo ''
echo ''
echo ' Now attempting installation...'
echo ''
echo ''
# Sanity checks
echo "Looking for a previous installation of SDKMAN..."
if [ -d "$SDKMAN_DIR" ]; then
echo "SDKMAN found."
echo ""
echo "======================================================================================================"
echo " You already have SDKMAN installed."
echo " SDKMAN was found at:"
echo ""
echo " ${SDKMAN_DIR}"
echo ""
echo " Please consider running the following if you need to upgrade."
echo ""
echo " $ sdk selfupdate force"
echo ""
echo "======================================================================================================"
echo ""
exit 0
fi
echo "Looking for unzip..."
if ! command -v unzip > /dev/null; then
echo "Not found."
echo "======================================================================================================"
echo " Please install unzip on your system using your favourite package manager."
echo ""
echo " Restart after installing unzip."
echo "======================================================================================================"
echo ""
exit 1
fi
echo "Looking for zip..."
if ! command -v zip > /dev/null; then
echo "Not found."
echo "======================================================================================================"
echo " Please install zip on your system using your favourite package manager."
echo ""
echo " Restart after installing zip."
echo "======================================================================================================"
echo ""
exit 1
fi
echo "Looking for curl..."
if ! command -v curl > /dev/null; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install curl on your system using your favourite package manager."
echo ""
echo " Restart after installing curl."
echo "======================================================================================================"
echo ""
exit 1
fi
if [[ "$solaris" == true ]]; then
echo "Looking for gsed..."
if [ -z $(which gsed) ]; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install gsed on your solaris system."
echo ""
echo " SDKMAN uses gsed extensively."
echo ""
echo " Restart after installing gsed."
echo "======================================================================================================"
echo ""
exit 1
fi
else
echo "Looking for sed..."
if [ -z $(command -v sed) ]; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install sed on your system using your favourite package manager."
echo ""
echo " Restart after installing sed."
echo "======================================================================================================"
echo ""
exit 1
fi
fi
echo "Installing SDKMAN scripts..."
# Create directory structure
echo "Create distribution directories..."
mkdir -p "$sdkman_tmp_folder"
mkdir -p "$sdkman_ext_folder"
mkdir -p "$sdkman_etc_folder"
mkdir -p "$sdkman_var_folder"
mkdir -p "$sdkman_archives_folder"
mkdir -p "$sdkman_candidates_folder"
echo "Getting available candidates..."
SDKMAN_CANDIDATES_CSV=$(curl -s "${SDKMAN_SERVICE}/candidates/all")
echo "$SDKMAN_CANDIDATES_CSV" > "${SDKMAN_DIR}/var/candidates"
echo "Prime the config file..."
touch "$sdkman_config_file"
echo "sdkman_auto_answer=false" >> "$sdkman_config_file"
if [ -z "$ZSH_VERSION" -a -z "$BASH_VERSION" ]; then
echo "sdkman_auto_complete=false" >> "$sdkman_config_file"
else
echo "sdkman_auto_complete=true" >> "$sdkman_config_file"
fi
echo "sdkman_auto_env=false" >> "$sdkman_config_file"
echo "sdkman_auto_update=true" >> "$sdkman_config_file"
echo "sdkman_beta_channel=false" >> "$sdkman_config_file"
echo "sdkman_checksum_enable=true" >> "$sdkman_config_file"
echo "sdkman_colour_enable=true" >> "$sdkman_config_file"
echo "sdkman_curl_connect_timeout=7" >> "$sdkman_config_file"
echo "sdkman_curl_max_time=10" >> "$sdkman_config_file"
echo "sdkman_debug_mode=false" >> "$sdkman_config_file"
echo "sdkman_insecure_ssl=false" >> "$sdkman_config_file"
echo "sdkman_rosetta2_compatible=false" >> "$sdkman_config_file"
echo "sdkman_selfupdate_feature=true" >> "$sdkman_config_file"
echo "Download script archive..."
curl --location --progress-bar "${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM}" > "$sdkman_zip_file"
ARCHIVE_OK=$(unzip -qt "$sdkman_zip_file" | grep 'No errors detected in compressed data')
if [[ -z "$ARCHIVE_OK" ]]; then
echo "Downloaded zip archive corrupt. Are you connected to the internet?"
echo ""
echo "If problems persist, please ask for help on our Slack:"
echo "* easy sign up: https://slack.sdkman.io/"
echo "* report on channel: https://sdkman.slack.com/app_redirect?channel=user-issues"
rm -rf "$SDKMAN_DIR"
exit 1
fi
echo "Extract script archive..."
if [[ "$cygwin" == 'true' ]]; then
echo "Cygwin detected - normalizing paths for unzip..."
sdkman_tmp_folder=$(cygpath -w "$sdkman_tmp_folder")
sdkman_zip_file=$(cygpath -w "$sdkman_zip_file")
sdkman_zip_base_folder=$(cygpath -w "$sdkman_zip_base_folder")
fi
unzip -qo "$sdkman_zip_file" -d "$sdkman_tmp_folder"
echo "Install scripts..."
mv "${sdkman_zip_base_folder}/"* "$SDKMAN_DIR"
rm -rf "$sdkman_zip_base_folder"
echo "Set version to $SDKMAN_VERSION ..."
echo "$SDKMAN_VERSION" > "${SDKMAN_DIR}/var/version"
if [[ $darwin == true ]]; then
touch "$sdkman_bash_profile"
echo "Attempt update of login bash profile on OSX..."
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_bash_profile") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_bash_profile"
echo "Added sdkman init snippet to $sdkman_bash_profile"
fi
else
echo "Attempt update of interactive bash profile on regular UNIX..."
touch "${sdkman_bashrc}"
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_bashrc") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_bashrc"
echo "Added sdkman init snippet to $sdkman_bashrc"
fi
fi
echo "Attempt update of zsh profile..."
touch "$sdkman_zshrc"
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_zshrc") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_zshrc"
echo "Updated existing ${sdkman_zshrc}"
fi
echo -e "\n\n\nAll done!\n\n"
echo "You are subscribed to the STABLE channel."
echo ""
echo "Please open a new terminal, or run the following in the existing one:"
echo ""
echo " source \"${SDKMAN_DIR}/bin/sdkman-init.sh\""
echo ""
echo "Then issue the following command:"
echo ""
echo " sdk help"
echo ""
echo "Enjoy!!!"

View File

@ -10,9 +10,148 @@ ARG DEBIAN_FRONTEND=noninteractive
# ARGuments
##################################################################
ENV BuildDocker true
ARG NINJA_ARCH=linux
ARG NINJA_VERSION=latest
ARG NINJA_RELEASE_URL=https://api.github.com/repos/ninja-build/ninja/releases/${NINJA_VERSION}
# steam runtime sdk
ENV STEAM_RUNTIME_SDK_DIR=${EMG_LOCAL_BASE_DIR}/valve/steam/runtime-sdk/latest
ARG STEAM_RUNTIME_SDK_BIN_DIR=${STEAM_RUNTIME_SDK_DIR}/bin
ARG STEAM_RUNTIME_SDK_URL=http://media.steampowered.com/client/runtime/steam-runtime-sdk_latest.tar.xz
ARG STEAM_RUNTIME_SDK_TEMP=/tmp/steam-runtime-sdk_latest.tar.xz
# cmake compiller
ENV CMAKE_VERSION=3.30.2
ENV CMAKE_DIR=${EMG_LOCAL_BASE_DIR}/cmake/${CMAKE_VERSION}
ARG CMAKE_BIN_DIR=${CMAKE_DIR}/bin
ARG CMAKE_DOWNLOAD_URL=https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
ARG CMAKE_TEMP=/tmp/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
# flutter source tarball
ENV FLUTTER_VERSION=3.22.3
ENV FLUTTER_CHANNEL=stable
ENV FLUTTER_DIR=${EMG_LOCAL_BASE_DIR}/flutter/${FLUTTER_VERSION}
ARG FLUTTER_BIN_DIR=${FLUTTER_DIR}/bin
ARG FLUTTER_DOWNLOAD_URL=https://storage.googleapis.com/flutter_infra_release/releases/${FLUTTER_CHANNEL}/linux/flutter_linux_${FLUTTER_VERSION}-${FLUTTER_CHANNEL}.tar.xz
ARG FLUTTER_TEMP=/tmp/flutter_linux_${FLUTTER_VERSION}-${FLUTTER_CHANNEL}.tar.xz
# ninja source tarball
ENV NINJA_VERSION=1.12.1
ENV NINJA_DIR=${EMG_LOCAL_BASE_DIR}/ninja/${NINJA_VERSION}
ARG NINJA_BIN_DIR=${NINJA_DIR}/bin
ARG NINJA_DOWNLOAD_URL=https://github.com/ninja-build/ninja/releases/download/v${NINJA_VERSION}/ninja-linux.zip
ARG NINJA_TEMP=/tmp/ninja-linux.zip
# GO source tarball
ENV GO_VERSION=1.22.5
ENV GO_DIR=${EMG_LOCAL_BASE_DIR}/go/${GO_VERSION}
ARG GO_BIN_DIR=${GO_DIR}/bin
ARG GO_DOWNLOAD_URL=https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz
ARG GO_TEMP=/tmp/go${GO_VERSION}.linux-amd64.tar.gz
##################################################################
# Rust compillers
##################################################################
ENV CARGO_HOME=${EMG_LOCAL_BASE_DIR}/cargo
ENV RUSTUP_HOME=${EMG_LOCAL_BASE_DIR}/rustup
ARG CARGO_BIN=${CARGO_HOME}/bin
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile complete --default-toolchain stable --verbose
ENV PATH="$CARGO_HOME/bin:${PATH}"
RUN echo "=============================================" && \
echo cargo $(cargo --version) && \
echo rustc $(rustc --version) && \
echo rustup $(rustup --version) && \
echo "============================================="
##################################################################
# CMake
##################################################################
RUN mkdir -p ${CMAKE_DIR}
ADD ${CMAKE_DOWNLOAD_URL} /tmp
RUN tar -xf ${CMAKE_TEMP} --directory ${CMAKE_DIR} --strip-components=1 && \
chmod +x ${CMAKE_BIN_DIR}/ccmake && \
chmod +x ${CMAKE_BIN_DIR}/cmake && \
chmod +x ${CMAKE_BIN_DIR}/cmake-gui && \
chmod +x ${CMAKE_BIN_DIR}/cpack && \
chmod +x ${CMAKE_BIN_DIR}/ctest
ENV PATH="${CMAKE_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo $(cmake --version) && \
echo "============================================="
##################################################################
# steam runtime and ssdk
##################################################################
RUN mkdir -p ${STEAM_RUNTIME_SDK_DIR}
ADD ${STEAM_RUNTIME_SDK_URL} /tmp
RUN tar -xf ${STEAM_RUNTIME_SDK_TEMP} --directory ${STEAM_RUNTIME_SDK_DIR} --strip-components=1 && \
tree ${STEAM_RUNTIME_SDK_DIR} && \
chmod +x ${STEAM_RUNTIME_SDK_BIN_DIR} -R && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/setup.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell-amd64.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell-i386.sh
# printf '%s\n' 3 1 Y Y Y | ./setup.sh
##################################################################
# Flutter SDK
##################################################################
RUN mkdir -p ${FLUTTER_DIR}
ADD ${FLUTTER_DOWNLOAD_URL} /tmp
RUN tar -xf ${FLUTTER_TEMP} --directory ${FLUTTER_DIR} --strip-components=1 && \
chmod +x ${FLUTTER_BIN_DIR}/dart && \
chmod +x ${FLUTTER_BIN_DIR}/flutter && \
chmod +x ${FLUTTER_BIN_DIR}/internal/shared.sh && \
chmod +x ${FLUTTER_BIN_DIR}/internal/update_dart_sdk.sh
ENV PATH="${FLUTTER_BIN_DIR}:${PATH}"
RUN git config --global --add safe.directory ${FLUTTER_DIR} && \
flutter precache && \
flutter config --no-analytics && \
dart --disable-analytics
RUN echo "=============================================" && \
echo dart $(dart --version) && \
echo flutter $(flutter --version) && \
echo "============================================="
##################################################################
# GO compillers
##################################################################
RUN mkdir -p ${GO_DIR}
ADD ${GO_DOWNLOAD_URL} /tmp
RUN tar -xzf ${GO_TEMP} --directory ${GO_DIR} --strip-components=1 && \
chmod +x ${GO_BIN_DIR}/go && \
chmod +x ${GO_BIN_DIR}/gofmt
ENV GOPATH=${GO_DIR}
ENV PATH="${GO_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo go $(go version) && \
echo "============================================="
##################################################################
# Get NINJA binary
##################################################################
RUN mkdir -p ${NINJA_BIN_DIR}
ADD ${NINJA_DOWNLOAD_URL} /tmp
RUN 7zz x ${NINJA_TEMP} -o${NINJA_BIN_DIR} -y && \
chmod +x ${NINJA_BIN_DIR}/ninja
ENV PATH="${NINJA_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo ninja $(ninja --version) && \
echo "============================================="
##################################################################
# deps
@ -76,50 +215,24 @@ RUN apt-get update && \
libcrypto++-dev \
libbz2-dev \
libvpx-dev \
# libvpx6 \
libc6 \
libgssapi-krb5-2 \
# liblttng-ust0 \
# libssl1.1 \
libstdc++6 \
zlib1g \
tcl
##################################################################
# Get NINJA binary
# other customisations
##################################################################
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"
##################################################################
# steam runtime and ssdk
# cleanup
##################################################################
RUN cd / && \
sudo mkdir valve && \
cd valve && \
sudo wget http://media.steampowered.com/client/runtime/steam-runtime-sdk_latest.tar.xz && \
sudo tar xvf steam-runtime-sdk_latest.tar.xz && \
sudo mv steam-runtime-sdk_2013-09-05 steam-runtime && \
sudo chown root:root * -R && \
cd steam-runtime && \
printf '%s\n' 3 1 Y Y Y | ./setup.sh
##################################################################
# cleaninig up
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -10,9 +10,231 @@ ARG DEBIAN_FRONTEND=noninteractive
# ARGuments
##################################################################
ENV BuildDocker true
ARG NINJA_ARCH=linux
ARG NINJA_VERSION=latest
ARG NINJA_RELEASE_URL=https://api.github.com/repos/ninja-build/ninja/releases/${NINJA_VERSION}
ENV ANDROID_HOME=/usr/lib/android-sdk
ENV ANDROID_SDK_ROOT=/usr/lib/android-sdk
ARG K_NODE_MAJOR_VERSION=22
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.6.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# dotnet setup
##################################################################
ENV DOTNET_CHANNEL=LTS
ENV DOTNET_ROOT=${EMG_LOCAL_BASE_DIR}/dotnet/${DOTNET_CHANNEL}
ARG DOTNET_TOOLS_DIR=${DOTNET_ROOT}/tools
ARG DOTNET_INSTALL_DIR=${DOTNET_ROOT}
ARG DOTNET_INSTALL_SCRIPT_URL=https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh
# Opt out of the telemetry feature
ENV DOTNET_CLI_TELEMETRY_OPTOUT=true
# Disable first time experience
ENV DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
# Configure Kestrel web server to bind to port 80 when present
ENV ASPNETCORE_URLS=\
# Enable detection of running in a container
ENV DOTNET_RUNNING_IN_CONTAINER=true
# Enable correct mode for dotnet watch (only mode supported in a container)
ENV DOTNET_USE_POLLING_FILE_WATCHER=true
# Skip extraction of XML docs - generally not useful within an image/container - helps perfomance
ENV NUGET_XMLDOC_MODE=skip
# unofficial support of openssl1.1 instead of 1.0 [https://stackoverflow.com/questions/51901359]
ENV CLR_OPENSSL_VERSION_OVERRIDE=45
# PowerShell telemetry for docker image usage
ENV POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-20.04
RUN mkdir -p /usr/share/dotnet/host/fxr
##################################################################
# java11
##################################################################
ARG K_JDK_MAJOR_VERSION=11
ARG K_JDK_FULL_VERSION=jdk-11.0.24
ARG K_JDK_VERSION=11.0.24
ARG K_JDK_BUILD_VERSION=8
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV JRE_HOME=${JAVA_HOME}
ENV PATH=$PATH:${JAVA_HOME}/bin
# steam runtime sdk
ENV STEAM_RUNTIME_SDK_DIR=${EMG_LOCAL_BASE_DIR}/valve/steam/runtime-sdk/latest
ARG STEAM_RUNTIME_SDK_BIN_DIR=${STEAM_RUNTIME_SDK_DIR}/bin
ARG STEAM_RUNTIME_SDK_URL=http://media.steampowered.com/client/runtime/steam-runtime-sdk_latest.tar.xz
ARG STEAM_RUNTIME_SDK_TEMP=/tmp/steam-runtime-sdk_latest.tar.xz
# cmake compiller
ENV CMAKE_VERSION=3.30.2
ENV CMAKE_DIR=${EMG_LOCAL_BASE_DIR}/cmake/${CMAKE_VERSION}
ARG CMAKE_BIN_DIR=${CMAKE_DIR}/bin
ARG CMAKE_DOWNLOAD_URL=https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
ARG CMAKE_TEMP=/tmp/cmake-${CMAKE_VERSION}-linux-x86_64.tar.gz
# flutter source tarball
ENV FLUTTER_VERSION=3.22.3
ENV FLUTTER_CHANNEL=stable
ENV FLUTTER_DIR=${EMG_LOCAL_BASE_DIR}/flutter/${FLUTTER_VERSION}
ARG FLUTTER_BIN_DIR=${FLUTTER_DIR}/bin
ARG FLUTTER_DOWNLOAD_URL=https://storage.googleapis.com/flutter_infra_release/releases/${FLUTTER_CHANNEL}/linux/flutter_linux_${FLUTTER_VERSION}-${FLUTTER_CHANNEL}.tar.xz
ARG FLUTTER_TEMP=/tmp/flutter_linux_${FLUTTER_VERSION}-${FLUTTER_CHANNEL}.tar.xz
# ninja source tarball
ENV NINJA_VERSION=1.12.1
ENV NINJA_DIR=${EMG_LOCAL_BASE_DIR}/ninja/${NINJA_VERSION}
ARG NINJA_BIN_DIR=${NINJA_DIR}/bin
ARG NINJA_DOWNLOAD_URL=https://github.com/ninja-build/ninja/releases/download/v${NINJA_VERSION}/ninja-linux.zip
ARG NINJA_TEMP=/tmp/ninja-linux.zip
# GO source tarball
ENV GO_VERSION=1.22.5
ENV GO_DIR=${EMG_LOCAL_BASE_DIR}/go/${GO_VERSION}
ARG GO_BIN_DIR=${GO_DIR}/bin
ARG GO_DOWNLOAD_URL=https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gz
ARG GO_TEMP=/tmp/go${GO_VERSION}.linux-amd64.tar.gz
##################################################################
# AMXXModX setup
##################################################################
#
# Reserved for future
# export AMXX_CSTRIKE_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-cstrike-linux` && \
# export AMXX_DOD_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-dod-linux` && \
# export AMXX_ESF_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-esf-linux` && \
# export AMXX_NS_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-ns-linux` && \
# export AMXX_TFC_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-tfc-linux` && \
# export AMXX_TS_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-base-linux` && \
#
# Install packages
ENV AMXX_VERSION=1.10
ENV AMXX_INSTALL_PATH=/opt/amxmodx/$AMXX_VERSION
ENV AMXX_BIN_PATH=$AMXX_INSTALL_PATH/scripting
ENV AMXX_INC_PATH=$AMXX_BIN_PATH/include
ENV PATH=$PATH:$AMXX_BIN_PATH
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AMXX_BIN_PATH
COPY inc.tar /tmp
RUN export AMXX_BASE_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-base-linux` && \
mkdir -p $AMXX_INSTALL_PATH && \
curl -SL https://www.amxmodx.org/amxxdrop/{$AMXX_VERSION}/{$AMXX_BASE_LATEST_VERSION} -o /tmp/amxx_base_latest.tar.gz && \
cd /tmp && tar -zxf /tmp/amxx_base_latest.tar.gz && cd / && \
mv -f /tmp/addons/amxmodx/* $AMXX_INSTALL_PATH && \
chmod +x $AMXX_BIN_PATH/amxxpc && \
tar -C $AMXX_INC_PATH -xvf /tmp/inc.tar && \
chmod -R 700 $AMXX_INC_PATH && \
chmod +x $AMXX_BIN_PATH/compile.sh
##################################################################
# Rust compillers
##################################################################
ENV CARGO_HOME=${EMG_LOCAL_BASE_DIR}/cargo
ENV RUSTUP_HOME=${EMG_LOCAL_BASE_DIR}/rustup
ARG CARGO_BIN=${CARGO_HOME}/bin
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --no-modify-path --profile complete --default-toolchain stable --verbose
ENV PATH="$CARGO_HOME/bin:${PATH}"
RUN echo "=============================================" && \
echo cargo $(cargo --version) && \
echo rustc $(rustc --version) && \
echo rustup $(rustup --version) && \
echo "============================================="
##################################################################
# CMake
##################################################################
RUN mkdir -p ${CMAKE_DIR}
ADD ${CMAKE_DOWNLOAD_URL} /tmp
RUN tar -xf ${CMAKE_TEMP} --directory ${CMAKE_DIR} --strip-components=1 && \
chmod +x ${CMAKE_BIN_DIR}/ccmake && \
chmod +x ${CMAKE_BIN_DIR}/cmake && \
chmod +x ${CMAKE_BIN_DIR}/cmake-gui && \
chmod +x ${CMAKE_BIN_DIR}/cpack && \
chmod +x ${CMAKE_BIN_DIR}/ctest
ENV PATH="${CMAKE_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo $(cmake --version) && \
echo "============================================="
##################################################################
# steam runtime and ssdk
##################################################################
RUN mkdir -p ${STEAM_RUNTIME_SDK_DIR}
ADD ${STEAM_RUNTIME_SDK_URL} /tmp
RUN tar -xf ${STEAM_RUNTIME_SDK_TEMP} --directory ${STEAM_RUNTIME_SDK_DIR} --strip-components=1 && \
tree ${STEAM_RUNTIME_SDK_DIR} && \
chmod +x ${STEAM_RUNTIME_SDK_BIN_DIR} -R && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/setup.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell-amd64.sh && \
chmod +x ${STEAM_RUNTIME_SDK_DIR}/shell-i386.sh
# printf '%s\n' 3 1 Y Y Y | ./setup.sh
##################################################################
# Flutter SDK
##################################################################
RUN mkdir -p ${FLUTTER_DIR}
ADD ${FLUTTER_DOWNLOAD_URL} /tmp
RUN tar -xf ${FLUTTER_TEMP} --directory ${FLUTTER_DIR} --strip-components=1 && \
chmod +x ${FLUTTER_BIN_DIR}/dart && \
chmod +x ${FLUTTER_BIN_DIR}/flutter && \
chmod +x ${FLUTTER_BIN_DIR}/internal/shared.sh && \
chmod +x ${FLUTTER_BIN_DIR}/internal/update_dart_sdk.sh
ENV PATH="${FLUTTER_BIN_DIR}:${PATH}"
RUN git config --global --add safe.directory ${FLUTTER_DIR} && \
flutter precache && \
flutter config --no-analytics && \
dart --disable-analytics
RUN echo "=============================================" && \
echo dart $(dart --version) && \
echo flutter $(flutter --version) && \
echo "============================================="
##################################################################
# GO compillers
##################################################################
RUN mkdir -p ${GO_DIR}
ADD ${GO_DOWNLOAD_URL} /tmp
RUN tar -xzf ${GO_TEMP} --directory ${GO_DIR} --strip-components=1 && \
chmod +x ${GO_BIN_DIR}/go && \
chmod +x ${GO_BIN_DIR}/gofmt
ENV GOPATH=${GO_DIR}
ENV PATH="${GO_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo go $(go version) && \
echo "============================================="
##################################################################
# Get NINJA binary
##################################################################
RUN mkdir -p ${NINJA_BIN_DIR}
ADD ${NINJA_DOWNLOAD_URL} /tmp
RUN 7zz x ${NINJA_TEMP} -o${NINJA_BIN_DIR} -y && \
chmod +x ${NINJA_BIN_DIR}/ninja
ENV PATH="${NINJA_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo ninja $(ninja --version) && \
echo "============================================="
##################################################################
# deps
@ -76,52 +298,30 @@ RUN apt-get update && \
libcrypto++-dev \
libbz2-dev \
libvpx-dev \
# libvpx6 \
libc6 \
libgssapi-krb5-2 \
# liblttng-ust0 \
# libssl1.1 \
libstdc++6 \
zlib1g \
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"
##################################################################
# steam runtime and ssdk
##################################################################
RUN cd / && \
sudo mkdir valve && \
cd valve && \
sudo wget http://media.steampowered.com/client/runtime/steam-runtime-sdk_latest.tar.xz && \
sudo tar xvf steam-runtime-sdk_latest.tar.xz && \
sudo mv steam-runtime-sdk_2013-09-05 steam-runtime && \
sudo chown root:root * -R && \
cd steam-runtime && \
printf '%s\n' 3 1 Y Y Y | ./setup.sh
##################################################################
# docker setup
##################################################################
#Install packages
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - && \
echo 'deb https://download.docker.com/linux/ubuntu focal test' > /etc/apt/sources.list.d/docker.list && \
apt-cache policy docker-ce && \
RUN install -m 0755 -d /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
chmod a+r /etc/apt/keyrings/docker.asc && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble nightly" > /etc/apt/sources.list.d/docker.list && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable" >> /etc/apt/sources.list.d/docker.list && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble test" >> /etc/apt/sources.list.d/docker.list && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
docker-ce \
docker-ce-cli \
containerd.io systemd && \
systemctl disable docker
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
# A better fix for TW-52939 Dockerfile build fails because of aufs
VOLUME /var/lib/docker
@ -147,79 +347,120 @@ RUN export DOCKER_COMPOSE_VERSION=`curl --silent https://api.github.com/repos/d
chmod +x /usr/local/bin/docker-compose && \
docker-compose -v
##################################################################
# dotnet+powershell setup
# installing java11
##################################################################
# Opt out of the telemetry feature
ENV DOTNET_CLI_TELEMETRY_OPTOUT=true
# Disable first time experience
ENV DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
# Configure Kestrel web server to bind to port 80 when present
ENV ASPNETCORE_URLS=\
# Enable detection of running in a container
ENV DOTNET_RUNNING_IN_CONTAINER=true
# Enable correct mode for dotnet watch (only mode supported in a container)
ENV DOTNET_USE_POLLING_FILE_WATCHER=true
# Skip extraction of XML docs - generally not useful within an image/container - helps perfomance
ENV NUGET_XMLDOC_MODE=skip
# unofficial support of openssl1.1 instead of 1.0 [https://stackoverflow.com/questions/51901359]
ENV CLR_OPENSSL_VERSION_OVERRIDE=45
# PowerShell telemetry for docker image usage
ENV POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-20.04
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
ln -sfv ${JAVA_HOME} /usr/jre && \
java -version
#Install packages
RUN curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - && \
echo 'deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/ubuntu/20.04/prod focal main' > /etc/apt/sources.list.d/microsoft.dotnet.list && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
# dotnet-sdk-2.1 \
# dotnet-runtime-deps-2.1 \
# dotnet-runtime-2.1 \
# dotnet-hostfxr-2.1 \
# dotnet-sdk-3.1 \
# dotnet-targeting-pack-3.1 \
# dotnet-runtime-deps-3.1 \
# dotnet-runtime-3.1 \
# dotnet-hostfxr-3.1 \
# dotnet-apphost-pack-3.1 \
# dotnet-sdk-5.0 \
# dotnet-targeting-pack-5.0 \
# dotnet-runtime-deps-5.0 \
# dotnet-runtime-5.0 \
# dotnet-hostfxr-5.0 \
# dotnet-apphost-pack-5.0 \
# dotnet-sdk-6.0 \
# dotnet-targeting-pack-6.0 \
# dotnet-runtime-deps-6.0 \
# dotnet-runtime-6.0 \
# dotnet-hostfxr-6.0 \
# dotnet-apphost-pack-6.0 \
dotnet-sdk-7.0 \
dotnet-targeting-pack-7.0 \
dotnet-runtime-deps-7.0 \
dotnet-runtime-7.0 \
dotnet-hostfxr-7.0 \
dotnet-apphost-pack-7.0 \
# dotnet-host \
procdump \
procmon \
powershell-preview \
powershell
##################################################################
# Additional settings
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
RUN mkdir -p /usr/share/dotnet/host/fxr
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
# Trigger .NET CLI first run experience by running arbitrary cmd to populate local package cache
RUN dotnet --info && \
pwsh-preview -v && \
pwsh -v
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
# install dotnet tools
#RUN dotnet tool list -g && \
# dotnet tool install -g dotnet-script && \
# curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \
# dotnet tool list -g && \
# dotnet-script --version
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Maven
##################################################################
ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
##################################################################
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
##################################################################
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
##################################################################
# kotlin-native-prebuilt-linux
##################################################################
ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# Android SDK
##################################################################
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
android-sdk \
android-sdk-build-tools \
android-sdk-platform-tools-common \
android-sdk-platform-tools \
adb fastboot f2fs-tools e2fsprogs libsqlite3-0 sqlite3
##################################################################
# Activate Android SDK
##################################################################
RUN echo "24333f8a63b6825ea9c5514f83c2829b004d1fee" > /usr/lib/android-sdk/licenses/android-sdk-license
##################################################################
# installing dotnet
##################################################################
ADD ${DOTNET_INSTALL_SCRIPT_URL} /tmp
RUN mkdir -p ${DOTNET_ROOT} && \
chmod +x /tmp/dotnet-install.sh && \
/tmp/dotnet-install.sh --verbose --no-path --install-dir ${DOTNET_ROOT} --channel ${DOTNET_CHANNEL} --version latest
##################################################################
# Setup $PATH
##################################################################
ENV PATH=$PATH:${DOTNET_ROOT}:${DOTNET_TOOLS_DIR}
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo $(dotnet --info) && \
echo $(dotnet --list-sdks) && \
echo $(dotnet --list-runtimes) && \
echo "============================================="
##################################################################
# Mono
@ -238,107 +479,43 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E03280
ca-certificates-mono \
mono-xsp4
##################################################################
# Node.js 22.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm yarn
##################################################################
# teamcity AMXXModX setup
# Version after install
##################################################################
#
# Reserved for future
# export AMXX_CSTRIKE_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-cstrike-linux` && \
# export AMXX_DOD_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-dod-linux` && \
# export AMXX_ESF_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-esf-linux` && \
# export AMXX_NS_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-ns-linux` && \
# export AMXX_TFC_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-tfc-linux` && \
# export AMXX_TS_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-base-linux` && \
# Install packages
ENV AMXX_VERSION=1.10
ENV AMXX_INSTALL_PATH=/opt/amxmodx/$AMXX_VERSION
ENV AMXX_BIN_PATH=$AMXX_INSTALL_PATH/scripting
ENV AMXX_INC_PATH=$AMXX_BIN_PATH/include
ENV PATH=$PATH:$AMXX_BIN_PATH
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$AMXX_BIN_PATH
COPY inc.tar /tmp
RUN export AMXX_BASE_LATEST_VERSION=`curl -s https://www.amxmodx.org/amxxdrop/1.10/amxmodx-latest-base-linux` && \
mkdir -p $AMXX_INSTALL_PATH && \
curl -SL https://www.amxmodx.org/amxxdrop/{$AMXX_VERSION}/{$AMXX_BASE_LATEST_VERSION} -o /tmp/amxx_base_latest.tar.gz && \
cd /tmp && tar -zxf /tmp/amxx_base_latest.tar.gz && cd / && \
mv -f /tmp/addons/amxmodx/* $AMXX_INSTALL_PATH && \
chmod +x $AMXX_BIN_PATH/amxxpc && \
chmod +x $AMXX_BIN_PATH/compile.sh && \
tar -C $AMXX_INC_PATH -xvf /tmp/inc.tar && \
chmod -R 700 $AMXX_INC_PATH && \
amxxpc --help 2>&1 | head -n 1
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# Android SDK
# other customisations
##################################################################
ENV ANDROID_HOME=/usr/lib/android-sdk
ENV ANDROID_SDK_ROOT=/usr/lib/android-sdk
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
android-sdk \
android-sdk-build-tools \
android-sdk-platform-tools-common \
android-sdk-platform-tools \
adb fastboot f2fs-tools e2fsprogs libsqlite3-0 sqlite3
# Activate android sdk
RUN echo "24333f8a63b6825ea9c5514f83c2829b004d1fee" > /usr/lib/android-sdk/licenses/android-sdk-license
##################################################################
# SDKMAN
# cleanup
##################################################################
#USER root
#RUN export SDKMAN_DIR="/usr/local/sdkman" && curl -s "https://get.sdkman.io?rcupdate=false" | bash
#RUN export SDKMAN_DIR="/config/.sdkman" && curl -A "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" -s "https://get.sdkman.io" | bash
COPY ./sdkman.sh /tmp/sdkman.sh
RUN export SDKMAN_DIR="/config/.sdkman" && chmod +x /tmp/sdkman.sh
RUN /tmp/sdkman.sh
##################################################################
# Upgrade SDK-man
##################################################################
RUN /bin/bash -c "source /config/.sdkman/bin/sdkman-init.sh; sdk selfupdate force;"
##################################################################
# Gradle
##################################################################
RUN /bin/bash -c "source /config/.sdkman/bin/sdkman-init.sh; sdk install gradle;"
##################################################################
# Kotlin
##################################################################
RUN /bin/bash -c "source /config/.sdkman/bin/sdkman-init.sh; sdk install kotlin;"
##################################################################
# installing java11
##################################################################
RUN wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | apt-key add - && \
echo 'deb https://packages.adoptium.net/artifactory/deb focal main' > /etc/apt/sources.list.d/temurin-official.list && \
apt-get update && \
apt-get autoremove -y && \
apt-get install -y --allow-unauthenticated temurin-11-jdk && \
mkdir /usr/lib/jvm/temurin-11-jdk-amd64/jre && \
ln -s /usr/lib/jvm/temurin-11-jdk-amd64/bin/ /usr/lib/jvm/temurin-11-jdk-amd64/jre/bin && \
ln -s /usr/lib/jvm/temurin-11-jdk-amd64/lib/ /usr/lib/jvm/temurin-11-jdk-amd64/jre/lib && \
java -version
##################################################################
# cleaninig up
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,312 +0,0 @@
#!/bin/bash
#
# Copyright 2017 Marco Vermeulen
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# install:- channel: stable; cliVersion: 5.15.0; cliNativeVersion: NA; api: https://api.sdkman.io/2
# Global variables
SDKMAN_SERVICE="https://api.sdkman.io/2"
SDKMAN_VERSION="5.15.0"
SDKMAN_PLATFORM=$(uname)
if [ -z "$SDKMAN_DIR" ]; then
SDKMAN_DIR="$HOME/.sdkman"
SDKMAN_DIR_RAW='$HOME/.sdkman'
else
SDKMAN_DIR_RAW="$SDKMAN_DIR"
fi
# Local variables
sdkman_tmp_folder="${SDKMAN_DIR}/tmp"
sdkman_zip_file="${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}.zip"
sdkman_zip_base_folder="${sdkman_tmp_folder}/sdkman-${SDKMAN_VERSION}"
sdkman_ext_folder="${SDKMAN_DIR}/ext"
sdkman_etc_folder="${SDKMAN_DIR}/etc"
sdkman_var_folder="${SDKMAN_DIR}/var"
sdkman_archives_folder="${SDKMAN_DIR}/archives"
sdkman_candidates_folder="${SDKMAN_DIR}/candidates"
sdkman_config_file="${sdkman_etc_folder}/config"
sdkman_bash_profile="${HOME}/.bash_profile"
sdkman_profile="${HOME}/.profile"
sdkman_bashrc="${HOME}/.bashrc"
sdkman_zshrc="${ZDOTDIR:-${HOME}}/.zshrc"
sdkman_init_snippet=$( cat << EOF
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!!
export SDKMAN_DIR="$SDKMAN_DIR_RAW"
[[ -s "${SDKMAN_DIR_RAW}/bin/sdkman-init.sh" ]] && source "${SDKMAN_DIR_RAW}/bin/sdkman-init.sh"
EOF
)
# OS specific support (must be 'true' or 'false').
cygwin=false;
darwin=false;
solaris=false;
freebsd=false;
case "$(uname)" in
CYGWIN*)
cygwin=true
;;
Darwin*)
darwin=true
;;
SunOS*)
solaris=true
;;
FreeBSD*)
freebsd=true
esac
echo ''
echo ' -+syyyyyyys:'
echo ' `/yho:` -yd.'
echo ' `/yh/` +m.'
echo ' .oho. hy .`'
echo ' .sh/` :N` `-/o` `+dyyo:.'
echo ' .yh:` `M- `-/osysoym :hs` `-+sys: hhyssssssssy+'
echo ' .sh:` `N: ms/-`` yy.yh- -hy. `.N-````````+N.'
echo ' `od/` `N- -/oM- ddd+` `sd: hNNm -N:'
echo ' :do` .M. dMMM- `ms. /d+` `NMMs `do'
echo ' .yy- :N` ```mMMM. - -hy. /MMM: yh'
echo ' `+d+` `:/oo/` `-/osyh/ossssssdNMM` .sh: yMMN` /m.'
echo ' -dh- :ymNMMMMy `-/shmNm-`:N/-.`` `.sN /N- `NMMy .m/'
echo ' `oNs` -hysosmMMMMydmNmds+-.:ohm : sd` :MMM/ yy'
echo ' .hN+ /d: -MMMmhs/-.` .MMMh .ss+- `yy` sMMN` :N.'
echo ' :mN/ `N/ `o/-` :MMMo +MMMN- .` `ds mMMh do'
echo ' /NN/ `N+....--:/+oooosooo+:sMMM: hMMMM: `my .m+ -MMM+ :N.'
echo ' /NMo -+ooooo+/:-....`...:+hNMN. `NMMMd` .MM/ -m: oMMN. hs'
echo ' -NMd` :mm -MMMm- .s/ -MMm. /m- mMMd -N.'
echo ' `mMM/ .- /MMh. -dMo -MMMy od. .MMMs..---yh'
echo ' +MMM. sNo`.sNMM+ :MMMM/ sh`+MMMNmNm+++-'
echo ' mMMM- /--ohmMMM+ :MMMMm. `hyymmmdddo'
echo ' MMMMh. ```` `-+yy/`yMMM/ :MMMMMy -sm:.``..-:-.`'
echo ' dMMMMmo-.``````..-:/osyhddddho. `+shdh+. hMMM: :MmMMMM/ ./yy/` `:sys+/+sh/'
echo ' .dMMMMMMmdddddmmNMMMNNNNNMMMMMs sNdo- dMMM- `-/yd/MMMMm-:sy+. :hs- /N`'
echo ' `/ymNNNNNNNmmdys+/::----/dMMm: +m- mMMM+ohmo/.` sMMMMdo- .om: `sh'
echo ' `.-----+/.` `.-+hh/` `od. NMMNmds/ `mmy:` +mMy `:yy.'
echo ' /moyso+//+ossso:. .yy` `dy+:` .. :MMMN+---/oys:'
echo ' /+m: `.-:::-` /d+ +MMMMMMMNh:`'
echo ' +MN/ -yh. `+hddhy+.'
echo ' /MM+ .sh:'
echo ' :NMo -sh/'
echo ' -NMs `/yy:'
echo ' .NMy `:sh+.'
echo ' `mMm` ./yds-'
echo ' `dMMMmyo:-.````.-:oymNy:`'
echo ' +NMMMMMMMMMMMMMMMMms:`'
echo ' -+shmNMMMNmdy+:`'
echo ''
echo ''
echo ' Now attempting installation...'
echo ''
echo ''
# Sanity checks
echo "Looking for a previous installation of SDKMAN..."
if [ -d "$SDKMAN_DIR" ]; then
echo "SDKMAN found."
echo ""
echo "======================================================================================================"
echo " You already have SDKMAN installed."
echo " SDKMAN was found at:"
echo ""
echo " ${SDKMAN_DIR}"
echo ""
echo " Please consider running the following if you need to upgrade."
echo ""
echo " $ sdk selfupdate force"
echo ""
echo "======================================================================================================"
echo ""
exit 0
fi
echo "Looking for unzip..."
if ! command -v unzip > /dev/null; then
echo "Not found."
echo "======================================================================================================"
echo " Please install unzip on your system using your favourite package manager."
echo ""
echo " Restart after installing unzip."
echo "======================================================================================================"
echo ""
exit 1
fi
echo "Looking for zip..."
if ! command -v zip > /dev/null; then
echo "Not found."
echo "======================================================================================================"
echo " Please install zip on your system using your favourite package manager."
echo ""
echo " Restart after installing zip."
echo "======================================================================================================"
echo ""
exit 1
fi
echo "Looking for curl..."
if ! command -v curl > /dev/null; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install curl on your system using your favourite package manager."
echo ""
echo " Restart after installing curl."
echo "======================================================================================================"
echo ""
exit 1
fi
if [[ "$solaris" == true ]]; then
echo "Looking for gsed..."
if [ -z $(which gsed) ]; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install gsed on your solaris system."
echo ""
echo " SDKMAN uses gsed extensively."
echo ""
echo " Restart after installing gsed."
echo "======================================================================================================"
echo ""
exit 1
fi
else
echo "Looking for sed..."
if [ -z $(command -v sed) ]; then
echo "Not found."
echo ""
echo "======================================================================================================"
echo " Please install sed on your system using your favourite package manager."
echo ""
echo " Restart after installing sed."
echo "======================================================================================================"
echo ""
exit 1
fi
fi
echo "Installing SDKMAN scripts..."
# Create directory structure
echo "Create distribution directories..."
mkdir -p "$sdkman_tmp_folder"
mkdir -p "$sdkman_ext_folder"
mkdir -p "$sdkman_etc_folder"
mkdir -p "$sdkman_var_folder"
mkdir -p "$sdkman_archives_folder"
mkdir -p "$sdkman_candidates_folder"
echo "Getting available candidates..."
SDKMAN_CANDIDATES_CSV=$(curl -s "${SDKMAN_SERVICE}/candidates/all")
echo "$SDKMAN_CANDIDATES_CSV" > "${SDKMAN_DIR}/var/candidates"
echo "Prime the config file..."
touch "$sdkman_config_file"
echo "sdkman_auto_answer=false" >> "$sdkman_config_file"
if [ -z "$ZSH_VERSION" -a -z "$BASH_VERSION" ]; then
echo "sdkman_auto_complete=false" >> "$sdkman_config_file"
else
echo "sdkman_auto_complete=true" >> "$sdkman_config_file"
fi
echo "sdkman_auto_env=false" >> "$sdkman_config_file"
echo "sdkman_auto_update=true" >> "$sdkman_config_file"
echo "sdkman_beta_channel=false" >> "$sdkman_config_file"
echo "sdkman_checksum_enable=true" >> "$sdkman_config_file"
echo "sdkman_colour_enable=true" >> "$sdkman_config_file"
echo "sdkman_curl_connect_timeout=7" >> "$sdkman_config_file"
echo "sdkman_curl_max_time=10" >> "$sdkman_config_file"
echo "sdkman_debug_mode=false" >> "$sdkman_config_file"
echo "sdkman_insecure_ssl=false" >> "$sdkman_config_file"
echo "sdkman_rosetta2_compatible=false" >> "$sdkman_config_file"
echo "sdkman_selfupdate_feature=true" >> "$sdkman_config_file"
echo "Download script archive..."
curl --location --progress-bar "${SDKMAN_SERVICE}/broker/download/sdkman/install/${SDKMAN_VERSION}/${SDKMAN_PLATFORM}" > "$sdkman_zip_file"
ARCHIVE_OK=$(unzip -qt "$sdkman_zip_file" | grep 'No errors detected in compressed data')
if [[ -z "$ARCHIVE_OK" ]]; then
echo "Downloaded zip archive corrupt. Are you connected to the internet?"
echo ""
echo "If problems persist, please ask for help on our Slack:"
echo "* easy sign up: https://slack.sdkman.io/"
echo "* report on channel: https://sdkman.slack.com/app_redirect?channel=user-issues"
rm -rf "$SDKMAN_DIR"
exit 1
fi
echo "Extract script archive..."
if [[ "$cygwin" == 'true' ]]; then
echo "Cygwin detected - normalizing paths for unzip..."
sdkman_tmp_folder=$(cygpath -w "$sdkman_tmp_folder")
sdkman_zip_file=$(cygpath -w "$sdkman_zip_file")
sdkman_zip_base_folder=$(cygpath -w "$sdkman_zip_base_folder")
fi
unzip -qo "$sdkman_zip_file" -d "$sdkman_tmp_folder"
echo "Install scripts..."
mv "${sdkman_zip_base_folder}/"* "$SDKMAN_DIR"
rm -rf "$sdkman_zip_base_folder"
echo "Set version to $SDKMAN_VERSION ..."
echo "$SDKMAN_VERSION" > "${SDKMAN_DIR}/var/version"
if [[ $darwin == true ]]; then
touch "$sdkman_bash_profile"
echo "Attempt update of login bash profile on OSX..."
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_bash_profile") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_bash_profile"
echo "Added sdkman init snippet to $sdkman_bash_profile"
fi
else
echo "Attempt update of interactive bash profile on regular UNIX..."
touch "${sdkman_bashrc}"
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_bashrc") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_bashrc"
echo "Added sdkman init snippet to $sdkman_bashrc"
fi
fi
echo "Attempt update of zsh profile..."
touch "$sdkman_zshrc"
if [[ -z $(grep 'sdkman-init.sh' "$sdkman_zshrc") ]]; then
echo -e "\n$sdkman_init_snippet" >> "$sdkman_zshrc"
echo "Updated existing ${sdkman_zshrc}"
fi
echo -e "\n\n\nAll done!\n\n"
echo "You are subscribed to the STABLE channel."
echo ""
echo "Please open a new terminal, or run the following in the existing one:"
echo ""
echo " source \"${SDKMAN_DIR}/bin/sdkman-init.sh\""
echo ""
echo "Then issue the following command:"
echo ""
echo " sdk help"
echo ""
echo "Enjoy!!!"

View File

@ -11,21 +11,24 @@ ARG DEBIAN_FRONTEND=noninteractive
##################################################################
ENV BuildDocker true
##################################################################
# docker setup
##################################################################
#Install packages
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - && \
echo 'deb https://download.docker.com/linux/ubuntu focal test' > /etc/apt/sources.list.d/docker.list && \
apt-cache policy docker-ce && \
RUN install -m 0755 -d /etc/apt/keyrings && \
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
chmod a+r /etc/apt/keyrings/docker.asc && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble nightly" > /etc/apt/sources.list.d/docker.list && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable" >> /etc/apt/sources.list.d/docker.list && \
echo "deb [signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble test" >> /etc/apt/sources.list.d/docker.list && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
docker-ce \
docker-ce-cli \
containerd.io systemd && \
systemctl disable docker
containerd.io \
docker-buildx-plugin \
docker-compose-plugin
# A better fix for TW-52939 Dockerfile build fails because of aufs
VOLUME /var/lib/docker
@ -52,17 +55,13 @@ RUN export DOCKER_COMPOSE_VERSION=`curl --silent https://api.github.com/repos/d
docker-compose -v
##################################################################
# cleaninig up
# cleanup
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -12,8 +12,14 @@ ARG DEBIAN_FRONTEND=noninteractive
ENV BuildDocker true
##################################################################
# dotnet+powershell setup
# dotnet setup
##################################################################
ENV DOTNET_CHANNEL=LTS
ENV DOTNET_ROOT=${EMG_LOCAL_BASE_DIR}/dotnet/${DOTNET_CHANNEL}
ARG DOTNET_TOOLS_DIR=${DOTNET_ROOT}/tools
ARG DOTNET_INSTALL_DIR=${DOTNET_ROOT}
ARG DOTNET_INSTALL_SCRIPT_URL=https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh
# Opt out of the telemetry feature
ENV DOTNET_CLI_TELEMETRY_OPTOUT=true
# Disable first time experience
@ -31,58 +37,29 @@ ENV CLR_OPENSSL_VERSION_OVERRIDE=45
# PowerShell telemetry for docker image usage
ENV POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-20.04
#Install packages
RUN curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - && \
echo 'deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/ubuntu/20.04/prod focal main' > /etc/apt/sources.list.d/microsoft.dotnet.list && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
# dotnet-sdk-2.1 \
# dotnet-runtime-deps-2.1 \
# dotnet-runtime-2.1 \
# dotnet-hostfxr-2.1 \
# dotnet-sdk-3.1 \
# dotnet-targeting-pack-3.1 \
# dotnet-runtime-deps-3.1 \
# dotnet-runtime-3.1 \
# dotnet-hostfxr-3.1 \
# dotnet-apphost-pack-3.1 \
# dotnet-sdk-5.0 \
# dotnet-targeting-pack-5.0 \
# dotnet-runtime-deps-5.0 \
# dotnet-runtime-5.0 \
# dotnet-hostfxr-5.0 \
# dotnet-apphost-pack-5.0 \
# dotnet-sdk-6.0 \
# dotnet-targeting-pack-6.0 \
# dotnet-runtime-deps-6.0 \
# dotnet-runtime-6.0 \
# dotnet-hostfxr-6.0 \
# dotnet-apphost-pack-6.0 \
dotnet-sdk-7.0 \
dotnet-targeting-pack-7.0 \
dotnet-runtime-deps-7.0 \
dotnet-runtime-7.0 \
dotnet-hostfxr-7.0 \
dotnet-apphost-pack-7.0 \
# dotnet-host \
procdump \
procmon \
powershell-preview \
powershell
RUN mkdir -p /usr/share/dotnet/host/fxr
# Trigger .NET CLI first run experience by running arbitrary cmd to populate local package cache
RUN dotnet --info && \
pwsh-preview -v && \
pwsh -v
##################################################################
# installing dotnet
##################################################################
ADD ${DOTNET_INSTALL_SCRIPT_URL} /tmp
RUN mkdir -p ${DOTNET_ROOT} && \
chmod +x /tmp/dotnet-install.sh && \
/tmp/dotnet-install.sh --verbose --no-path --install-dir ${DOTNET_ROOT} --channel ${DOTNET_CHANNEL} --version latest
# install dotnet tools
#RUN dotnet tool list -g && \
# dotnet tool install -g dotnet-script && \
# curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \
# dotnet tool list -g && \
# dotnet-script --version
##################################################################
# Setup $PATH
##################################################################
ENV PATH=$PATH:${DOTNET_ROOT}:${DOTNET_TOOLS_DIR}
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo $(dotnet --info) && \
echo $(dotnet --list-sdks) && \
echo $(dotnet --list-runtimes) && \
echo "============================================="
##################################################################
# Mono
@ -102,13 +79,13 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E03280
mono-xsp4
##################################################################
# cleaninig up
# cleanup
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/*
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -12,8 +12,14 @@ ARG DEBIAN_FRONTEND=noninteractive
ENV BuildDocker true
##################################################################
# dotnet+powershell setup
# dotnet setup
##################################################################
ENV DOTNET_CHANNEL=LTS
ENV DOTNET_ROOT=${EMG_LOCAL_BASE_DIR}/dotnet/${DOTNET_CHANNEL}
ARG DOTNET_TOOLS_DIR=${DOTNET_ROOT}/tools
ARG DOTNET_INSTALL_DIR=${DOTNET_ROOT}
ARG DOTNET_INSTALL_SCRIPT_URL=https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh
# Opt out of the telemetry feature
ENV DOTNET_CLI_TELEMETRY_OPTOUT=true
# Disable first time experience
@ -31,67 +37,39 @@ ENV CLR_OPENSSL_VERSION_OVERRIDE=45
# PowerShell telemetry for docker image usage
ENV POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-DotnetSDK-Ubuntu-20.04
#Install packages
RUN curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - && \
echo 'deb [arch=amd64,arm64,armhf] https://packages.microsoft.com/ubuntu/20.04/prod focal main' > /etc/apt/sources.list.d/microsoft.dotnet.list && \
apt-get update && \
apt-get install -y --no-install-recommends --allow-unauthenticated \
# dotnet-sdk-2.1 \
# dotnet-runtime-deps-2.1 \
# dotnet-runtime-2.1 \
# dotnet-hostfxr-2.1 \
# dotnet-sdk-3.1 \
# dotnet-targeting-pack-3.1 \
# dotnet-runtime-deps-3.1 \
# dotnet-runtime-3.1 \
# dotnet-hostfxr-3.1 \
# dotnet-apphost-pack-3.1 \
# dotnet-sdk-5.0 \
# dotnet-targeting-pack-5.0 \
# dotnet-runtime-deps-5.0 \
# dotnet-runtime-5.0 \
# dotnet-hostfxr-5.0 \
# dotnet-apphost-pack-5.0 \
# dotnet-sdk-6.0 \
# dotnet-targeting-pack-6.0 \
# dotnet-runtime-deps-6.0 \
# dotnet-runtime-6.0 \
# dotnet-hostfxr-6.0 \
# dotnet-apphost-pack-6.0 \
dotnet-sdk-7.0 \
dotnet-targeting-pack-7.0 \
dotnet-runtime-deps-7.0 \
dotnet-runtime-7.0 \
dotnet-hostfxr-7.0 \
dotnet-apphost-pack-7.0 \
# dotnet-host \
procdump \
procmon \
powershell-preview \
powershell
RUN mkdir -p /usr/share/dotnet/host/fxr
# Trigger .NET CLI first run experience by running arbitrary cmd to populate local package cache
RUN dotnet --info && \
pwsh-preview -v && \
pwsh -v
# install dotnet tools
#RUN dotnet tool list -g && \
# dotnet tool install -g dotnet-script && \
# curl -s https://raw.githubusercontent.com/filipw/dotnet-script/master/install/install.sh | bash && \
# dotnet tool list -g && \
# dotnet-script --version
##################################################################
# installing dotnet
##################################################################
ADD ${DOTNET_INSTALL_SCRIPT_URL} /tmp
RUN mkdir -p ${DOTNET_ROOT} && \
chmod +x /tmp/dotnet-install.sh && \
/tmp/dotnet-install.sh --verbose --no-path --install-dir ${DOTNET_ROOT} --channel ${DOTNET_CHANNEL} --version latest
##################################################################
# cleaninig up
# Setup $PATH
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
ENV PATH=$PATH:${DOTNET_ROOT}:${DOTNET_TOOLS_DIR}
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo $(dotnet --info) && \
echo $(dotnet --list-sdks) && \
echo $(dotnet --list-runtimes) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -18,67 +18,117 @@ LABEL donate.crypto.PPC="pQWArPzYoLppNe7ew3QPfto1k1eq66BYUB"
LABEL donate.crypto.RVN="R9t2LKeLhDSZBKNgUzSDZAossA3UqNvbV3"
LABEL donate.crypto.ZEC="t1KRMMmwMSZth8vJcd2ZHtPEFKTQ74yVixE"
LABEL donate.crypto.XMR="884PqZ1gDjWW7fKxtbaeRoBeSh9EGZbkqUyLriWmuKbwLZrAJdYUs4wQxoVfEJoW7LBhdQMP9cFhZQpJr6xvg7esHLdCbb1"
ARG DEBIAN_FRONTEND=noninteractive
##################################################################
# Set temp user for advanced setup
#################################################################
USER root
##################################################################
# Create Base directory for various soft
##################################################################
ENV EMG_LOCAL_BASE_DIR=/usr/local/share/epicmorg
RUN mkdir -p ${EMG_LOCAL_BASE_DIR}
COPY usr/local/epicmorg ${EMG_LOCAL_BASE_DIR}
##################################################################
# prepare system
##################################################################
RUN for i in $(seq 1 8); do mkdir -p "/usr/share/man/man${i}"; done
RUN mkdir -p /etc/apt/keyrings
##################################################################
# ARGuments
##################################################################
ARG P4_VERSION=r24.1
ARG P4_BIN_DIR=${EMG_LOCAL_BASE_DIR}/p4/${P4_VERSION}/bin
ARG P4_DOWNLOAD_URL=https://filehost.perforce.com/perforce/${P4_VERSION}/bin.linux26x86_64/p4
ARG SZ_VERSION=7z2407
ARG SZ_BIN_DIR=${EMG_LOCAL_BASE_DIR}/7z/${SZ_VERSION}/bin
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
ARG SZ_TEMP=/tmp/${SZ_VERSION}-linux-x64.tar.xz
ARG LAZYGIT_VERSION=0.42.0
ARG LAZYGIT_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazygit/${LAZYGIT_VERSION}/bin
ARG LAZYGIT_DOWNLOAD_URL=https://github.com/jesseduffield/lazygit/releases/download/v${LAZYGIT_VERSION}/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz
ARG LAZYGIT_TEMP=/tmp/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz
ARG LAZYCLI_VERSION=0.1.15
ARG LAZYCLI_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazycli/${LAZYCLI_VERSION}/bin
ARG LAZYCLI_DOWNLOAD_URL=https://github.com/jesseduffield/lazycli/releases/download/v${LAZYCLI_VERSION}/lazycli-linux-x64.tar.gz
ARG LAZYCLI_TEMP=/tmp/lazycli-linux-x64.tar.gz
ARG LAZYNPM_VERSION=0.1.4
ARG LAZYNPM_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazynpm/${LAZYNPM_VERSION}/bin
ARG LAZYNPM_DOWNLOAD_URL=https://github.com/jesseduffield/lazynpm/releases/download/v${LAZYNPM_VERSION}/lazynpm_${LAZYNPM_VERSION}_Linux_x86_64.tar.gz
ARG LAZYNPM_TEMP=/tmp/lazynpm_${LAZYNPM_VERSION}_Linux_x86_64.tar.gz
ARG LAZYDOCKER_VERSION=0.23.3
ARG LAZYDOCKER_BIN_DIR=${EMG_LOCAL_BASE_DIR}/lazydocker/${LAZYDOCKER_VERSION}/bin
ARG LAZYDOCKER_DOWNLOAD_URL=https://github.com/jesseduffield/lazydocker/releases/download/v${LAZYDOCKER_VERSION}/lazydocker_${LAZYDOCKER_VERSION}_Linux_x86_64.tar.gz
ARG LAZYDOCKER_TEMP=/tmp/lazydocker_${LAZYDOCKER_VERSION}_Linux_x86_64.tar.gz
ARG DUMB_INIT_VERSION=1.2.5
ARG DUMB_INIT_BIN_DIR=${EMG_LOCAL_BASE_DIR}/dumb-init/${DUMB_INIT_VERSION}/bin
ARG DUMB_INIT_DOWNLOAD_URL=https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_x86_64
ARG GOSU_VERSION=1.17
ARG GOSU_BIN_DIR=${EMG_LOCAL_BASE_DIR}/gosu/${GOSU_VERSION}/bin
ARG GOSU_DOWNLOAD_URL=https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-amd64
ENV BuildDocker true
##################################################################
# 7z official binary
# sources list
##################################################################
ARG SZ_VERSION=7z2407
ARG SZ_DOWNLOAD_URL=https://www.7-zip.org/a/${SZ_VERSION}-linux-x64.tar.xz
ARG SZ_TEMP=/tmp/${SZ_VERSION}-linux-x64.tar.xz
RUN rm -rfv /etc/apt/sources.list
RUN rm -rfv /etc/apt/sources.list.d/*.sources
RUN rm -rfv /etc/locale.gen
COPY etc/apt/apt.conf.d/99-no-check-valid-until /etc/apt/apt.conf.d/99-no-check-valid-until
COPY etc/apt/apt.conf.d/98-allow-unauthenticated /etc/apt/apt.conf.d/98-allow-unauthenticated
COPY etc/apt/apt.conf.d/97-allow-cert-exp /etc/apt/apt.conf.d/97-allow-cert-exp
COPY etc/apt/apt.conf.d/96-apt-retries /etc/apt/apt.conf.d/96-apt-retries
COPY etc/apt/sources.list /etc/apt/sources.list
COPY etc/locale.gen /etc/locale.gen
COPY usr/local/share/ca-certificates /usr/local/share/ca-certificates
RUN apt-get update && \
apt-get upgrade -y && \
apt-get dist-upgrade -y
##################################################################
# installing utils
##################################################################
# libzip4 \
# lbzip2 \
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections && \
apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
apt-transport-https \
apt-utils \
aptitude \
bash \
binutils \
bzip2 \
ca-certificates \
cmatrix \
cmatrix-xfont \
console-cyrillic \
cron \
curl \
clzip \
dos2unix \
ffmpeg \
fontconfig \
git \
gnupg \
gnupg1 \
gnupg2 \
graphicsmagick \
gzip \
htop \
iftop \
iputils-ping \
jq \
kmod \
libxml2-dev \
libxml2-utils \
libsvn-java \
locales \
locate \
lsb-release \
lsof \
lynx \
lzma \
lzip \
lzop \
mc \
mercurial \
nano \
@ -87,12 +137,8 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
openssl \
perl \
procps \
pbzip2 \
plzip \
p7zip-full \
p7zip-rar \
rsync \
rar \
rsync \
screenfetch \
smbclient \
software-properties-common \
@ -102,45 +148,222 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
tini \
tmux \
tree \
unrar \
unrar-free \
unzip \
util-linux \
uuid-runtime \
unrar \
xz-utils \
wget \
bzip2 \
clzip \
dos2unix \
ffmpeg \
fontconfig \
graphicsmagick \
gzip \
libxml2-dev \
libxml2-utils \
libsvn-java \
lzma \
lzip \
lzop \
pbzip2 \
plzip \
p7zip-full \
p7zip-rar \
xz-utils \
zip
RUN apt-key adv --keyserver keyserver.ubuntu.com --refresh-keys
RUN apt-key list | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys
RUN update-ca-certificates --fresh
##################################################################
# update locales
##################################################################
RUN locale-gen
##################################################################
# Install p4client
##################################################################
RUN mkdir -p ${P4_BIN_DIR}
ADD ${P4_DOWNLOAD_URL} ${P4_BIN_DIR}
RUN chmod +x ${P4_BIN_DIR}/p4
ENV PATH="${P4_BIN_DIR}:${PATH}"
##################################################################
# 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
RUN mkdir -p ${SZ_BIN_DIR}
ADD ${SZ_DOWNLOAD_URL} /tmp
RUN tar -xf ${SZ_TEMP} --directory ${SZ_BIN_DIR} && \
chmod +x ${SZ_BIN_DIR}/7zz && \
chmod +x ${SZ_BIN_DIR}/7zzs && \
find ${SZ_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name '7zz' ! -name '7zzs' -exec mv {} ${SZ_BIN_DIR}/.. \;
ENV PATH="${SZ_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo 7zz $(7zz | head -4) && \
echo 7z $(7z | head -4) && \
echo "============================================="
##################################################################
# Install GitHub CLI binary
# Install LazyGit official binary
##################################################################
RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null && \
sudo apt-get update && \
sudo apt-get install -y --allow-unauthenticated gh && \
gh --version
RUN mkdir -p ${LAZYGIT_BIN_DIR}
ADD ${LAZYGIT_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYGIT_TEMP} --directory ${LAZYGIT_BIN_DIR} && \
chmod +x ${LAZYGIT_BIN_DIR}/lazygit && \
find ${LAZYGIT_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazygit' -exec mv {} ${LAZYGIT_BIN_DIR}/.. \;
ENV PATH="${LAZYGIT_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazygit $(lazygit --version) && \
echo "============================================="
##################################################################
# cleaninig up
# Install LazyCLI official binary
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN mkdir -p ${LAZYCLI_BIN_DIR}
ADD ${LAZYCLI_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYCLI_TEMP} --directory ${LAZYCLI_BIN_DIR} && \
chmod +x ${LAZYCLI_BIN_DIR}/lazycli && \
find ${LAZYCLI_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazycli' -exec mv {} ${LAZYCLI_BIN_DIR}/.. \;
ENV PATH="${LAZYCLI_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazycli $(lazycli --version) && \
echo "============================================="
##################################################################
# Install LazyNPM official binary
##################################################################
RUN mkdir -p ${LAZYNPM_BIN_DIR}
ADD ${LAZYNPM_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYNPM_TEMP} --directory ${LAZYNPM_BIN_DIR} && \
chmod +x ${LAZYNPM_BIN_DIR}/lazynpm && \
find ${LAZYNPM_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazynpm' -exec mv {} ${LAZYNPM_BIN_DIR}/.. \;
ENV PATH="${LAZYNPM_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazynpm $(lazynpm --version) && \
echo "============================================="
##################################################################
# Install LazyDocker official binary
##################################################################
RUN mkdir -p ${LAZYDOCKER_BIN_DIR}
ADD ${LAZYDOCKER_DOWNLOAD_URL} /tmp
RUN tar -xzf ${LAZYDOCKER_TEMP} --directory ${LAZYDOCKER_BIN_DIR} && \
chmod +x -R ${LAZYDOCKER_BIN_DIR}/lazydocker && \
find ${LAZYDOCKER_BIN_DIR} -maxdepth 1 -mindepth 1 ! -name 'lazydocker' -exec mv {} ${LAZYDOCKER_BIN_DIR}/.. \;
ENV PATH="${LAZYDOCKER_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo lazydocker $(lazydocker --version) && \
echo "============================================="
##################################################################
# dumb init
##################################################################
RUN mkdir -p ${DUMB_INIT_BIN_DIR}
ADD ${DUMB_INIT_DOWNLOAD_URL} ${DUMB_INIT_BIN_DIR}
RUN mv -fv ${DUMB_INIT_BIN_DIR}/dumb-init_${DUMB_INIT_VERSION}_x86_64 ${DUMB_INIT_BIN_DIR}/dumb-init && \
chmod +x ${DUMB_INIT_BIN_DIR}/dumb-init
ENV PATH="${DUMB_INIT_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo dumb-init $(dumb-init --version) && \
echo "============================================="
##################################################################
# gosu for easy step-down from root
##################################################################
RUN mkdir -p ${GOSU_BIN_DIR}
ADD ${GOSU_DOWNLOAD_URL} ${GOSU_BIN_DIR}
RUN mv -fv ${GOSU_BIN_DIR}/gosu-amd64 ${GOSU_BIN_DIR}/gosu && \
chmod +x -R ${GOSU_BIN_DIR}/gosu
ENV PATH="${GOSU_BIN_DIR}:${PATH}"
RUN echo "=============================================" && \
echo gosu $(gosu --version) && \
echo "============================================="
##################################################################
# git fresh binary
##################################################################
RUN gpg --keyserver keyserver.ubuntu.com --recv-keys A1715D88E1DF1F24 && \
gpg --export --output /etc/apt/keyrings/launchpad-git.gpg A1715D88E1DF1F24 && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-mainline.list && \
rm -rfv /etc/apt/sources.list.d/launchpad_git-stable.list
COPY etc/apt/sources.list.d/launchpad_git-mainline.list /etc/apt/sources.list.d/launchpad_git-mainline.list
COPY etc/apt/sources.list.d/launchpad_git-stable.list /etc/apt/sources.list.d/launchpad_git-stable.list
RUN apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
git
RUN echo "=============================================" && \
echo git $(git --version) && \
echo "============================================="
##################################################################
# git-lfs official binary
##################################################################
RUN curl -fsSL https://packagecloud.io/github/git-lfs/gpgkey | gpg --dearmor > /etc/apt/keyrings/github_git-lfs-archive-keyring.gpg && \
rm -rfv /etc/apt/sources.list.d/github_git-lfs.list
COPY etc/apt/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 --no-install-recommends --no-install-suggests \
git \
git-lfs && \
git-lfs install --skip-repo
RUN echo "=============================================" && \
echo git $(git --version) && \
echo git-lfs $(git-lfs --version) && \
echo "============================================="
##################################################################
# gh official binary
##################################################################
RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg && \
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list && \
apt-get update && \
apt-get install -y --allow-unauthenticated --no-install-recommends --no-install-suggests \
gh
RUN echo "=============================================" && \
echo gh $(gh --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
##################################################################
# update file db
##################################################################
RUN updatedb

View File

@ -0,0 +1 @@
Acquire::Retries "9";

View File

@ -0,0 +1,2 @@
Acquire::https::Verify-Peer "false";
Acquire::https::Verify-Host "false";

View File

@ -0,0 +1 @@
APT::Get::AllowUnauthenticated "true";

View File

@ -0,0 +1 @@
Acquire::Check-Valid-Until no;

View File

@ -0,0 +1,19 @@
#------------------------------------------------------------------------------#
# OFFICIAL UBUNTU REPOS #
#------------------------------------------------------------------------------#
###### Ubuntu Main Repos
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble main multiverse restricted universe
###### Ubuntu Update Repos
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-backports main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-proposed main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-security main multiverse restricted universe
deb [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-updates main multiverse restricted universe
###### Ubuntu Sorurce Repos
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-backports main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-proposed main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-security main multiverse restricted universe
deb-src [trusted=yes] http://archive.ubuntu.com/ubuntu/ noble-updates main multiverse restricted universe

View File

@ -0,0 +1,2 @@
deb [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/ubuntu/ noble main
deb-src [signed-by=/etc/apt/keyrings/github_git-lfs-archive-keyring.gpg] https://packagecloud.io/github/git-lfs/ubuntu/ noble main

View File

@ -0,0 +1,5 @@
# mainline
deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu noble main
deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/candidate/ubuntu noble main

View File

@ -0,0 +1,3 @@
# stable
deb [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu noble main
deb-src [signed-by=/etc/apt/keyrings/launchpad-git.gpg] https://ppa.launchpadcontent.net/git-core/ppa/ubuntu noble main

View File

@ -0,0 +1,495 @@
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
trixie_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

View File

@ -0,0 +1,48 @@
# About
Hello. This folder contains sub-folders with custom tools such as `gosu`, `dumb-init` and etc.
Some child images could install to this folder custom compilled products. Example: `nginx`, `php`, etc.
All directories that contains binaryes (`<bin\sbin>`) will be added to `$PATH`.
# Structure
pattern: `/usr/local/epicmorg/<program-name>/<version>/<..some data and files..>`
example:
```
/usr/local/epicmorg/
|-- 7z
| `-- 7z2407
| |-- History.txt
| |-- License.txt
| |-- MANUAL
| |-- bin
| `-- readme.txt
|-- dumb-init
| `-- 1.2.5
| `-- bin
|-- gosu
| `-- 1.17
| `-- bin
|-- lazycli
| `-- 0.1.15
| `-- bin
|-- lazydocker
| `-- 0.23.3
| |-- LICENSE
| |-- README.md
| `-- bin
|-- lazygit
| `-- 0.42.0
| |-- LICENSE
| |-- README.md
| `-- bin
|-- lazynpm
| `-- 0.1.4
| |-- LICENSE
| |-- README.md
| `-- bin
`-- p4
`-- r23.2
`-- bin
```

View File

@ -0,0 +1,33 @@
-----BEGIN CERTIFICATE-----
MIIFwjCCA6qgAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwcDELMAkGA1UEBhMCUlUx
PzA9BgNVBAoMNlRoZSBNaW5pc3RyeSBvZiBEaWdpdGFsIERldmVsb3BtZW50IGFu
ZCBDb21tdW5pY2F0aW9uczEgMB4GA1UEAwwXUnVzc2lhbiBUcnVzdGVkIFJvb3Qg
Q0EwHhcNMjIwMzAxMjEwNDE1WhcNMzIwMjI3MjEwNDE1WjBwMQswCQYDVQQGEwJS
VTE/MD0GA1UECgw2VGhlIE1pbmlzdHJ5IG9mIERpZ2l0YWwgRGV2ZWxvcG1lbnQg
YW5kIENvbW11bmljYXRpb25zMSAwHgYDVQQDDBdSdXNzaWFuIFRydXN0ZWQgUm9v
dCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMfFOZ8pUAL3+r2n
qqE0Zp52selXsKGFYoG0GM5bwz1bSFtCt+AZQMhkWQheI3poZAToYJu69pHLKS6Q
XBiwBC1cvzYmUYKMYZC7jE5YhEU2bSL0mX7NaMxMDmH2/NwuOVRj8OImVa5s1F4U
zn4Kv3PFlDBjjSjXKVY9kmjUBsXQrIHeaqmUIsPIlNWUnimXS0I0abExqkbdrXbX
YwCOXhOO2pDUx3ckmJlCMUGacUTnylyQW2VsJIyIGA8V0xzdaeUXg0VZ6ZmNUr5Y
Ber/EAOLPb8NYpsAhJe2mXjMB/J9HNsoFMBFJ0lLOT/+dQvjbdRZoOT8eqJpWnVD
U+QL/qEZnz57N88OWM3rabJkRNdU/Z7x5SFIM9FrqtN8xewsiBWBI0K6XFuOBOTD
4V08o4TzJ8+Ccq5XlCUW2L48pZNCYuBDfBh7FxkB7qDgGDiaftEkZZfApRg2E+M9
G8wkNKTPLDc4wH0FDTijhgxR3Y4PiS1HL2Zhw7bD3CbslmEGgfnnZojNkJtcLeBH
BLa52/dSwNU4WWLubaYSiAmA9IUMX1/RpfpxOxd4Ykmhz97oFbUaDJFipIggx5sX
ePAlkTdWnv+RWBxlJwMQ25oEHmRguNYf4Zr/Rxr9cS93Y+mdXIZaBEE0KS2iLRqa
OiWBki9IMQU4phqPOBAaG7A+eP8PAgMBAAGjZjBkMB0GA1UdDgQWBBTh0YHlzlpf
BKrS6badZrHF+qwshzAfBgNVHSMEGDAWgBTh0YHlzlpfBKrS6badZrHF+qwshzAS
BgNVHRMBAf8ECDAGAQH/AgEEMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsF
AAOCAgEAALIY1wkilt/urfEVM5vKzr6utOeDWCUczmWX/RX4ljpRdgF+5fAIS4vH
tmXkqpSCOVeWUrJV9QvZn6L227ZwuE15cWi8DCDal3Ue90WgAJJZMfTshN4OI8cq
W9E4EG9wglbEtMnObHlms8F3CHmrw3k6KmUkWGoa+/ENmcVl68u/cMRl1JbW2bM+
/3A+SAg2c6iPDlehczKx2oa95QW0SkPPWGuNA/CE8CpyANIhu9XFrj3RQ3EqeRcS
AQQod1RNuHpfETLU/A2gMmvn/w/sx7TB3W5BPs6rprOA37tutPq9u6FTZOcG1Oqj
C/B7yTqgI7rbyvox7DEXoX7rIiEqyNNUguTk/u3SZ4VXE2kmxdmSh3TQvybfbnXV
4JbCZVaqiZraqc7oZMnRoWrXRG3ztbnbes/9qhRGI7PqXqeKJBztxRTEVj8ONs1d
WN5szTwaPIvhkhO3CO5ErU2rVdUr89wKpNXbBODFKRtgxUT70YpmJ46VVaqdAhOZ
D9EUUn4YaeLaS8AjSF/h7UkjOibNc4qVDiPP+rkehFWM66PVnP1Msh93tc+taIfC
EYVMxjh8zNbFuoc7fzvvrFILLe7ifvEIUqSVIC/AzplM/Jxw7buXFeGP1qVCBEHq
391d/9RAfaZ12zkwFsl+IKwE/OZxW8AHa9i1p4GO0YSNuczzEm4=
-----END CERTIFICATE-----

View File

@ -0,0 +1,41 @@
-----BEGIN CERTIFICATE-----
MIIHQjCCBSqgAwIBAgICEAIwDQYJKoZIhvcNAQELBQAwcDELMAkGA1UEBhMCUlUx
PzA9BgNVBAoMNlRoZSBNaW5pc3RyeSBvZiBEaWdpdGFsIERldmVsb3BtZW50IGFu
ZCBDb21tdW5pY2F0aW9uczEgMB4GA1UEAwwXUnVzc2lhbiBUcnVzdGVkIFJvb3Qg
Q0EwHhcNMjIwMzAyMTEyNTE5WhcNMjcwMzA2MTEyNTE5WjBvMQswCQYDVQQGEwJS
VTE/MD0GA1UECgw2VGhlIE1pbmlzdHJ5IG9mIERpZ2l0YWwgRGV2ZWxvcG1lbnQg
YW5kIENvbW11bmljYXRpb25zMR8wHQYDVQQDDBZSdXNzaWFuIFRydXN0ZWQgU3Vi
IENBMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA9YPqBKOk19NFymrE
wehzrhBEgT2atLezpduB24mQ7CiOa/HVpFCDRZzdxqlh8drku408/tTmWzlNH/br
HuQhZ/miWKOf35lpKzjyBd6TPM23uAfJvEOQ2/dnKGGJbsUo1/udKSvxQwVHpVv3
S80OlluKfhWPDEXQpgyFqIzPoxIQTLZ0deirZwMVHarZ5u8HqHetRuAtmO2ZDGQn
vVOJYAjls+Hiueq7Lj7Oce7CQsTwVZeP+XQx28PAaEZ3y6sQEt6rL06ddpSdoTMp
BnCqTbxW+eWMyjkIn6t9GBtUV45yB1EkHNnj2Ex4GwCiN9T84QQjKSr+8f0psGrZ
vPbCbQAwNFJjisLixnjlGPLKa5vOmNwIh/LAyUW5DjpkCx004LPDuqPpFsKXNKpa
L2Dm6uc0x4Jo5m+gUTVORB6hOSzWnWDj2GWfomLzzyjG81DRGFBpco/O93zecsIN
3SL2Ysjpq1zdoS01CMYxie//9zWvYwzI25/OZigtnpCIrcd2j1Y6dMUFQAzAtHE+
qsXflSL8HIS+IJEFIQobLlYhHkoE3avgNx5jlu+OLYe0dF0Ykx1PGNjbwqvTX37R
Cn32NMjlotW2QcGEZhDKj+3urZizp5xdTPZitA+aEjZM/Ni71VOdiOP0igbw6asZ
2fxdozZ1TnSSYNYvNATwthNmZysCAwEAAaOCAeUwggHhMBIGA1UdEwEB/wQIMAYB
Af8CAQAwDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBTR4XENCy2BTm6KSo9MI7NM
XqtpCzAfBgNVHSMEGDAWgBTh0YHlzlpfBKrS6badZrHF+qwshzCBxwYIKwYBBQUH
AQEEgbowgbcwOwYIKwYBBQUHMAKGL2h0dHA6Ly9yb3N0ZWxlY29tLnJ1L2NkcC9y
b290Y2Ffc3NsX3JzYTIwMjIuY3J0MDsGCCsGAQUFBzAChi9odHRwOi8vY29tcGFu
eS5ydC5ydS9jZHAvcm9vdGNhX3NzbF9yc2EyMDIyLmNydDA7BggrBgEFBQcwAoYv
aHR0cDovL3JlZXN0ci1wa2kucnUvY2RwL3Jvb3RjYV9zc2xfcnNhMjAyMi5jcnQw
gbAGA1UdHwSBqDCBpTA1oDOgMYYvaHR0cDovL3Jvc3RlbGVjb20ucnUvY2RwL3Jv
b3RjYV9zc2xfcnNhMjAyMi5jcmwwNaAzoDGGL2h0dHA6Ly9jb21wYW55LnJ0LnJ1
L2NkcC9yb290Y2Ffc3NsX3JzYTIwMjIuY3JsMDWgM6Axhi9odHRwOi8vcmVlc3Ry
LXBraS5ydS9jZHAvcm9vdGNhX3NzbF9yc2EyMDIyLmNybDANBgkqhkiG9w0BAQsF
AAOCAgEARBVzZls79AdiSCpar15dA5Hr/rrT4WbrOfzlpI+xrLeRPrUG6eUWIW4v
Sui1yx3iqGLCjPcKb+HOTwoRMbI6ytP/ndp3TlYua2advYBEhSvjs+4vDZNwXr/D
anbwIWdurZmViQRBDFebpkvnIvru/RpWud/5r624Wp8voZMRtj/cm6aI9LtvBfT9
cfzhOaexI/99c14dyiuk1+6QhdwKaCRTc1mdfNQmnfWNRbfWhWBlK3h4GGE9JK33
Gk8ZS8DMrkdAh0xby4xAQ/mSWAfWrBmfzlOqGyoB1U47WTOeqNbWkkoAP2ys94+s
Jg4NTkiDVtXRF6nr6fYi0bSOvOFg0IQrMXO2Y8gyg9ARdPJwKtvWX8VPADCYMiWH
h4n8bZokIrImVKLDQKHY4jCsND2HHdJfnrdL2YJw1qFskNO4cSNmZydw0Wkgjv9k
F+KxqrDKlB8MZu2Hclph6v/CZ0fQ9YuE8/lsHZ0Qc2HyiSMnvjgK5fDc3TD4fa8F
E8gMNurM+kV8PT8LNIM+4Zs+LKEV8nqRWBaxkIVJGekkVKO8xDBOG/aN62AZKHOe
GcyIdu7yNMMRihGVZCYr8rYiJoKiOzDqOkPkLOPdhtVlgnhowzHDxMHND/E2WA5p
ZHuNM/m0TXt2wTTPL7JH2YC0gPz/BvvSzjksgzU5rLbRyUKQkgU=
-----END CERTIFICATE-----

View File

@ -29,17 +29,13 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E03280
mono-xsp4
##################################################################
# cleaninig up
# cleanup
##################################################################
RUN apt purge policykit-1 -y && \
apt clean -y && \
apt autoclean -y && \
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/mc.patch && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/7z && \
rm -rfv /tmp/deb/* && \
rm -rfv /tmp/composer-setup.php && \
rm -rfv /tmp/amxx_base_latest.tar.gz && \
rm -rfv /tmp/atlassian-plugin-sdk.deb && \
rm -rfv /tmp/addons
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,8 +1,16 @@
FROM epicmorg/debian:wheezy
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
################################################################################
# https://github.com/linuxserver/docker-code-server/pkgs/container/code-server
################################################################################
FROM epicmorg/vscode-server:latest
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
##################################################################
# ARGuments
##################################################################
ENV BuildDocker true
ARG K_NODE_MAJOR_VERSION=22
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.6.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
@ -40,5 +48,7 @@ RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -0,0 +1,6 @@
#version: '3'
services:
app:
image: "epicmorg/vscode-server:nodejs"
build:
context: .

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -1,100 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=20
ARG K_JDK_FULL_VERSION=jdk-20.0.2
ARG K_JDK_VERSION=20.0.2
ARG K_JDK_BUILD_VERSION=9
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java20
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
java -version
##################################################################
# Additional settings
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Maven
##################################################################
ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
##################################################################
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
##################################################################
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
##################################################################
# kotlin-native-prebuilt-linux
##################################################################
ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-jdk20"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-jdk20"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -1,100 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=21
ARG K_JDK_FULL_VERSION=jdk-21.0.4
ARG K_JDK_VERSION=21.0.4
ARG K_JDK_BUILD_VERSION=7
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java21
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
java -version
##################################################################
# Additional settings
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Maven
##################################################################
ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
##################################################################
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
##################################################################
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
##################################################################
# kotlin-native-prebuilt-linux
##################################################################
ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-jdk21"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-jdk21"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -1,100 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=22
ARG K_JDK_FULL_VERSION=jdk-22.0.2
ARG K_JDK_VERSION=22.0.2
ARG K_JDK_BUILD_VERSION=9
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java21
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
java -version
##################################################################
# Additional settings
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Maven
##################################################################
ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
##################################################################
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
##################################################################
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
##################################################################
# kotlin-native-prebuilt-linux
##################################################################
ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,100 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_JDK_MAJOR_VERSION=22
ARG K_JDK_FULL_VERSION=jdk-22.0.2
ARG K_JDK_VERSION=22.0.2
ARG K_JDK_BUILD_VERSION=9
ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz
ENV JAVA_HOME=/usr/local/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}
ENV PATH=$PATH:${JAVA_HOME}/bin
##################################################################
# installing java21
##################################################################
ADD ${K_JDK_URL} /tmp
RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
java -version
##################################################################
# Additional settings
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin
RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH}
ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN}
##################################################################
# Maven
##################################################################
ENV MAVEN_HOME=${MAVEN_ROOT}
ENV M2_HOME=${MAVEN_ROOT}
ADD ${MAVEN_LINK} /tmp
RUN 7z x ${MAVEN_TEMP} -o${MAVEN_ROOT}
RUN chmod +x -R ${MAVEN_BIN}
RUN mvn -v
##################################################################
# GRADLE
##################################################################
ADD ${GRADLE_LINK} /tmp
RUN 7z x ${GRADLE_TEMP} -o${GRADLE_ROOT}
RUN chmod +x -R ${GRADLE_BIN}
RUN gradle -v
##################################################################
# kotlin-compiler
##################################################################
ADD ${KTC_LINK} /tmp
RUN 7z x ${KTC_TEMP} -o${KTC_ROOT}
RUN chmod +x -R ${KTC_BIN}
RUN kotlin -version
##################################################################
# kotlin-native-prebuilt-linux
##################################################################
ADD ${KNPL_LINK} /tmp
RUN tar -xvzf ${KNPL_TEMP} --directory ${KTC_ROOT}
RUN chmod +x -R ${KNPL_BIN}
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /tmp/* && \
rm -rfv /var/cache/apt/archives/*.deb
RUN updatedb

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-jdk22"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-jdk22"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -22,14 +22,14 @@ RUN tar -xvzf /tmp/zulu${K_JDK_VERSION}-jdk${K_JDK_BUILD_VERSION}-linux_x64.tar.
##################################################################
#ENV MAVEN_VERSION=3.9.8
#ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV MAVEN_ROOT=/usr/local/maven
#ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
#ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
#ENV MAVEN_BIN=${MAVEN_PATH}/bin
#ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV GRADLE_VERSION=7.6.4
#ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
#ENV GRADLE_ROOT=/usr/local/gradle
#ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
#ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
#ENV GRADLE_BIN=${GRADLE_PATH}/bin
#ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -37,7 +37,7 @@ RUN tar -xvzf /tmp/zulu${K_JDK_VERSION}-jdk${K_JDK_BUILD_VERSION}-linux_x64.tar.
#ENV KTC_VERSION=2.0.0
#ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
#ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
#ENV KTC_ROOT=/usr/local/kotlin
#ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
#ENV KTC_PATH=${KTC_ROOT}/kotlinc
#ENV KTC_BIN=${KTC_PATH}/bin

View File

@ -22,14 +22,14 @@ RUN tar -xvzf /tmp/zulu${K_JDK_VERSION}-jdk${K_JDK_BUILD_VERSION}-linux_x64.tar.
##################################################################
#ENV MAVEN_VERSION=3.9.8
#ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV MAVEN_ROOT=/usr/local/maven
#ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
#ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
#ENV MAVEN_BIN=${MAVEN_PATH}/bin
#ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV GRADLE_VERSION=7.6.4
#ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
#ENV GRADLE_ROOT=/usr/local/gradle
#ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
#ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
#ENV GRADLE_BIN=${GRADLE_PATH}/bin
#ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -37,7 +37,7 @@ RUN tar -xvzf /tmp/zulu${K_JDK_VERSION}-jdk${K_JDK_BUILD_VERSION}-linux_x64.tar.
#ENV KTC_VERSION=2.0.0
#ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
#ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
#ENV KTC_ROOT=/usr/local/kotlin
#ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
#ENV KTC_PATH=${KTC_ROOT}/kotlinc
#ENV KTC_BIN=${KTC_PATH}/bin

View File

@ -22,14 +22,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
#ENV MAVEN_VERSION=3.9.8
#ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV MAVEN_ROOT=/usr/local/maven
#ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
#ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
#ENV MAVEN_BIN=${MAVEN_PATH}/bin
#ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV GRADLE_VERSION=7.6.4
#ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
#ENV GRADLE_ROOT=/usr/local/gradle
#ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
#ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
#ENV GRADLE_BIN=${GRADLE_PATH}/bin
#ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -37,7 +37,7 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
#ENV KTC_VERSION=2.0.0
#ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
#ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
#ENV KTC_ROOT=/usr/local/kotlin
#ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
#ENV KTC_PATH=${KTC_ROOT}/kotlinc
#ENV KTC_BIN=${KTC_PATH}/bin

View File

@ -22,14 +22,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
#ENV MAVEN_VERSION=3.9.8
#ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV MAVEN_ROOT=/usr/local/maven
#ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
#ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
#ENV MAVEN_BIN=${MAVEN_PATH}/bin
#ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
#ENV GRADLE_VERSION=7.6.4
#ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
#ENV GRADLE_ROOT=/usr/local/gradle
#ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
#ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
#ENV GRADLE_BIN=${GRADLE_PATH}/bin
#ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -37,7 +37,7 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
#ENV KTC_VERSION=2.0.0
#ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
#ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
#ENV KTC_ROOT=/usr/local/kotlin
#ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
#ENV KTC_PATH=${KTC_ROOT}/kotlinc
#ENV KTC_BIN=${KTC_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -24,14 +24,14 @@ RUN tar -xvzf ${K_JDK_TEMP} --directory /usr/local && \
##################################################################
ENV MAVEN_VERSION=3.9.8
ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip
ENV MAVEN_ROOT=/usr/local/maven
ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION}
ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION}
ENV MAVEN_BIN=${MAVEN_PATH}/bin
ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip
ENV GRADLE_VERSION=8.8
ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip
ENV GRADLE_ROOT=/usr/local/gradle
ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION}
ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION}
ENV GRADLE_BIN=${GRADLE_PATH}/bin
ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
@ -39,14 +39,14 @@ ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip
ENV KTC_VERSION=2.0.0
ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip
ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip
ENV KTC_ROOT=/usr/local/kotlin
ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION}
ENV KTC_PATH=${KTC_ROOT}/kotlinc
ENV KTC_BIN=${KTC_PATH}/bin
ENV KNPL_VERSION=${KTC_VERSION}
ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz
ENV KNPL_ROOT=/usr/local/kotlin
ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION}
ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}
ENV KNPL_BIN=${KNPL_PATH}/bin

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=22
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.6.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 22.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=22
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.6.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 22.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

View File

@ -1,93 +0,0 @@
## TeamCity Minimal Build Agent
[<img src="http://jb.gg/badges/official.svg" height="20"/>](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
This is an official [JetBrains TeamCity](https://www.jetbrains.com/teamcity/) minimal build agent image.
<img src="https://raw.githubusercontent.com/JetBrains/teamcity-docker-images/master/logo/GitHub.png" height="20" align="center"/> More details about tags and components are [here](https://github.com/JetBrains/teamcity-docker-images/blob/master/generated/teamcity-minimal-agent.md).
The [TeamCity build agent](https://www.jetbrains.com/help/teamcity/build-agent.html) connects to the TeamCity server and spawns the actual build processes.
You can use the ```jetbrains/teamcity-server``` image to run a TeamCity server.
This minimal image adds just a TeamCity agent without any tools like VCS clients, etc. It is suitable for simple builds and can serve as a base for your custom images. For Java or .NET development we recommend using the default build agent image [jetbrains/teamcity-agent](https://hub.docker.com/r/jetbrains/teamcity-agent/).
## How to Use This Image
Pull the TeamCity minimal image from the Docker Hub Repository:
```
jetbrains/teamcity-minimal-agent
```
&nbsp;
and use the following command to start a container with TeamCity agent running inside
a Linux container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
jetbrains/teamcity-minimal-agent
```
&nbsp;
or a Windows container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>"
-v <path to agent config folder>:C:/BuildAgent/conf
jetbrains/teamcity-minimal-agent
```
where `<url to TeamCity server>` is the full URL for TeamCity server, accessible by the agent. Note that `localhost` will not generally not work as it will refer to the `localhost` inside the container.
`<path to agent config folder>` is the host machine directory to serve as the TeamCity agent config directory. We recommend providing this binding in order to persist the agent configuration, e.g. authorization on the server. Note that you should map a different folder for every new agent you create.
Since version 2020.1, TeamCity agent Docker images __run under a non-root user__. Refer to our [upgrade notes](https://www.jetbrains.com/help/teamcity/upgrade-notes.html#UpgradeNotes-AgentDockerimagesrunundernon-rootuser) for information on possible affected use cases.
When you run the agent for the first time, you should authorize it via the TeamCity server UI: go to the **Unauthorized Agents** page in your browser. See [more details](https://www.jetbrains.com/help/teamcity/build-agent.html).
All information about agent authorization is stored in agent's configuration folder. If you stop the container with the agent and then start a new one with the same config folder, the agent's name and authorization state will be preserved.
TeamCity agent does not need manual upgrade: it will upgrade itself automatically on connecting to an upgraded server.
### Agent Image Environment Variables
- **SERVER_URL** - URL of the TeamCity server agent will connect to
- **AGENT_NAME** - (optional) Name of the agent in TeamCity UI, autogenerated if omitted
- **AGENT_TOKEN** - (optional) Agent authorization token, if unset, the agent should be [authorized](https://www.jetbrains.com/help/teamcity/build-agent.html#BuildAgent-BuildAgentStatus) via TeamCity UI.
- **OWN_ADDRESS** - (optional, linux only) IP address build agent binds to, autodetected
- **OWN_PORT** - (optional, linux only) Port build agent binds to, 9090 by default
### Windows Containers Limitations
The details on the known problems in Windows containers are available in the [TeamCity documentation](https://www.jetbrains.com/help/teamcity/known-issues.html#KnownIssues-WindowsDockerContainers).
## Customization
You can customize the image via the usual Docker procedure:
1. Run the image
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
--name="my-customized-agent" \
jetbrains/teamcity-minimal-agent \
```
2. Enter the container
```
docker exec -it my-customized-agent bash
```
3. Change whatever you need
4. Exit and [create a new image](https://docs.docker.com/engine/reference/commandline/commit/) from the container
```
docker commit my-customized-agent <the registry where you what to store the image>
```
## License
The image is available under the [TeamCity license](https://www.jetbrains.com/teamcity/buy/license.html).
TeamCity is free for perpetual use with the limitation of 100 build configurations (jobs) and 3 agents. [Licensing details](https://www.jetbrains.com/help/teamcity/licensing-policy.html).
## Feedback
Report issues of suggestions to the official TeamCity [issue tracker](https://youtrack.jetbrains.com/issues/TW).
## Other TeamCity Images
* [TeamCity Server](https://hub.docker.com/r/jetbrains/teamcity-server/)
* [Build Agent](https://hub.docker.com/r/jetbrains/teamcity-agent/)

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-nodejs-current"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-nodejs-current"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=20
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.16.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 20.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=20
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.16.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 20.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

View File

@ -1,93 +0,0 @@
## TeamCity Minimal Build Agent
[<img src="http://jb.gg/badges/official.svg" height="20"/>](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
This is an official [JetBrains TeamCity](https://www.jetbrains.com/teamcity/) minimal build agent image.
<img src="https://raw.githubusercontent.com/JetBrains/teamcity-docker-images/master/logo/GitHub.png" height="20" align="center"/> More details about tags and components are [here](https://github.com/JetBrains/teamcity-docker-images/blob/master/generated/teamcity-minimal-agent.md).
The [TeamCity build agent](https://www.jetbrains.com/help/teamcity/build-agent.html) connects to the TeamCity server and spawns the actual build processes.
You can use the ```jetbrains/teamcity-server``` image to run a TeamCity server.
This minimal image adds just a TeamCity agent without any tools like VCS clients, etc. It is suitable for simple builds and can serve as a base for your custom images. For Java or .NET development we recommend using the default build agent image [jetbrains/teamcity-agent](https://hub.docker.com/r/jetbrains/teamcity-agent/).
## How to Use This Image
Pull the TeamCity minimal image from the Docker Hub Repository:
```
jetbrains/teamcity-minimal-agent
```
&nbsp;
and use the following command to start a container with TeamCity agent running inside
a Linux container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
jetbrains/teamcity-minimal-agent
```
&nbsp;
or a Windows container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>"
-v <path to agent config folder>:C:/BuildAgent/conf
jetbrains/teamcity-minimal-agent
```
where `<url to TeamCity server>` is the full URL for TeamCity server, accessible by the agent. Note that `localhost` will not generally not work as it will refer to the `localhost` inside the container.
`<path to agent config folder>` is the host machine directory to serve as the TeamCity agent config directory. We recommend providing this binding in order to persist the agent configuration, e.g. authorization on the server. Note that you should map a different folder for every new agent you create.
Since version 2020.1, TeamCity agent Docker images __run under a non-root user__. Refer to our [upgrade notes](https://www.jetbrains.com/help/teamcity/upgrade-notes.html#UpgradeNotes-AgentDockerimagesrunundernon-rootuser) for information on possible affected use cases.
When you run the agent for the first time, you should authorize it via the TeamCity server UI: go to the **Unauthorized Agents** page in your browser. See [more details](https://www.jetbrains.com/help/teamcity/build-agent.html).
All information about agent authorization is stored in agent's configuration folder. If you stop the container with the agent and then start a new one with the same config folder, the agent's name and authorization state will be preserved.
TeamCity agent does not need manual upgrade: it will upgrade itself automatically on connecting to an upgraded server.
### Agent Image Environment Variables
- **SERVER_URL** - URL of the TeamCity server agent will connect to
- **AGENT_NAME** - (optional) Name of the agent in TeamCity UI, autogenerated if omitted
- **AGENT_TOKEN** - (optional) Agent authorization token, if unset, the agent should be [authorized](https://www.jetbrains.com/help/teamcity/build-agent.html#BuildAgent-BuildAgentStatus) via TeamCity UI.
- **OWN_ADDRESS** - (optional, linux only) IP address build agent binds to, autodetected
- **OWN_PORT** - (optional, linux only) Port build agent binds to, 9090 by default
### Windows Containers Limitations
The details on the known problems in Windows containers are available in the [TeamCity documentation](https://www.jetbrains.com/help/teamcity/known-issues.html#KnownIssues-WindowsDockerContainers).
## Customization
You can customize the image via the usual Docker procedure:
1. Run the image
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
--name="my-customized-agent" \
jetbrains/teamcity-minimal-agent \
```
2. Enter the container
```
docker exec -it my-customized-agent bash
```
3. Change whatever you need
4. Exit and [create a new image](https://docs.docker.com/engine/reference/commandline/commit/) from the container
```
docker commit my-customized-agent <the registry where you what to store the image>
```
## License
The image is available under the [TeamCity license](https://www.jetbrains.com/teamcity/buy/license.html).
TeamCity is free for perpetual use with the limitation of 100 build configurations (jobs) and 3 agents. [Licensing details](https://www.jetbrains.com/help/teamcity/licensing-policy.html).
## Feedback
Report issues of suggestions to the official TeamCity [issue tracker](https://youtrack.jetbrains.com/issues/TW).
## Other TeamCity Images
* [TeamCity Server](https://hub.docker.com/r/jetbrains/teamcity-server/)
* [Build Agent](https://hub.docker.com/r/jetbrains/teamcity-agent/)

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-nodejs-lts"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-nodejs-lts"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -14,14 +14,12 @@ ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
RUN curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" --location ${K_NODE_URL}?$(date +%s) \
--header 'Cache-Control: no-cache, no-store' \
--header 'Pragma: no-cache' | tar xzv --strip-components=1 --directory /usr/local/ && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" --location ${K_NODE_HEADERS_URL}?$(date +%s) \
--header 'Cache-Control: no-cache, no-store' \
--header 'Pragma: no-cache' | tar xzv --strip-components=1 --directory /usr/local/
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
#RUN npm install -g pnpm yarn

View File

@ -14,14 +14,12 @@ ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
RUN curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" --location ${K_NODE_URL}?$(date +%s) \
--header 'Cache-Control: no-cache, no-store' \
--header 'Pragma: no-cache' | tar xzv --strip-components=1 --directory /usr/local/ && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN curl --user-agent "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Firefox/81.0" --location ${K_NODE_HEADERS_URL}?$(date +%s) \
--header 'Cache-Control: no-cache, no-store' \
--header 'Pragma: no-cache' | tar xzv --strip-components=1 --directory /usr/local/
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
#RUN npm install -g pnpm yarn

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=12
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.22.9
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 12.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm@6 yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=12
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.22.9
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 12.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm@6 yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

View File

@ -1,93 +0,0 @@
## TeamCity Minimal Build Agent
[<img src="http://jb.gg/badges/official.svg" height="20"/>](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
This is an official [JetBrains TeamCity](https://www.jetbrains.com/teamcity/) minimal build agent image.
<img src="https://raw.githubusercontent.com/JetBrains/teamcity-docker-images/master/logo/GitHub.png" height="20" align="center"/> More details about tags and components are [here](https://github.com/JetBrains/teamcity-docker-images/blob/master/generated/teamcity-minimal-agent.md).
The [TeamCity build agent](https://www.jetbrains.com/help/teamcity/build-agent.html) connects to the TeamCity server and spawns the actual build processes.
You can use the ```jetbrains/teamcity-server``` image to run a TeamCity server.
This minimal image adds just a TeamCity agent without any tools like VCS clients, etc. It is suitable for simple builds and can serve as a base for your custom images. For Java or .NET development we recommend using the default build agent image [jetbrains/teamcity-agent](https://hub.docker.com/r/jetbrains/teamcity-agent/).
## How to Use This Image
Pull the TeamCity minimal image from the Docker Hub Repository:
```
jetbrains/teamcity-minimal-agent
```
&nbsp;
and use the following command to start a container with TeamCity agent running inside
a Linux container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
jetbrains/teamcity-minimal-agent
```
&nbsp;
or a Windows container:
```
docker run -it -e SERVER_URL="<url to TeamCity server>"
-v <path to agent config folder>:C:/BuildAgent/conf
jetbrains/teamcity-minimal-agent
```
where `<url to TeamCity server>` is the full URL for TeamCity server, accessible by the agent. Note that `localhost` will not generally not work as it will refer to the `localhost` inside the container.
`<path to agent config folder>` is the host machine directory to serve as the TeamCity agent config directory. We recommend providing this binding in order to persist the agent configuration, e.g. authorization on the server. Note that you should map a different folder for every new agent you create.
Since version 2020.1, TeamCity agent Docker images __run under a non-root user__. Refer to our [upgrade notes](https://www.jetbrains.com/help/teamcity/upgrade-notes.html#UpgradeNotes-AgentDockerimagesrunundernon-rootuser) for information on possible affected use cases.
When you run the agent for the first time, you should authorize it via the TeamCity server UI: go to the **Unauthorized Agents** page in your browser. See [more details](https://www.jetbrains.com/help/teamcity/build-agent.html).
All information about agent authorization is stored in agent's configuration folder. If you stop the container with the agent and then start a new one with the same config folder, the agent's name and authorization state will be preserved.
TeamCity agent does not need manual upgrade: it will upgrade itself automatically on connecting to an upgraded server.
### Agent Image Environment Variables
- **SERVER_URL** - URL of the TeamCity server agent will connect to
- **AGENT_NAME** - (optional) Name of the agent in TeamCity UI, autogenerated if omitted
- **AGENT_TOKEN** - (optional) Agent authorization token, if unset, the agent should be [authorized](https://www.jetbrains.com/help/teamcity/build-agent.html#BuildAgent-BuildAgentStatus) via TeamCity UI.
- **OWN_ADDRESS** - (optional, linux only) IP address build agent binds to, autodetected
- **OWN_PORT** - (optional, linux only) Port build agent binds to, 9090 by default
### Windows Containers Limitations
The details on the known problems in Windows containers are available in the [TeamCity documentation](https://www.jetbrains.com/help/teamcity/known-issues.html#KnownIssues-WindowsDockerContainers).
## Customization
You can customize the image via the usual Docker procedure:
1. Run the image
```
docker run -it -e SERVER_URL="<url to TeamCity server>" \
-v <path to agent config folder>:/data/teamcity_agent/conf \
--name="my-customized-agent" \
jetbrains/teamcity-minimal-agent \
```
2. Enter the container
```
docker exec -it my-customized-agent bash
```
3. Change whatever you need
4. Exit and [create a new image](https://docs.docker.com/engine/reference/commandline/commit/) from the container
```
docker commit my-customized-agent <the registry where you what to store the image>
```
## License
The image is available under the [TeamCity license](https://www.jetbrains.com/teamcity/buy/license.html).
TeamCity is free for perpetual use with the limitation of 100 build configurations (jobs) and 3 agents. [Licensing details](https://www.jetbrains.com/help/teamcity/licensing-policy.html).
## Feedback
Report issues of suggestions to the official TeamCity [issue tracker](https://youtrack.jetbrains.com/issues/TW).
## Other TeamCity Images
* [TeamCity Server](https://hub.docker.com/r/jetbrains/teamcity-server/)
* [Build Agent](https://hub.docker.com/r/jetbrains/teamcity-agent/)

View File

@ -1,11 +0,0 @@
#version: '3'
services:
app:
image: "epicmorg/debian:squeeze-nodejs12"
build:
context: .
app-develop:
image: "epicmorg/debian:squeeze-develop-nodejs12"
build:
context: .
dockerfile: ./Dockerfile.develop

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=13
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.14.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 13.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm@6 yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,44 +0,0 @@
FROM epicmorg/debian:squeeze-develop
LABEL maintainer="EpicMorg DevTeam, developer@epicm.org"
ARG DEBIAN_FRONTEND=noninteractive
ARG K_NODE_MAJOR_VERSION=13
ARG K_NODE_VERSION=${K_NODE_MAJOR_VERSION}.14.0
ARG K_NODE_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-linux-x64.tar.gz
ARG K_NODE_HEADERS_URL=https://nodejs.org/dist/v${K_NODE_VERSION}/node-v${K_NODE_VERSION}-headers.tar.gz
##################################################################
# Node.js 13.x
##################################################################
RUN groupadd -g 1337 node && \
useradd -u 1337 --gid node --shell /bin/bash --create-home node
ADD ${K_NODE_URL} /tmp
ADD ${K_NODE_HEADERS_URL} /tmp
RUN tar -xvzf /tmp/node-v${K_NODE_VERSION}-linux-x64.tar.gz --strip-components=1 --directory /usr/local && \
tar -xvzf /tmp/node-v${K_NODE_VERSION}-headers.tar.gz --strip-components=1 --directory /usr/local && \
rm -rfv /usr/local/CHANGELOG.md /usr/local/LICENSE /usr/local/README.md
RUN npm install -g pnpm@6 yarn
##################################################################
# Version after install
##################################################################
RUN echo "=============================================" && \
echo node $(node --version) && \
echo npm $(npm --version) && \
echo yarn $(yarn --version) && \
echo pnpm $(pnpm --version) && \
echo "============================================="
##################################################################
# cleanup
##################################################################
RUN echo "clean up" && \
apt-get clean -y && \
apt-get autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
rm -rfv /var/cache/apt/archives/*.deb && \
rm -rfv /tmp/*

View File

@ -1,36 +0,0 @@
PIP_BREAK_SYSTEM_PACKAGES=1
all: app
app:
make build
make deploy
make clean
build:
kaniko-wrapper --version
dry:
make dry-run
test:
make dry-run
dry-run:
kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug --dry-run
build-compose:
docker-compose build --compress --parallel --progress plain
deploy:
kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:v1.23.2-debug
deploy-compose:
docker-compose push
clean:
docker container prune -f
docker image prune -f
docker network prune -f
docker volume prune -f
docker system prune -af

Some files were not shown because too many files have changed in this diff Show More