diff --git a/base/README.md b/base/README.md index 9f01f938..d8800bde 100644 --- a/base/README.md +++ b/base/README.md @@ -24,3 +24,9 @@ Copy the ballerina distribution deb installer to `devcontainer/` folder and exec Copy the ballerina distribution zip file to `docker/` folder and execute the following command(s) ```cd docker``` ```docker build --no-cache=true --build-arg BALLERINA_DIST= -t ballerina/ballerina-runtime: -f DockerfileWindows .``` + +### For image with ballerinax dependencies + +Execute the following command(s) +```cd docker``` +```docker build --no-cache=true --build-arg BALLERINA_VERSION= -f DockerfilePacked -t ballerina/ballerina-extension: .``` diff --git a/base/docker/DockerfilePacked b/base/docker/DockerfilePacked new file mode 100644 index 00000000..075e0aa7 --- /dev/null +++ b/base/docker/DockerfilePacked @@ -0,0 +1,28 @@ +# -------------------------------------------------------------------- +# Copyright (c) 2024, WSO2 LLC. (http://wso2.com). +# +# 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. +# ----------------------------------------------------------------------- + +# Ballerina version. +ARG BALLERINA_VERSION + +FROM ballerina/ballerina:${BALLERINA_VERSION} + +USER root + +# Copy null import ballerina file. +COPY ./extension.bal /home/ballerina +WORKDIR /home/ballerina + +RUN bal build extension.bal && rm extension.bal diff --git a/base/docker/extension.bal b/base/docker/extension.bal new file mode 100644 index 00000000..61bb1c10 --- /dev/null +++ b/base/docker/extension.bal @@ -0,0 +1,25 @@ +import ballerinax/postgresql as _; +import ballerinax/postgresql.driver as _; +import ballerinax/mysql as _; +import ballerinax/mysql.driver as _; +import ballerinax/mssql as _; +import ballerinax/mssql.driver as _; +import ballerinax/mongodb as _; +import ballerinax/oracledb as _; +import ballerinax/oracledb.driver as _; +import ballerinax/snowflake as _; +import ballerinax/snowflake.driver as _; +import ballerinax/redis as _; +import ballerinax/kafka as _; +import ballerinax/rabbitmq as _; +import ballerinax/nats as _; +import ballerinax/jaeger as _; +import ballerinax/choreo as _; +import ballerinax/prometheus as _; +import ballerinax/zipkin as _; +import ballerinax/newrelic as _; +import ballerina/crypto as _; +import ballerina/sql as _; + +public function main() { +}