mirror of
https://github.com/nickyeoman/docker-compose-cookbooks.git
synced 2026-09-03 18:36:22 +00:00
updated template for gui db
This commit is contained in:
+54
-2
@@ -1,4 +1,56 @@
|
|||||||
# Adminer
|
# Adminer
|
||||||
|
|
||||||
Work in Progress, dockerhub says unmaintained.
|
## Overview
|
||||||
Db gui
|
|
||||||
|
Adminer is a full-featured database management tool in a single PHP file. This stack runs Adminer with a tmpfs-backed PHP session directory — no persistent storage required.
|
||||||
|
|
||||||
|
## Project Details
|
||||||
|
|
||||||
|
- **Project Repository:** [https://github.com/vrana/adminer](https://github.com/vrana/adminer)
|
||||||
|
- **Container Image:** [Docker Hub](https://hub.docker.com/_/adminer)
|
||||||
|
- **Documentation:** [https://www.adminer.org/](https://www.adminer.org/)
|
||||||
|
- **Reverse Proxy Port:** `8080`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:${ADMINER_PORT:-8082} and enter your database credentials
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
ADMINER_DEFAULT_SERVER – default database host shown in the login form (default: mariadb)
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
No persistent volumes — PHP session data is stored on a tmpfs mount.
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires the external `proxy` network (Nginx Proxy Manager). An internal bridge network `internal` is available for connecting to database containers.
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name adminer \
|
||||||
|
--tmpfs /var/lib/php:rw,noexec,nosuid,size=64M \
|
||||||
|
-e ADMINER_DEFAULT_SERVER=mariadb \
|
||||||
|
-p 8082:8080 \
|
||||||
|
--network proxy \
|
||||||
|
adminer:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
- Adminer is a single-script PHP app with no config file — all settings are passed via environment variables at runtime.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: ADMINER_DEV
|
||||||
|
Compose file path: adminer_dev/compose.yaml
|
||||||
|
Additional env file (optional): adminer_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" adminer_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
# Adminer
|
||||||
|
|
||||||
|
services:
|
||||||
|
adminer:
|
||||||
|
image: ${ADMINER_IMAGE:-adminer:latest}
|
||||||
|
restart: ${ADMINER_RESTART:-unless-stopped}
|
||||||
|
|
||||||
|
tmpfs:
|
||||||
|
- /var/lib/php:rw,noexec,nosuid,size=64M
|
||||||
|
|
||||||
|
environment:
|
||||||
|
- ADMINER_DEFAULT_SERVER=${ADMINER_DEFAULT_SERVER:-mariadb}
|
||||||
|
|
||||||
|
ports:
|
||||||
|
- "${ADMINER_PORT:-8082}:8080"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
- internal
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
|
internal:
|
||||||
|
driver: bridge
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
services:
|
|
||||||
|
|
||||||
adminer:
|
|
||||||
image: adminer:latest
|
|
||||||
container_name: adminer
|
|
||||||
environment:
|
|
||||||
ADMINER_DEFAULT_SERVER: ${ADMINER_DEFAULT_SERVER:-mariadb}
|
|
||||||
restart: unless-stopped
|
|
||||||
security_opt:
|
|
||||||
- no-new-privileges:true
|
|
||||||
read_only: true
|
|
||||||
tmpfs:
|
|
||||||
- /var/lib/php:rw,noexec,nosuid,size=64M
|
|
||||||
@@ -1,6 +1,9 @@
|
|||||||
COOKBOOK=/git/docker-compose-cookbooks #HELP: cookbooks
|
# ===== Paths =====
|
||||||
VOL_PATH=./data/ #HELP: volpath
|
VOL_PATH=/data
|
||||||
TZ="America/Vancouver"
|
VOL_PROJECTS=/data/projects
|
||||||
|
|
||||||
# ADMINER
|
# ===== Adminer =====
|
||||||
|
ADMINER_IMAGE=adminer:latest
|
||||||
|
ADMINER_RESTART=unless-stopped
|
||||||
|
ADMINER_PORT=8082
|
||||||
ADMINER_DEFAULT_SERVER=mariadb
|
ADMINER_DEFAULT_SERVER=mariadb
|
||||||
|
|||||||
@@ -1,10 +1,65 @@
|
|||||||
# phpmyadmin
|
# phpMyAdmin
|
||||||
|
|
||||||
Last Updated: Mon September 02, 2024 23:27:25 PDT
|
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Docker Hub: https://hub.docker.com/r/phpmyadmin/phpmyadmin/tags
|
phpMyAdmin is a web-based MySQL/MariaDB database administration tool. This stack runs phpMyAdmin with arbitrary server connection support.
|
||||||
Proxy Port: 80
|
|
||||||
|
|
||||||
Not for production, there is no password protection by default.
|
## Project Details
|
||||||
|
|
||||||
|
- **Project Repository:** [https://github.com/phpmyadmin/phpmyadmin](https://github.com/phpmyadmin/phpmyadmin)
|
||||||
|
- **Container Image:** [Docker Hub](https://hub.docker.com/r/phpmyadmin/phpmyadmin)
|
||||||
|
- **Documentation:** [https://www.phpmyadmin.net/docs/](https://www.phpmyadmin.net/docs/)
|
||||||
|
- **Reverse Proxy Port:** `80`
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
1. Start the container: `docker compose up -d`
|
||||||
|
2. Open http://localhost:${PHPMYADMIN_PORT:-8083} in your browser
|
||||||
|
3. Log in with your database credentials
|
||||||
|
|
||||||
|
## Environment Variable Notes
|
||||||
|
|
||||||
|
PHPMYADMIN_PMA_ARBITRARY – allow connecting to any database server (default: 1)
|
||||||
|
PHPMYADMIN_PMA_HOST – default database host (default: mariadb)
|
||||||
|
PHPMYADMIN_PMA_USER – default database user (default: root)
|
||||||
|
PHPMYADMIN_PMA_PASSWORD – default database password (default: changeme)
|
||||||
|
PHPMYADMIN_UPLOAD_LIMIT – maximum upload size (default: 200M)
|
||||||
|
|
||||||
|
## Volume Notes
|
||||||
|
|
||||||
|
No persistent volumes required.
|
||||||
|
|
||||||
|
## Network Notes
|
||||||
|
|
||||||
|
Requires the external `proxy` network (Nginx Proxy Manager). An internal bridge network `internal` is available for connecting to database containers.
|
||||||
|
|
||||||
|
## Docker Run
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--name phpmyadmin \
|
||||||
|
-e PMA_ARBITRARY=1 \
|
||||||
|
-e PMA_HOST=mariadb \
|
||||||
|
-e PMA_USER=root \
|
||||||
|
-e PMA_PASSWORD=changeme \
|
||||||
|
-e UPLOAD_LIMIT=200M \
|
||||||
|
-p 8083:80 \
|
||||||
|
--network proxy \
|
||||||
|
phpmyadmin/phpmyadmin:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
## Additional Notes / Gotchas
|
||||||
|
|
||||||
|
- Not for production use — there is no built-in authentication layer beyond the database credentials.
|
||||||
|
- Set `PMA_ARBITRARY=1` to connect to any database server by hostname at login time.
|
||||||
|
|
||||||
|
## Dockhand Stack, Deploy from Git
|
||||||
|
|
||||||
|
Cookbooks Repository
|
||||||
|
stackname: PHPMYADMIN_DEV
|
||||||
|
Compose file path: phpmyadmin_dev/compose.yaml
|
||||||
|
Additional env file (optional): phpmyadmin_dev/sample.env
|
||||||
|
|
||||||
|
Then "Load" phpmyadmin_dev/sample.env into the Environmental variables in dockhand
|
||||||
|
|
||||||
|
Create the Stack
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
# phpMyAdmin
|
||||||
|
|
||||||
|
services:
|
||||||
|
phpmyadmin:
|
||||||
|
image: ${PHPMYADMIN_IMAGE:-phpmyadmin/phpmyadmin:latest}
|
||||||
|
restart: ${PHPMYADMIN_RESTART:-unless-stopped}
|
||||||
|
|
||||||
|
environment:
|
||||||
|
- PMA_ARBITRARY=${PHPMYADMIN_PMA_ARBITRARY:-1}
|
||||||
|
- PMA_HOST=${PHPMYADMIN_PMA_HOST:-mariadb}
|
||||||
|
- PMA_USER=${PHPMYADMIN_PMA_USER:-root}
|
||||||
|
- PMA_PASSWORD=${PHPMYADMIN_PMA_PASSWORD:-changeme}
|
||||||
|
- UPLOAD_LIMIT=${PHPMYADMIN_UPLOAD_LIMIT:-200M}
|
||||||
|
|
||||||
|
ports:
|
||||||
|
- "${PHPMYADMIN_PORT:-8083}:80"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
- proxy
|
||||||
|
- internal
|
||||||
|
|
||||||
|
networks:
|
||||||
|
proxy:
|
||||||
|
external: true
|
||||||
|
internal:
|
||||||
|
driver: bridge
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
services:
|
|
||||||
phpmyadmin:
|
|
||||||
image: ${PHPMYADMIN_IMAGE:-phpmyadmin/phpmyadmin:latest}
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
- PMA_ARBITRARY=${PHPMYADMIN_PMA_ARBITRARY:-1}
|
|
||||||
- PMA_HOST=${PHPMYADMIN_PMA_HOST:-mariadb}
|
|
||||||
- PMA_USER=${PHPMYADMIN_PMA_USER:-root}
|
|
||||||
- PMA_PASSWORD=${MARIADB_MARIADB_ROOT_PASSWORD:-ChangeThisPassword}
|
|
||||||
- UPLOAD_LIMIT=${PHPMYADMIN_UPLOAD_LIMIT:-200M}
|
|
||||||
volumes:
|
|
||||||
- "/etc/timezone:/etc/timezone:ro"
|
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
|
||||||
@@ -1,13 +1,13 @@
|
|||||||
COOKBOOK=/docker-compose-cookbooks
|
# ===== Paths =====
|
||||||
COMPOSE_PROJECT_NAME=phpmyadmin
|
VOL_PATH=/data
|
||||||
TZ=America/Vancouver
|
VOL_PROJECTS=/data/projects
|
||||||
VOL_CONFIG_PATH=/data/projectName/config
|
|
||||||
VOL_PATH=/data/projectName/data
|
|
||||||
|
|
||||||
# phpmyadmin
|
# ===== phpMyAdmin =====
|
||||||
PHPMYADMIN_IMAGE=phpmyadmin/phpmyadmin:latest
|
PHPMYADMIN_IMAGE=phpmyadmin/phpmyadmin:latest
|
||||||
|
PHPMYADMIN_RESTART=unless-stopped
|
||||||
|
PHPMYADMIN_PORT=8083
|
||||||
PHPMYADMIN_PMA_ARBITRARY=1
|
PHPMYADMIN_PMA_ARBITRARY=1
|
||||||
PHPMYADMIN_PMA_HOST=mariadb
|
PHPMYADMIN_PMA_HOST=mariadb
|
||||||
PHPMYADMIN_PMA_USER=root
|
PHPMYADMIN_PMA_USER=root
|
||||||
PHPMYADMIN_PMA_PASSWORD=ChangeThisPassword0123456789ABCD
|
PHPMYADMIN_PMA_PASSWORD=changeme
|
||||||
PHPMYADMIN_UPLOAD_LIMIT=200M
|
PHPMYADMIN_UPLOAD_LIMIT=200M
|
||||||
|
|||||||
Reference in New Issue
Block a user