mirror of
https://github.com/invoiceninja/dockerfiles.git
synced 2026-01-06 14:37:26 +01:00
Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ff3b7263f5 | ||
|
|
ba896fcc03 | ||
|
|
b53ed7c914 | ||
|
|
e3fd4afb7d | ||
|
|
afceccfaf6 | ||
|
|
320cdc961d | ||
|
|
7e466b38a3 | ||
|
|
c5bb7960c3 | ||
|
|
3bf4174cbf | ||
|
|
18550bcf3e | ||
|
|
83bfb1b22f | ||
|
|
e4b3e0f0f1 | ||
|
|
a060c70d3f | ||
|
|
d8749fa049 | ||
|
|
febb70263c | ||
|
|
4b6b287906 | ||
|
|
e0bb394346 | ||
|
|
914bebebf6 | ||
|
|
e617f2d808 | ||
|
|
3a4f138f6a | ||
|
|
ce9ce4fd26 | ||
|
|
d01706a734 | ||
|
|
00e54c9c23 | ||
|
|
4ea7218cd8 | ||
|
|
e161a85133 | ||
|
|
d27c1a22d8 | ||
|
|
83dbf94c2b | ||
|
|
c0ee1a5521 | ||
|
|
018e0e7b2a | ||
|
|
07a211bc13 | ||
|
|
4c9ae7e92f | ||
|
|
fe1ff5c496 | ||
|
|
3a0d184fb2 | ||
|
|
42c62adf1a | ||
|
|
7a72c2ef16 | ||
|
|
974df2fa20 | ||
|
|
7629f51492 | ||
|
|
977e2001f0 | ||
|
|
a520f32385 | ||
|
|
9b63fc3fbc | ||
|
|
cbaf961012 | ||
|
|
797aa6bdf8 | ||
|
|
103b912467 | ||
|
|
7a171b96c7 |
2
.github/workflows/build-image-v5.yaml
vendored
2
.github/workflows/build-image-v5.yaml
vendored
@@ -16,7 +16,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
docker:
|
docker:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
|||||||
14
.github/workflows/publish-image.yaml
vendored
14
.github/workflows/publish-image.yaml
vendored
@@ -11,7 +11,7 @@ on:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
docker:
|
docker:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
@@ -31,9 +31,9 @@ jobs:
|
|||||||
if [[ $VERSION =~ ^5\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
if [[ $VERSION =~ ^5\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||||
TAGS="$TAGS,${DOCKER_IMAGE}:latest"
|
TAGS="$TAGS,${DOCKER_IMAGE}:latest"
|
||||||
fi
|
fi
|
||||||
echo ::set-output name=tags::${TAGS}
|
echo "tags=${TAGS}" >> $GITHUB_OUTPUT
|
||||||
echo ::set-output name=version::${VERSION}
|
echo "version=${VERSION}" >> $GITHUB_OUTPUT
|
||||||
echo ::set-output name=major::${MAJOR}
|
echo "major=${MAJOR}" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Set up QEMU
|
- name: Set up QEMU
|
||||||
uses: docker/setup-qemu-action@v1
|
uses: docker/setup-qemu-action@v1
|
||||||
@@ -48,9 +48,9 @@ jobs:
|
|||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: /tmp/.buildx-cache
|
path: /tmp/.buildx-cache
|
||||||
key: ${{ runner.os }}-buildx-${{ steps.prep.outputs.major }}-${{ hashFiles('alpine/${{ steps.prep.outputs.major }}/cache_buster') }}-${{ github.sha }}
|
key: ${{ runner.os }}-buildx-5-${{ hashFiles('alpine/5/cache_buster') }}-${{ github.sha }}
|
||||||
restore-keys: |
|
restore-keys: |
|
||||||
${{ runner.os }}-buildx-${{ steps.prep.outputs.major }}-${{ hashFiles('alpine/${{ steps.prep.outputs.major }}/cache_buster') }}-
|
${{ runner.os }}-buildx-5-${{ hashFiles('alpine/5/cache_buster') }}-
|
||||||
|
|
||||||
- name: Login to DockerHub
|
- name: Login to DockerHub
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
@@ -79,4 +79,4 @@ jobs:
|
|||||||
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
|
||||||
|
|
||||||
- name: Image digest
|
- name: Image digest
|
||||||
run: echo ${{ steps.docker_build.outputs.digest }}
|
run: echo ${{ steps.docker_build.outputs.digest }}
|
||||||
@@ -1,10 +1,15 @@
|
|||||||

|
|
||||||
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
||||||
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
[](https://hub.docker.com/r/invoiceninja/invoiceninja)
|
||||||
[](https://artifacthub.io/packages/search?repo=invoiceninja)
|
[](https://artifacthub.io/packages/search?repo=invoiceninja)
|
||||||
[](https://github.com/invoiceninja/dockerfiles/actions/workflows/publish-image.yaml)
|
[](https://github.com/invoiceninja/dockerfiles/actions/workflows/publish-image.yaml)
|
||||||
[](https://github.com/invoiceninja/dockerfiles/actions/workflows/build-image-v5.yaml)
|
[](https://github.com/invoiceninja/dockerfiles/actions/workflows/build-image-v5.yaml)
|
||||||
|
|
||||||
|
# Deprecation Notice
|
||||||
|
|
||||||
|
The master branch is not longer receiving active updates. We will continue to tag new releases whilst compatibility with underlying packages remains, however we will not be updating this image going forward.
|
||||||
|
|
||||||
|
Instead, please use the debian branch [here](https://github.com/invoiceninja/dockerfiles/tree/debian) this image is a completely fresh start based on the debian image and allows improved package support.
|
||||||
|
|
||||||
# Docker for [Invoice Ninja](https://www.invoiceninja.com/)
|
# Docker for [Invoice Ninja](https://www.invoiceninja.com/)
|
||||||
|
|
||||||
:crown: **Features**
|
:crown: **Features**
|
||||||
|
|||||||
@@ -1,30 +1,28 @@
|
|||||||
|
ARG ALPINE_VERSION=3.20
|
||||||
ARG PHP_VERSION=8.2
|
ARG PHP_VERSION=8.2
|
||||||
ARG BAK_STORAGE_PATH=/var/www/app/docker-backup-storage/
|
ARG BAK_STORAGE_PATH=/var/www/app/docker-backup-storage/
|
||||||
ARG BAK_PUBLIC_PATH=/var/www/app/docker-backup-public/
|
ARG BAK_PUBLIC_PATH=/var/www/app/docker-backup-public/
|
||||||
|
|
||||||
# Get Invoice Ninja and install nodejs packages
|
# Get Invoice Ninja and install nodejs packages
|
||||||
FROM --platform=$BUILDPLATFORM node:lts-alpine as nodebuild
|
FROM --platform=$BUILDPLATFORM node:lts-alpine${ALPINE_VERSION} as nodebuild
|
||||||
|
|
||||||
# Download Invoice Ninja
|
# Download Invoice Ninja
|
||||||
ARG INVOICENINJA_VERSION
|
ARG INVOICENINJA_VERSION
|
||||||
ARG REPOSITORY=invoiceninja/invoiceninja
|
ARG REPOSITORY=invoiceninja/invoiceninja
|
||||||
ARG FILENAME=invoiceninja.tar
|
ARG FILENAME=invoiceninja.tar.gz
|
||||||
|
|
||||||
RUN set -eux; apk add curl unzip grep
|
RUN set -eux; apk add curl unzip grep
|
||||||
|
|
||||||
RUN DOWNLOAD_URL=$(curl -s "https://api.github.com/repos/invoiceninja/invoiceninja/releases/latest" | grep -o '"browser_download_url": "[^"]*invoiceninja.tar"' | cut -d '"' -f 4) && \
|
|
||||||
curl -LJO "$DOWNLOAD_URL" && \
|
|
||||||
mv invoiceninja.tar /tmp/ninja.tar
|
|
||||||
|
|
||||||
# Extract Invoice Ninja
|
# Extract Invoice Ninja
|
||||||
RUN mkdir -p /var/www/app \
|
RUN mkdir -p /var/www/app
|
||||||
&& tar -xvf /tmp/ninja.tar -C /var/www/app/ \
|
RUN curl -sL "https://github.com/invoiceninja/invoiceninja/releases/latest/download/invoiceninja.tar.gz" | \
|
||||||
&& mkdir -p /var/www/app/public/logo /var/www/app/storage
|
tar -xz -C /var/www/app/
|
||||||
|
RUN mkdir -p /var/www/app/public/logo /var/www/app/storage
|
||||||
|
|
||||||
WORKDIR /var/www/app
|
WORKDIR /var/www/app
|
||||||
|
|
||||||
# Prepare php image
|
# Prepare php image
|
||||||
FROM php:${PHP_VERSION}-fpm-alpine as phpbuild
|
FROM php:${PHP_VERSION}-fpm-alpine${ALPINE_VERSION} as phpbuild
|
||||||
|
|
||||||
LABEL maintainer="David Bomba <turbo124@gmail.com>"
|
LABEL maintainer="David Bomba <turbo124@gmail.com>"
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
php artisan db:seed --force
|
php artisan db:seed --force
|
||||||
|
php artisan cache:clear
|
||||||
|
|
||||||
# Build up array of arguments...
|
# Build up array of arguments...
|
||||||
if [[ ! -z "${IN_USER_EMAIL}" ]]; then
|
if [[ ! -z "${IN_USER_EMAIL}" ]]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user