Namespace
library
Image / Tag
ghost:5.107.0
Content Digest
sha256:3758a5a93d6fb82b69e99e30411130f72a83e0f54d08ee491278d09b3603b55b
Details
Created

2025-01-17 15:19:15 UTC

Size

165 MB

Content Digest
Environment
GHOST_CLI_VERSION

1.26.1

GHOST_CONTENT

/var/lib/ghost/content

GHOST_INSTALL

/var/lib/ghost

GHOST_VERSION

5.107.0

GOSU_VERSION

1.17

NODE_ENV

production

NODE_VERSION

18.20.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:af302e5c37e9dc1dbe2eadc8f5059d82a914066b541b0d1a6daa91d0cc55057d - 16.34% (26.9 MB)

[#001] sha256:a300235e633344a155950045006d20f37d2b4de5a2c56675e6892f4745fc99ed - 0.0% (3.23 KB)

[#002] sha256:84f59221c168210ea169f82075da8dd65201601f1bad84e4a11d2ca1626047d3 - 22.15% (36.5 MB)

[#003] sha256:7379a8ffad202ddcb780cd81fa85cc8936190861a0032e311913c0304b9af9d8 - 0.99% (1.63 MB)

[#004] sha256:c81de1a11b673b439574ea70373ee101abeb767d25590f8b28fc1ac83add3beb - 0.0% (447 Bytes)

[#005] sha256:2cc9830ffdd4e2c6c3074b8c9d01707d651ef78dbe36637b91b4321cd8c152ce - 0.84% (1.38 MB)

[#006] sha256:c9f2dd3c20b504cb012c504773525e4a436ad7b8bd813da95429754a3a197286 - 6.33% (10.4 MB)

[#007] sha256:3da615369404d8a1b99903980714e4dd441ddc09b705254e91fd4eab7587af50 - 53.34% (87.8 MB)

[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#009] sha256:db24f0c55cfecd1558c5e979166197dba59c1526fbc5f190a02538caf6a780f4 - 0.0% (541 Bytes)


History
2024-11-15 23:05:18 UTC (debuerreotype 0.15)

# debian.sh --arch 'amd64' out/ 'bookworm' '@1736726400'

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=18.20.5

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates gnupg wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV NODE_ENV=production

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CLI_VERSION=1.26.1

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; npm install -g "ghost-cli@$GHOST_CLI_VERSION"; npm cache clean --force # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_INSTALL=/var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CONTENT=/var/lib/ghost/content

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_VERSION=5.107.0

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$GHOST_INSTALL"; chown node:node "$GHOST_INSTALL"; savedAptMark="$(apt-mark showmanual)"; aptPurge=; installCmd='gosu node ghost install "$GHOST_VERSION" --db mysql --dbhost mysql --no-prompt --no-stack --no-setup --dir "$GHOST_INSTALL"'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; eval "$installCmd"; fi; cd "$GHOST_INSTALL"; gosu node ghost config --no-prompt --ip '::' --port 2368 --url 'http://localhost:2368'; gosu node ghost config paths.contentPath "$GHOST_CONTENT"; gosu node ln -s config.production.json "$GHOST_INSTALL/config.development.json"; readlink -f "$GHOST_INSTALL/config.development.json"; mv "$GHOST_CONTENT" "$GHOST_INSTALL/content.orig"; mkdir -p "$GHOST_CONTENT"; chown node:node "$GHOST_CONTENT"; chmod 1777 "$GHOST_CONTENT"; cd "$GHOST_INSTALL/current"; packages="$(node -p ' var ghost = require("./package.json"); var transform = require("./node_modules/@tryghost/image-transform/package.json"); [ "sharp@" + transform.optionalDependencies["sharp"], "sqlite3@" + ghost.optionalDependencies["sqlite3"], ].join(" ") ')"; if echo "$packages" | grep 'undefined'; then exit 1; fi; for package in $packages; do installCmd='gosu node yarn add "$package" --force'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; case "$package" in sharp@*) echo >&2 "sorry: libvips 8.10 in Debian bullseye is not new enough (8.12.2+) for sharp 0.30 😞"; continue ;; esac; eval "$installCmd --build-from-source"; fi; done; if [ -n "$aptPurge" ]; then apt-mark showmanual | xargs apt-mark auto > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove; rm -rf /var/lib/apt/lists/*; fi; gosu node yarn cache clean; gosu node npm cache clean --force; npm cache clean --force; rm -rv /tmp/yarn* /tmp/v8* # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

WORKDIR /var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/ghost/content]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

EXPOSE map[2368/tcp:{}]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

CMD ["node" "current/index.js"]

Details
Created

2025-01-17 15:19:15 UTC

Size

177 MB

Content Digest
Environment
GHOST_CLI_VERSION

1.26.1

GHOST_CONTENT

/var/lib/ghost/content

GHOST_INSTALL

/var/lib/ghost

GHOST_VERSION

5.107.0

GOSU_VERSION

1.17

NODE_ENV

production

NODE_VERSION

18.20.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:f7fde15b664589586a61b714ca6b43dec045d0f187d81d4eb050918e17b0ff1e - 12.91% (22.8 MB)

[#001] sha256:f285995e799be4f2b80199a18ba1da9200c37db49b5a907574d3b951f08d72e9 - 0.0% (3.24 KB)

[#002] sha256:4915ffb688c79b7d99d2d4327ecd0851e609d332292d7cb79724ff4f2f20933a - 18.84% (33.3 MB)

[#003] sha256:d20d7bd3a9a3c81104848f430b423f52606de55e19b7b2eea1d4efc6cfd477b7 - 0.92% (1.63 MB)

[#004] sha256:185cc99bdf7710cb51e60239d75fc9b3e42f1e4de5a2400f7156f708f7566dfd - 0.0% (448 Bytes)

[#005] sha256:ab02ceb2966324b71906942b7bc6e30e55cd2f5282a024d950f00f87a43ab90b - 0.76% (1.35 MB)

[#006] sha256:cdd20b8975404f61af19e94c287df783b4fe9379dcbbcad629e9e07021ef542b - 5.9% (10.4 MB)

[#007] sha256:f21a2448e58a43de151ba4f3525ed115f1acc970227214f868b52b150fe7bcb0 - 60.66% (107 MB)

[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#009] sha256:20b84ccebb1822c44dc56a9d228de43de7ad255e1302940c92af6ed415f3c4cc - 0.0% (543 Bytes)


History
2024-11-15 23:05:18 UTC (debuerreotype 0.15)

# debian.sh --arch 'armhf' out/ 'bookworm' '@1736726400'

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=18.20.5

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates gnupg wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV NODE_ENV=production

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CLI_VERSION=1.26.1

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; npm install -g "ghost-cli@$GHOST_CLI_VERSION"; npm cache clean --force # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_INSTALL=/var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CONTENT=/var/lib/ghost/content

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_VERSION=5.107.0

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$GHOST_INSTALL"; chown node:node "$GHOST_INSTALL"; savedAptMark="$(apt-mark showmanual)"; aptPurge=; installCmd='gosu node ghost install "$GHOST_VERSION" --db mysql --dbhost mysql --no-prompt --no-stack --no-setup --dir "$GHOST_INSTALL"'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; eval "$installCmd"; fi; cd "$GHOST_INSTALL"; gosu node ghost config --no-prompt --ip '::' --port 2368 --url 'http://localhost:2368'; gosu node ghost config paths.contentPath "$GHOST_CONTENT"; gosu node ln -s config.production.json "$GHOST_INSTALL/config.development.json"; readlink -f "$GHOST_INSTALL/config.development.json"; mv "$GHOST_CONTENT" "$GHOST_INSTALL/content.orig"; mkdir -p "$GHOST_CONTENT"; chown node:node "$GHOST_CONTENT"; chmod 1777 "$GHOST_CONTENT"; cd "$GHOST_INSTALL/current"; packages="$(node -p ' var ghost = require("./package.json"); var transform = require("./node_modules/@tryghost/image-transform/package.json"); [ "sharp@" + transform.optionalDependencies["sharp"], "sqlite3@" + ghost.optionalDependencies["sqlite3"], ].join(" ") ')"; if echo "$packages" | grep 'undefined'; then exit 1; fi; for package in $packages; do installCmd='gosu node yarn add "$package" --force'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; case "$package" in sharp@*) echo >&2 "sorry: libvips 8.10 in Debian bullseye is not new enough (8.12.2+) for sharp 0.30 😞"; continue ;; esac; eval "$installCmd --build-from-source"; fi; done; if [ -n "$aptPurge" ]; then apt-mark showmanual | xargs apt-mark auto > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove; rm -rf /var/lib/apt/lists/*; fi; gosu node yarn cache clean; gosu node npm cache clean --force; npm cache clean --force; rm -rv /tmp/yarn* /tmp/v8* # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

WORKDIR /var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/ghost/content]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

EXPOSE map[2368/tcp:{}]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

CMD ["node" "current/index.js"]

Details
Created

2025-01-17 15:19:15 UTC

Size

165 MB

Content Digest
Environment
GHOST_CLI_VERSION

1.26.1

GHOST_CONTENT

/var/lib/ghost/content

GHOST_INSTALL

/var/lib/ghost

GHOST_VERSION

5.107.0

GOSU_VERSION

1.17

NODE_ENV

production

NODE_VERSION

18.20.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:7ce705000c390df8b2edde0e8b9c65a6677da4503a8f8fd89b355a3f827a275f - 16.17% (26.7 MB)

[#001] sha256:d6a58c8645b4304ad465a00d0dae6b3425953ebbf13bb69428a33a15911c3ada - 0.0% (3.23 KB)

[#002] sha256:3edb59b74adb8334bcca04aef10af49a9de4f91354fa354817a74f391f162e58 - 22.09% (36.5 MB)

[#003] sha256:b682b106b6bd3adac827bcef4557c50dff479d55617eecda3db8494aead474e6 - 0.99% (1.63 MB)

[#004] sha256:e63221a7fbec01f5ab5267f59a0621504e623a5f53d7463b1e74e1f621a9ca74 - 0.0% (446 Bytes)

[#005] sha256:2006460afbc389e8fa0f1930cbf7c6c39a14483c1ddcbef05cd2ff4e4dbc54bc - 0.79% (1.31 MB)

[#006] sha256:bb73c93a3ce18b675d3083abc8d60886d4f5140bf71ad3db59a6bad6de60c09d - 6.3% (10.4 MB)

[#007] sha256:1af7e3d78b2dbfd7fd4d52f3a8134a97c3dd914425a9a28ffd515d551be0ceb3 - 53.65% (88.7 MB)

[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#009] sha256:a1113f03c17b951066c2aef11f2543faafbcea133b6875b814f209d01f7a5cb5 - 0.0% (542 Bytes)


History
2024-11-15 23:05:18 UTC (debuerreotype 0.15)

# debian.sh --arch 'arm64' out/ 'bookworm' '@1736726400'

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=18.20.5

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates gnupg wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV NODE_ENV=production

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CLI_VERSION=1.26.1

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; npm install -g "ghost-cli@$GHOST_CLI_VERSION"; npm cache clean --force # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_INSTALL=/var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CONTENT=/var/lib/ghost/content

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_VERSION=5.107.0

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$GHOST_INSTALL"; chown node:node "$GHOST_INSTALL"; savedAptMark="$(apt-mark showmanual)"; aptPurge=; installCmd='gosu node ghost install "$GHOST_VERSION" --db mysql --dbhost mysql --no-prompt --no-stack --no-setup --dir "$GHOST_INSTALL"'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; eval "$installCmd"; fi; cd "$GHOST_INSTALL"; gosu node ghost config --no-prompt --ip '::' --port 2368 --url 'http://localhost:2368'; gosu node ghost config paths.contentPath "$GHOST_CONTENT"; gosu node ln -s config.production.json "$GHOST_INSTALL/config.development.json"; readlink -f "$GHOST_INSTALL/config.development.json"; mv "$GHOST_CONTENT" "$GHOST_INSTALL/content.orig"; mkdir -p "$GHOST_CONTENT"; chown node:node "$GHOST_CONTENT"; chmod 1777 "$GHOST_CONTENT"; cd "$GHOST_INSTALL/current"; packages="$(node -p ' var ghost = require("./package.json"); var transform = require("./node_modules/@tryghost/image-transform/package.json"); [ "sharp@" + transform.optionalDependencies["sharp"], "sqlite3@" + ghost.optionalDependencies["sqlite3"], ].join(" ") ')"; if echo "$packages" | grep 'undefined'; then exit 1; fi; for package in $packages; do installCmd='gosu node yarn add "$package" --force'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; case "$package" in sharp@*) echo >&2 "sorry: libvips 8.10 in Debian bullseye is not new enough (8.12.2+) for sharp 0.30 😞"; continue ;; esac; eval "$installCmd --build-from-source"; fi; done; if [ -n "$aptPurge" ]; then apt-mark showmanual | xargs apt-mark auto > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove; rm -rf /var/lib/apt/lists/*; fi; gosu node yarn cache clean; gosu node npm cache clean --force; npm cache clean --force; rm -rv /tmp/yarn* /tmp/v8* # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

WORKDIR /var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/ghost/content]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

EXPOSE map[2368/tcp:{}]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

CMD ["node" "current/index.js"]

Details
Created

2025-01-17 15:19:15 UTC

Size

177 MB

Content Digest
Environment
GHOST_CLI_VERSION

1.26.1

GHOST_CONTENT

/var/lib/ghost/content

GHOST_INSTALL

/var/lib/ghost

GHOST_VERSION

5.107.0

GOSU_VERSION

1.17

NODE_ENV

production

NODE_VERSION

18.20.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:70e5167c90e251fcf2a687213601657926417de61cc905425399c9fcffb3d50f - 17.23% (30.6 MB)

[#001] sha256:5523dfe9336d555c5e0afc6ca4656e8ac78255582723643b6b4c529a944d66aa - 0.0% (3.23 KB)

[#002] sha256:6a3ab2717a6a8c4f00f63a25533df73738aaa06cde265b053d16c774538c9f17 - 21.69% (38.5 MB)

[#003] sha256:0255ca8fde01cf0a259da542875e0c1ecc5e5ee65a494fbc7f002e6cb50108e4 - 0.92% (1.63 MB)

[#004] sha256:13e957d42cc4cab908eb3911a2fa1465d708d01bd691671a534b6b0a36ab0872 - 0.0% (446 Bytes)

[#005] sha256:f71a4a3f4891562d8de70912f14239952081cbffde0865a42dd6996aca8a8249 - 0.73% (1.3 MB)

[#006] sha256:2e16eb9cfacbfdbe58664b90a208325bdc67d60f06bb0714da0508eb67b71b5a - 5.88% (10.4 MB)

[#007] sha256:a043cf231135d68d38cd04063fed8e4427e86ba7b50cf452bdc79113f185bb52 - 53.55% (95 MB)

[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#009] sha256:75e9156fc049a0a89c41ff8f77eb7efffbf58d99295bfc8d492ff8ed55c37d82 - 0.0% (541 Bytes)


History
2024-11-15 23:05:18 UTC (debuerreotype 0.15)

# debian.sh --arch 'ppc64el' out/ 'bookworm' '@1736726400'

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=18.20.5

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates gnupg wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV NODE_ENV=production

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CLI_VERSION=1.26.1

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; npm install -g "ghost-cli@$GHOST_CLI_VERSION"; npm cache clean --force # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_INSTALL=/var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CONTENT=/var/lib/ghost/content

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_VERSION=5.107.0

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$GHOST_INSTALL"; chown node:node "$GHOST_INSTALL"; savedAptMark="$(apt-mark showmanual)"; aptPurge=; installCmd='gosu node ghost install "$GHOST_VERSION" --db mysql --dbhost mysql --no-prompt --no-stack --no-setup --dir "$GHOST_INSTALL"'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; eval "$installCmd"; fi; cd "$GHOST_INSTALL"; gosu node ghost config --no-prompt --ip '::' --port 2368 --url 'http://localhost:2368'; gosu node ghost config paths.contentPath "$GHOST_CONTENT"; gosu node ln -s config.production.json "$GHOST_INSTALL/config.development.json"; readlink -f "$GHOST_INSTALL/config.development.json"; mv "$GHOST_CONTENT" "$GHOST_INSTALL/content.orig"; mkdir -p "$GHOST_CONTENT"; chown node:node "$GHOST_CONTENT"; chmod 1777 "$GHOST_CONTENT"; cd "$GHOST_INSTALL/current"; packages="$(node -p ' var ghost = require("./package.json"); var transform = require("./node_modules/@tryghost/image-transform/package.json"); [ "sharp@" + transform.optionalDependencies["sharp"], "sqlite3@" + ghost.optionalDependencies["sqlite3"], ].join(" ") ')"; if echo "$packages" | grep 'undefined'; then exit 1; fi; for package in $packages; do installCmd='gosu node yarn add "$package" --force'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; case "$package" in sharp@*) echo >&2 "sorry: libvips 8.10 in Debian bullseye is not new enough (8.12.2+) for sharp 0.30 😞"; continue ;; esac; eval "$installCmd --build-from-source"; fi; done; if [ -n "$aptPurge" ]; then apt-mark showmanual | xargs apt-mark auto > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove; rm -rf /var/lib/apt/lists/*; fi; gosu node yarn cache clean; gosu node npm cache clean --force; npm cache clean --force; rm -rv /tmp/yarn* /tmp/v8* # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

WORKDIR /var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/ghost/content]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

EXPOSE map[2368/tcp:{}]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

CMD ["node" "current/index.js"]

Details
Created

2025-01-17 15:19:15 UTC

Size

171 MB

Content Digest
Environment
GHOST_CLI_VERSION

1.26.1

GHOST_CONTENT

/var/lib/ghost/content

GHOST_INSTALL

/var/lib/ghost

GHOST_VERSION

5.107.0

GOSU_VERSION

1.17

NODE_ENV

production

NODE_VERSION

18.20.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:310acd011b0fc666229ef81942693adcf97c49991b6d41b858d0bb251bfe23d5 - 15.01% (25.6 MB)

[#001] sha256:8b2a614653c4a5b67d69cef861fd45d07a6cca5360d0bf79d929fad8b001e758 - 0.0% (3.24 KB)

[#002] sha256:22598cd2683800cf16fdec602b60116262a4b32c940e9425ed97dbdcedf406c3 - 21.5% (36.7 MB)

[#003] sha256:1c798720cdb1931b67330bd998ae75a1debce007cf12e0025103a2fa8b799c2f - 0.96% (1.63 MB)

[#004] sha256:62863659e78270c09cde1fea6734f66ed9b6269c7f1480fb0ac54adf53ada9e2 - 0.0% (446 Bytes)

[#005] sha256:2d71c83b5cd65564e7b0b2ab0f8567e84d9ef96e1264e47e8a99aced86f4de03 - 0.79% (1.34 MB)

[#006] sha256:8e25ef447dfbacfa8e96415821f80f4f8a6017df492b8d3c4dcdda188798633b - 6.11% (10.4 MB)

[#007] sha256:f679f427174b27f9805d8315a0fdbe5120f14753f4d1c57c8b80b5cd6e07f7d3 - 55.63% (95 MB)

[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#009] sha256:8cd587105eb9c1f917ad997a1c28729a15f9bd711785f65a9cd0ca11e8485309 - 0.0% (544 Bytes)


History
2024-11-15 23:05:18 UTC (debuerreotype 0.15)

# debian.sh --arch 's390x' out/ 'bookworm' '@1736726400'

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=18.20.5

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in C0D6248439F1D5604AAFFB4021D900FFDB233756 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2024-11-15 23:05:18 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GOSU_VERSION=1.17

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates gnupg wget; rm -rf /var/lib/apt/lists/*; dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch"; wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; gpgconf --kill all; rm -rf "$GNUPGHOME" /usr/local/bin/gosu.asc; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; chmod +x /usr/local/bin/gosu; gosu --version; gosu nobody true # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV NODE_ENV=production

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CLI_VERSION=1.26.1

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; npm install -g "ghost-cli@$GHOST_CLI_VERSION"; npm cache clean --force # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_INSTALL=/var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_CONTENT=/var/lib/ghost/content

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENV GHOST_VERSION=5.107.0

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; mkdir -p "$GHOST_INSTALL"; chown node:node "$GHOST_INSTALL"; savedAptMark="$(apt-mark showmanual)"; aptPurge=; installCmd='gosu node ghost install "$GHOST_VERSION" --db mysql --dbhost mysql --no-prompt --no-stack --no-setup --dir "$GHOST_INSTALL"'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; eval "$installCmd"; fi; cd "$GHOST_INSTALL"; gosu node ghost config --no-prompt --ip '::' --port 2368 --url 'http://localhost:2368'; gosu node ghost config paths.contentPath "$GHOST_CONTENT"; gosu node ln -s config.production.json "$GHOST_INSTALL/config.development.json"; readlink -f "$GHOST_INSTALL/config.development.json"; mv "$GHOST_CONTENT" "$GHOST_INSTALL/content.orig"; mkdir -p "$GHOST_CONTENT"; chown node:node "$GHOST_CONTENT"; chmod 1777 "$GHOST_CONTENT"; cd "$GHOST_INSTALL/current"; packages="$(node -p ' var ghost = require("./package.json"); var transform = require("./node_modules/@tryghost/image-transform/package.json"); [ "sharp@" + transform.optionalDependencies["sharp"], "sqlite3@" + ghost.optionalDependencies["sqlite3"], ].join(" ") ')"; if echo "$packages" | grep 'undefined'; then exit 1; fi; for package in $packages; do installCmd='gosu node yarn add "$package" --force'; if ! eval "$installCmd"; then aptPurge=1; apt-get update; apt-get install -y --no-install-recommends g++ make python3; case "$package" in sharp@*) echo >&2 "sorry: libvips 8.10 in Debian bullseye is not new enough (8.12.2+) for sharp 0.30 😞"; continue ;; esac; eval "$installCmd --build-from-source"; fi; done; if [ -n "$aptPurge" ]; then apt-mark showmanual | xargs apt-mark auto > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; apt-get purge -y --auto-remove; rm -rf /var/lib/apt/lists/*; fi; gosu node yarn cache clean; gosu node npm cache clean --force; npm cache clean --force; rm -rv /tmp/yarn* /tmp/v8* # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

WORKDIR /var/lib/ghost

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

VOLUME [/var/lib/ghost/content]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin # buildkit

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

EXPOSE map[2368/tcp:{}]

2025-01-17 15:19:15 UTC (buildkit.dockerfile.v0)

CMD ["node" "current/index.js"]

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete