Compare commits
24 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
753cb98ca3 | |
|
|
b9836c3af2 | |
|
|
27bf52cf3e | |
|
|
5dea11c4d4 | |
|
|
35c19d0fc8 | |
|
|
cd42632628 | |
|
|
09c897aa22 | |
|
|
656b118826 | |
|
|
f134a44bc7 | |
|
|
5add31ee7a | |
|
|
2d5c453350 | |
|
|
942f978ed2 | |
|
|
52f38a3771 | |
|
|
a24c19c503 | |
|
|
f13a6bf5e4 | |
|
|
52f80cc7ca | |
|
|
a7ebc148e8 | |
|
|
636495e062 | |
|
|
6e735fd431 | |
|
|
671f5e9411 | |
|
|
d9ff19fd30 | |
|
|
8b3ded51b5 | |
|
|
302f6464bb | |
|
|
dabfc38a92 |
|
|
@ -35,19 +35,11 @@ jobs:
|
|||
name: Get Version of NetBox Docker
|
||||
run: echo "version=$(cat VERSION)" >>"$GITHUB_OUTPUT"
|
||||
shell: bash
|
||||
- id: qemu-setup
|
||||
name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
- id: buildx-setup
|
||||
name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- id: docker-build
|
||||
name: Build the image with '${{ matrix.build_cmd }}'
|
||||
- id: check-build-needed
|
||||
name: Check if the build is needed for '${{ matrix.build_cmd }}'
|
||||
env:
|
||||
CHECK_ONLY: "true"
|
||||
run: ${{ matrix.build_cmd }}
|
||||
- id: test-image
|
||||
name: Test the image
|
||||
run: IMAGE="${FINAL_DOCKER_TAG}" ./test.sh
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
# docker.io
|
||||
- id: docker-io-login
|
||||
name: Login to docker.io
|
||||
|
|
@ -56,7 +48,15 @@ jobs:
|
|||
registry: docker.io
|
||||
username: ${{ secrets.dockerhub_username }}
|
||||
password: ${{ secrets.dockerhub_password }}
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
if: steps.check-build-needed.outputs.skipped != 'true'
|
||||
- id: buildx-setup
|
||||
name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
version: "lab:latest"
|
||||
driver: cloud
|
||||
endpoint: "netboxcommunity/netbox-default"
|
||||
if: steps.check-build-needed.outputs.skipped != 'true'
|
||||
# quay.io
|
||||
- id: quay-io-login
|
||||
name: Login to Quay.io
|
||||
|
|
@ -65,7 +65,7 @@ jobs:
|
|||
registry: quay.io
|
||||
username: ${{ secrets.quayio_username }}
|
||||
password: ${{ secrets.quayio_password }}
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
if: steps.check-build-needed.outputs.skipped != 'true'
|
||||
# ghcr.io
|
||||
- id: ghcr-io-login
|
||||
name: Login to GitHub Container Registry
|
||||
|
|
@ -74,11 +74,11 @@ jobs:
|
|||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
if: steps.check-build-needed.outputs.skipped != 'true'
|
||||
- id: build-and-push
|
||||
name: Push the image
|
||||
run: ${{ matrix.build_cmd }} --push
|
||||
if: steps.docker-build.outputs.skipped != 'true'
|
||||
if: steps.check-build-needed.outputs.skipped != 'true'
|
||||
env:
|
||||
BUILDX_PLATFORM: ${{ matrix.platform }}
|
||||
BUILDX_BUILDER_NAME: ${{ steps.buildx-setup.outputs.name }}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
*.sql.gz
|
||||
.netbox
|
||||
.python-version
|
||||
docker-compose.override.yml
|
||||
*.pem
|
||||
configuration/*
|
||||
!configuration/configuration.py
|
||||
|
|
|
|||
12
Dockerfile
12
Dockerfile
|
|
@ -1,5 +1,5 @@
|
|||
ARG FROM
|
||||
FROM ${FROM} as builder
|
||||
FROM ${FROM} AS builder
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive \
|
||||
&& apt-get update -qq \
|
||||
|
|
@ -46,7 +46,7 @@ RUN \
|
|||
###
|
||||
|
||||
ARG FROM
|
||||
FROM ${FROM} as main
|
||||
FROM ${FROM} AS main
|
||||
|
||||
RUN export DEBIAN_FRONTEND=noninteractive \
|
||||
&& apt-get update -qq \
|
||||
|
|
@ -64,15 +64,15 @@ RUN export DEBIAN_FRONTEND=noninteractive \
|
|||
openssl \
|
||||
python3 \
|
||||
tini \
|
||||
&& curl --silent --output /etc/apt/keyrings/nginx-keyring.gpg \
|
||||
&& curl --silent --output /usr/share/keyrings/nginx-keyring.gpg \
|
||||
https://unit.nginx.org/keys/nginx-keyring.gpg \
|
||||
&& echo "deb [signed-by=/etc/apt/keyrings/nginx-keyring.gpg] https://packages.nginx.org/unit/ubuntu/ mantic unit" \
|
||||
&& echo "deb [signed-by=/usr/share/keyrings/nginx-keyring.gpg] https://packages.nginx.org/unit/ubuntu/ noble unit" \
|
||||
> /etc/apt/sources.list.d/unit.list \
|
||||
&& apt-get update -qq \
|
||||
&& apt-get install \
|
||||
--yes -qq --no-install-recommends \
|
||||
unit=1.32.1-1~mantic \
|
||||
unit-python3.12=1.32.1-1~mantic \
|
||||
unit=1.33.0-1~noble \
|
||||
unit-python3.12=1.33.0-1~noble \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY --from=builder /opt/netbox/venv /opt/netbox/venv
|
||||
|
|
|
|||
7
build.sh
7
build.sh
|
|
@ -103,6 +103,8 @@ GH_ACTION If defined, special 'echo' statements are enabled that set the
|
|||
- FINAL_DOCKER_TAG: The final value of the DOCKER_TAG env variable
|
||||
${_GREEN}Default:${_CLEAR} undefined
|
||||
|
||||
CHECK_ONLY Only checks if the build is needed and sets the GH Action output.
|
||||
|
||||
${_BOLD}Examples:${_CLEAR}
|
||||
|
||||
${0} master
|
||||
|
|
@ -355,6 +357,11 @@ else
|
|||
fi
|
||||
gh_echo "::endgroup::"
|
||||
|
||||
if [ "${CHECK_ONLY}" = "true" ]; then
|
||||
echo "Only check if build needed was requested. Exiting"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
###
|
||||
# Build the image
|
||||
###
|
||||
|
|
|
|||
|
|
@ -0,0 +1,21 @@
|
|||
services:
|
||||
netbox:
|
||||
ports:
|
||||
- "8000:8080"
|
||||
# If you want the Nginx unit status page visible from the
|
||||
# outside of the container add the following port mapping:
|
||||
# - "8001:8081"
|
||||
# healthcheck:
|
||||
# Time for which the health check can fail after the container is started.
|
||||
# This depends mostly on the performance of your database. On the first start,
|
||||
# when all tables need to be created the start_period should be higher than on
|
||||
# subsequent starts. For the first start after major version upgrades of NetBox
|
||||
# the start_period might also need to be set higher.
|
||||
# Default value in our docker-compose.yml is 60s
|
||||
# start_period: 90s
|
||||
# environment:
|
||||
# SKIP_SUPERUSER: "false"
|
||||
# SUPERUSER_API_TOKEN: ""
|
||||
# SUPERUSER_EMAIL: ""
|
||||
# SUPERUSER_NAME: ""
|
||||
# SUPERUSER_PASSWORD: ""
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
services:
|
||||
netbox: &netbox
|
||||
image: docker.io/netboxcommunity/netbox:${VERSION-v4.1-3.0.0}
|
||||
image: docker.io/netboxcommunity/netbox:${VERSION-v4.1-3.0.2}
|
||||
depends_on:
|
||||
- postgres
|
||||
- redis
|
||||
|
|
|
|||
|
|
@ -2,4 +2,4 @@ django-auth-ldap==4.8.0
|
|||
django-storages[azure,boto3,dropbox,google,libcloud,sftp]==1.14.4
|
||||
dulwich==0.22.1
|
||||
python3-saml==1.16.0 --no-binary lxml,xmlsec
|
||||
sentry-sdk[django]==2.12.0
|
||||
sentry-sdk[django]==2.14.0
|
||||
|
|
|
|||
Loading…
Reference in New Issue