Commit d2b02e47 authored by nimrod's avatar nimrod
Browse files

Toolbx base image.

parent 339aedfc
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -195,3 +195,19 @@ push-postgres:
  needs:
    - job: build-postgres
      artifacts: true

# toolbx latest image:

build-toolbx:
  extends: .container-build-base
  variables:
    CONTEXT: toolbx

push-toolbx:
  extends: .container-push-base
  variables:
    CONTEXT: toolbx
    IMAGE: toolbx
  needs:
    - job: build-toolbx
      artifacts: true

toolbx/.dockerignore

0 → 100644
+3 −0
Original line number Diff line number Diff line
*
!preferences.d/*
!sources.d/*

toolbx/Dockerfile

0 → 100644
+38 −0
Original line number Diff line number Diff line
FROM docker.io/debian:testing-backports
SHELL ["/bin/bash", "-o", "pipefail", "-xc"]
# hadolint ignore=DL3008
RUN rm /etc/apt/apt.conf.d/docker-* && \
    apt-get update && \
    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
        ca-certificates \
        curl \
        gnupg \
        libnss-myhostname \
    && \
    export GNUPGHOME=/tmp/gnupghome && \
    mkdir --mode=0700 "$GNUPGHOME" && \
    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg > \
    /usr/share/keyrings/google-cloud.gpg && \
    curl https://pgp.mongodb.com/server-5.0.asc | \
    gpg --no-default-keyring --import --batch --keyring /usr/share/keyrings/mongodb.gpg && \
    curl https://cli-assets.heroku.com/apt/release.key | \
    gpg --no-default-keyring --import --batch --keyring /usr/share/keyrings/heroku.gpg && \
    curl https://apt.releases.hashicorp.com/gpg | \
    gpg --no-default-keyring --import --batch --keyring /usr/share/keyrings/hashicorp.gpg && \
    curl https://dl.cloudsmith.io/public/cloudposse/packages/gpg.7333C6FDEFA717CC.key | \
    gpg --no-default-keyring --import --batch --keyring /usr/share/keyrings/cloudposse.gpg && \
    curl https://repo.charm.sh/apt/gpg.key | \
    gpg --no-default-keyring --import --batch --keyring /usr/share/keyrings/charm.gpg && \
    gpg --no-default-keyring --keyring /usr/share/keyrings/percona.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 9334A25F8507EFA5 && \
    gpg --no-default-keyring --keyring /usr/share/keyrings/clickhouse.gpg --keyserver hkp://keyserver.ubuntu.com:80  --recv-keys 8919F6BD2B48D754 && \
    ln --symbolic --target /usr/local/bin/ /usr/libexec/flatpak-xdg-utils/* && \
    #mkdir /etc/krb5.conf.d && \
    echo 'VARIANT_ID=container' >> /etc/os-release && \
    touch /etc/localtime && \
    rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/*
COPY --chown=root:root sources.d/* /etc/apt/sources.list.d/
COPY --chown=root:root preferences.d/* /etc/apt/preferences.d/
# Testing that apt-get update works correctly.
RUN apt-get update && \
    rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/*
LABEL com.github.containers.toolbox="true"

toolbx/README.md

0 → 100644
+26 −0
Original line number Diff line number Diff line
# Toolbx

Base image for [Toolbx](https://containertoolbx.org/) images. It has the
following changes it make more interactive use oriented and suitable for
Toolbox:

- Removed Docker specific settings in APT.
- Use Flatpak XDG utils and add `flatpak-spawn` as they're more useful inside a
  toolbx container.
- Set the `VARIANT_ID` in `/etc/os-release`.
- Install `myhostname` nss plugin for cleaner hostname resolution.

Also. the following APT repositories are added:

- Heroku.
- Google Cloud.
- MongoDB.
- Hashicorp.
- [Cloud Posse](https://github.com/cloudposse/packages).
- [Charms](https://charm.sh/).
- Percona.
- ClickHouse.

This image is based in part on the [toolbx
image](https://github.com/toolbx-images/images) and my own
[workbench image](https://git.shore.co.il/shore/workbench).
+3 −0
Original line number Diff line number Diff line
Package: *
Pin: release o=https://cloudsmith.io
Pin-Priority: 400
Loading