Merge pull request #12679 from id/0311-docker-base-debian12
chore: switch default docker base to debian 12
This commit is contained in:
commit
228b2c1767
|
@ -69,7 +69,7 @@ permissions:
|
|||
jobs:
|
||||
build:
|
||||
runs-on: ${{ github.repository_owner == 'emqx' && fromJSON(format('["self-hosted","ephemeral","linux","{0}"]', matrix.arch)) || 'ubuntu-22.04' }}
|
||||
container: "ghcr.io/emqx/emqx-builder/${{ inputs.builder_vsn }}:${{ inputs.elixir_vsn }}-${{ inputs.otp_vsn }}-debian11"
|
||||
container: "ghcr.io/emqx/emqx-builder/${{ inputs.builder_vsn }}:${{ inputs.elixir_vsn }}-${{ inputs.otp_vsn }}-debian12"
|
||||
outputs:
|
||||
PKG_VSN: ${{ steps.build.outputs.PKG_VSN }}
|
||||
|
||||
|
@ -166,7 +166,7 @@ jobs:
|
|||
DOCKER_BUILD_NOCACHE: true
|
||||
DOCKER_PLATFORMS: linux/amd64,linux/arm64
|
||||
DOCKER_LOAD: true
|
||||
EMQX_RUNNER: 'public.ecr.aws/debian/debian:11-slim@sha256:22cfb3c06a7dd5e18d86123a73405664475b9d9fa209cbedcf4c50a25649cc74'
|
||||
EMQX_RUNNER: 'public.ecr.aws/debian/debian:12-slim'
|
||||
EMQX_DOCKERFILE: 'deploy/docker/Dockerfile'
|
||||
PKG_VSN: ${{ needs.build.outputs.PKG_VSN }}
|
||||
EMQX_BUILDER_VERSION: ${{ inputs.builder_vsn }}
|
||||
|
|
4
Makefile
4
Makefile
|
@ -7,8 +7,8 @@ REBAR = $(CURDIR)/rebar3
|
|||
BUILD = $(CURDIR)/build
|
||||
SCRIPTS = $(CURDIR)/scripts
|
||||
export EMQX_RELUP ?= true
|
||||
export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian11
|
||||
export EMQX_DEFAULT_RUNNER = public.ecr.aws/debian/debian:11-slim
|
||||
export EMQX_DEFAULT_BUILDER = ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian12
|
||||
export EMQX_DEFAULT_RUNNER = public.ecr.aws/debian/debian:12-slim
|
||||
export EMQX_REL_FORM ?= tgz
|
||||
export QUICER_DOWNLOAD_FROM_RELEASE = 1
|
||||
ifeq ($(OS),Windows_NT)
|
||||
|
|
26
build
26
build
|
@ -183,10 +183,10 @@ just_compile() {
|
|||
just_compile_elixir() {
|
||||
./scripts/pre-compile.sh "$PROFILE"
|
||||
rm -f rebar.lock
|
||||
# shellcheck disable=SC1010
|
||||
env MIX_ENV="$PROFILE" mix do local.hex --if-missing --force, \
|
||||
local.rebar rebar3 "${PWD}/rebar3" --if-missing --force, \
|
||||
deps.get
|
||||
env MIX_ENV="$PROFILE" mix local.rebar --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix local.rebar rebar3 "${PWD}/rebar3" --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix local.hex --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix deps.get
|
||||
env MIX_ENV="$PROFILE" mix compile
|
||||
}
|
||||
|
||||
|
@ -201,13 +201,11 @@ make_rel() {
|
|||
make_elixir_rel() {
|
||||
./scripts/pre-compile.sh "$PROFILE"
|
||||
export_elixir_release_vars "$PROFILE"
|
||||
# for some reason, this has to be run outside "do"...
|
||||
mix local.rebar --if-missing --force
|
||||
# shellcheck disable=SC1010
|
||||
mix do local.hex --if-missing --force, \
|
||||
local.rebar rebar3 "${PWD}/rebar3" --if-missing --force, \
|
||||
deps.get
|
||||
mix release --overwrite
|
||||
env MIX_ENV="$PROFILE" mix local.rebar --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix local.rebar rebar3 "${PWD}/rebar3" --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix local.hex --if-missing --force
|
||||
env MIX_ENV="$PROFILE" mix deps.get
|
||||
env MIX_ENV="$PROFILE" mix release --overwrite
|
||||
assert_no_excluded_deps emqx-enterprise emqx_telemetry
|
||||
}
|
||||
|
||||
|
@ -395,10 +393,10 @@ function is_ecr_and_enterprise() {
|
|||
fi
|
||||
}
|
||||
|
||||
## Build the default docker image based on debian 11.
|
||||
## Build the default docker image based on debian 12.
|
||||
make_docker() {
|
||||
local EMQX_BUILDER_VERSION="${EMQX_BUILDER_VERSION:-5.3-2}"
|
||||
local EMQX_BUILDER_PLATFORM="${EMQX_BUILDER_PLATFORM:-debian11}"
|
||||
local EMQX_BUILDER_PLATFORM="${EMQX_BUILDER_PLATFORM:-debian12}"
|
||||
local EMQX_BUILDER_OTP="${EMQX_BUILDER_OTP:-25.3.2-2}"
|
||||
local EMQX_BUILDER_ELIXIR="${EMQX_BUILDER_ELIXIR:-1.15.7}"
|
||||
local EMQX_BUILDER=${EMQX_BUILDER:-ghcr.io/emqx/emqx-builder/${EMQX_BUILDER_VERSION}:${EMQX_BUILDER_ELIXIR}-${EMQX_BUILDER_OTP}-${EMQX_BUILDER_PLATFORM}}
|
||||
|
@ -431,7 +429,7 @@ make_docker() {
|
|||
local PRODUCT_URL='https://www.emqx.io'
|
||||
local PRODUCT_DESCRIPTION='Official docker image for EMQX, the most scalable open-source MQTT broker for IoT, IIoT, and connected vehicles.'
|
||||
local DOCUMENTATION_URL='https://www.emqx.io/docs/en/latest/'
|
||||
## extra_deps is a comma separated list of debian 11 package names
|
||||
## extra_deps is a comma separated list of debian 12 package names
|
||||
local EXTRA_DEPS=''
|
||||
if [[ "$PROFILE" = *enterprise* ]]; then
|
||||
EXTRA_DEPS='libsasl2-2,libsasl2-modules-gssapi-mit'
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Upgrade docker image base from Debian 11 to Debian 12
|
|
@ -1,5 +1,5 @@
|
|||
ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian11@sha256:48b62a5636bd6bc59688fc98a498401fccf456fa63d843aa0b7279f3bc20b22e
|
||||
ARG RUN_FROM=public.ecr.aws/debian/debian:11-slim@sha256:22cfb3c06a7dd5e18d86123a73405664475b9d9fa209cbedcf4c50a25649cc74
|
||||
ARG BUILD_FROM=ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian12
|
||||
ARG RUN_FROM=public.ecr.aws/debian/debian:12-slim
|
||||
ARG SOURCE_TYPE=src # tgz
|
||||
|
||||
FROM ${BUILD_FROM} as builder_src
|
||||
|
@ -10,7 +10,7 @@ ARG PROFILE=emqx
|
|||
ARG PKG_VSN
|
||||
ARG SUFFIX
|
||||
ARG TARGETARCH
|
||||
ONBUILD COPY ${PROFILE}-${PKG_VSN}${SUFFIX}-debian11-$TARGETARCH.tar.gz /${PROFILE}.tar.gz
|
||||
ONBUILD COPY ${PROFILE}-${PKG_VSN}${SUFFIX}-debian12-$TARGETARCH.tar.gz /${PROFILE}.tar.gz
|
||||
|
||||
FROM builder_${SOURCE_TYPE} as builder
|
||||
|
||||
|
|
|
@ -7,15 +7,16 @@
|
|||
## $ docker build -f=Dockerfile.msodbc -t emqx-enterprise-with-msodbc:5.0.3-alpha.2 .
|
||||
## ```
|
||||
|
||||
ARG VERSION=5.2.0
|
||||
ARG VERSION=5.5.0
|
||||
FROM emqx/emqx-enterprise:$VERSION
|
||||
|
||||
USER root
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y gnupg2 curl apt-utils \
|
||||
&& . /etc/os-release \
|
||||
&& curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
||||
&& curl https://packages.microsoft.com/config/debian/11/prod.list > /etc/apt/sources.list.d/mssql-release.list \
|
||||
&& curl "https://packages.microsoft.com/config/debian/$VERSION_ID/prod.list" > /etc/apt/sources.list.d/mssql-release.list \
|
||||
&& apt-get update \
|
||||
&& ACCEPT_EULA=Y apt-get install -y msodbcsql17 unixodbc-dev \
|
||||
&& sed -i 's/ODBC Driver 17 for SQL Server/ms-sql/g' /etc/odbcinst.ini \
|
||||
|
|
2
mix.exs
2
mix.exs
|
@ -98,7 +98,7 @@ defmodule EMQXUmbrella.MixProject do
|
|||
# set by hackney (dependency)
|
||||
{:ssl_verify_fun, "1.1.7", override: true},
|
||||
{:rfc3339, github: "emqx/rfc3339", tag: "0.2.3", override: true},
|
||||
{:bcrypt, github: "emqx/erlang-bcrypt", tag: "0.6.1", override: true},
|
||||
{:bcrypt, github: "emqx/erlang-bcrypt", tag: "0.6.2", override: true},
|
||||
{:uuid, github: "okeuday/uuid", tag: "v2.0.6", override: true},
|
||||
{:quickrand, github: "okeuday/quickrand", tag: "v2.0.6", override: true}
|
||||
] ++
|
||||
|
|
|
@ -110,7 +110,7 @@
|
|||
{uuid, {git, "https://github.com/okeuday/uuid.git", {tag, "v2.0.6"}}},
|
||||
{ssl_verify_fun, "1.1.7"},
|
||||
{rfc3339, {git, "https://github.com/emqx/rfc3339.git", {tag, "0.2.3"}}},
|
||||
{bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.1"}}}
|
||||
{bcrypt, {git, "https://github.com/emqx/erlang-bcrypt.git", {tag, "0.6.2"}}}
|
||||
]}.
|
||||
|
||||
{xref_ignores,
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
## example:
|
||||
## ./scripts/buildx.sh --profile emqx --pkgtype tgz --arch arm64 \
|
||||
## --builder ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian11
|
||||
## --builder ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian12
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
|
@ -24,7 +24,7 @@ help() {
|
|||
echo "--arch amd64|arm64: Target arch to build the EMQX package for"
|
||||
echo "--src_dir <SRC_DIR>: EMQX source code in this dir, default to PWD"
|
||||
echo "--builder <BUILDER>: Builder image to pull"
|
||||
echo " E.g. ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian11"
|
||||
echo " E.g. ghcr.io/emqx/emqx-builder/5.3-2:1.15.7-26.2.1-2-debian12"
|
||||
}
|
||||
|
||||
die() {
|
||||
|
|
Loading…
Reference in New Issue