airgapped docker build
This commit is contained in:
parent
d7320b9b01
commit
7ea05c571b
|
@ -3,6 +3,7 @@ builder/*
|
||||||
.temp/
|
.temp/
|
||||||
packages/server/runtime_apps/
|
packages/server/runtime_apps/
|
||||||
.idea/
|
.idea/
|
||||||
|
bb-airgapped.tar.gz
|
||||||
|
|
||||||
# Logs
|
# Logs
|
||||||
logs
|
logs
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
const fs = require("fs")
|
||||||
|
const { execSync } = require("child_process")
|
||||||
|
const path = require("path")
|
||||||
|
|
||||||
|
const IMAGES = {
|
||||||
|
worker: "budibase/worker",
|
||||||
|
apps: "budibase/apps",
|
||||||
|
proxy: "envoyproxy/envoy:v1.16-latest",
|
||||||
|
minio: "minio/minio",
|
||||||
|
couch: "ibmcom/couchdb3",
|
||||||
|
curl: "curlimages/curl",
|
||||||
|
redis: "redis",
|
||||||
|
watchtower: "containrrr/watchtower"
|
||||||
|
}
|
||||||
|
|
||||||
|
const FILES = {
|
||||||
|
COMPOSE: "docker-compose.yaml",
|
||||||
|
ENVOY: "envoy.yaml"
|
||||||
|
}
|
||||||
|
|
||||||
|
const OUTPUT_DIR = path.join(__dirname, "../", "bb-airgapped")
|
||||||
|
|
||||||
|
function copyFile(file) {
|
||||||
|
fs.copyFileSync(
|
||||||
|
path.join(__dirname, "../", "../", file),
|
||||||
|
path.join(OUTPUT_DIR, file)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
// create output dir
|
||||||
|
console.log(`Creating ${OUTPUT_DIR} for build..`)
|
||||||
|
fs.rmdirSync(OUTPUT_DIR, { recursive: true })
|
||||||
|
fs.mkdirSync(OUTPUT_DIR)
|
||||||
|
|
||||||
|
// package images into tar files
|
||||||
|
for (let image in IMAGES) {
|
||||||
|
console.log(`Creating tar for ${image}..`)
|
||||||
|
execSync(`docker save ${IMAGES[image]} -o ${OUTPUT_DIR}/${image}.tar`)
|
||||||
|
}
|
||||||
|
|
||||||
|
// copy config files
|
||||||
|
copyFile(FILES.COMPOSE)
|
||||||
|
copyFile(FILES.ENVOY)
|
||||||
|
|
||||||
|
// compress
|
||||||
|
execSync(`tar -czf bb-airgapped.tar.gz hosting/scripts/bb-airgapped`)
|
||||||
|
|
||||||
|
// clean up
|
||||||
|
fs.rmdirSync(OUTPUT_DIR, { recursive: true })
|
|
@ -46,6 +46,7 @@
|
||||||
"build:docker": "lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh $BUDIBASE_RELEASE_VERSION && cd -",
|
"build:docker": "lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh $BUDIBASE_RELEASE_VERSION && cd -",
|
||||||
"build:docker:production": "lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh $BUDIBASE_RELEASE_VERSION release && cd -",
|
"build:docker:production": "lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh $BUDIBASE_RELEASE_VERSION release && cd -",
|
||||||
"build:docker:develop": "node scripts/pinVersions && lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh develop && cd -",
|
"build:docker:develop": "node scripts/pinVersions && lerna run build:docker && cd hosting/scripts/linux/ && ./release-to-docker-hub.sh develop && cd -",
|
||||||
|
"build:docker:airgap": "node hosting/scripts/airgapped/airgappedDockerBuild",
|
||||||
"release:helm": "./scripts/release_helm_chart.sh",
|
"release:helm": "./scripts/release_helm_chart.sh",
|
||||||
"env:multi:enable": "lerna run env:multi:enable",
|
"env:multi:enable": "lerna run env:multi:enable",
|
||||||
"env:multi:disable": "lerna run env:multi:disable",
|
"env:multi:disable": "lerna run env:multi:disable",
|
||||||
|
|
Loading…
Reference in New Issue