Project

General

Profile

Snipe-IT » History » Version 1

Redmine Admin, 10/25/2026 04:31 PM

1 1 Redmine Admin
# Snipe-IT
2
3
Containers `site-snipeit` (`docker.io/snipe/snipe-it`, Apache :80) +  
4
5
`db-snipeit` (`mariadb:11`) on `net-snipeit`. Data volume `app-snipeit-data`  
6
7
at **`/var/lib/snipeit`** (uploads, backups, OAuth keys) — app code is in the  
8
9
image. Secrets: `snipeit-db-root-password`, `snipeit-db-password`,  
10
11
`snipeit-app-key`.
12
13
Key env (behind NPM): `APP_URL=https://assets.mdsdefense.com`,  
14
15
`APP_FORCE_TLS=true`, `APP_TRUSTED_PROXIES=*`, `SECURE_COOKIES=true`,  
16
17
`DB_HOST=db-snipeit`, `APP_KEY` from secret. **`APP_KEY` must never change**  
18
19
— it encrypts fields in the DB; back the secret up with the DB.
20
21
```
22
# generate APP_KEY once (before first start)
23
podman run --rm docker.io/snipe/snipe-it:latest php artisan key:generate --show
24
printf '%s' 'base64:...' | podman secret create snipeit-app-key -
25
26
# first start runs migrations; watch it
27
podman logs -f site-snipeit
28
29
# artisan inside the container
30
podman exec -it site-snipeit php artisan about
31
podman exec -it site-snipeit php artisan snipeit:backup
32
podman exec -it site-snipeit php artisan config:clear   # after env changes + restart
33
34
# DB (same MariaDB recipe as WordPress)
35
podman exec -it db-snipeit sh -c 'mariadb -uroot -p"$MYSQL_ROOT_PASSWORD"'
36
podman exec db-snipeit sh -c 'mariadb-dump -uroot -p"$MYSQL_ROOT_PASSWORD" snipeit' > ~/tmp/snipeit-$(date +%F).sql
37
```
38
39
Upgrade: pin the image tag in the unit (`podman image inspect … --format '{{index .Labels "org.opencontainers.image.version"}}'`), dump the DB, change  
40
41
the tag, `daemon-reload`, restart — migrations run on start.
42
43
---
44
45
*Source: `dmz-web-podman-cheatsheet.md` v1.1.1 in the `dmz-web-deploy` repo ([Releases](#)). Edit the wiki and the repo copy together.*